Ola Gasidlo on the benefits of offline-first design

Why don't you introduce yourself?

I've been working as a frontend/JavaScript developer for around ten years. At the moment I mainly work on Hoodie, an open-source JavaScript library that gives you a complete backend setup, including a human API to make it really easy to use; and all the features you always need, like storage, email and user accounts. It's offline-first and you can host it yourself.

Why do you advocate offline-first? Surely, with 3G, 4G and Wi-Fi, we're online all the time?

In an ideal world, every one of us would (or at least, could) be online all the time. Realistically, we're still far from that: what if our traffic limits are reached? What happens if we are on trains and lose our connection every few minutes?

Or if our hotel Wi-Fi is expensive and we don't want to pay roaming costs in another country? Those are issues we all face, even in the wealthy countries many of us live in. And the situation is way worse in rural areas and countries with poor or no network coverage. Our discussions with people from all over the world have shown that this is a global problem which won't just solve itself.

The applications we build have to get away from the desktop mindset of permanent, fast connectivity by accepting that being offline is not a bug, but a reoccurring state. If you want more information, Alex Freyerke has written an amazing blog post on the subject.

Can you give an example of how offline-first design can improve user experiences?

Most of us use offline-first applications without necessarily being aware of it. Many email services let us write emails offline and send them out later automatically as soon as a connection is detected. Apps like Instapaper, Pocket and Watchlater also help us consume all content even when we are not online. Writing down notes during meetings with minutes.io or creating lists with createlists.net helps us stay productive without sending error messages as soon as our internet connection is lost.

But there's so much more room for improvement. Just think about Google Maps: what if it recognised that you were in a town you haven't been to before, cached the relevant maps, and made them available to you offline? What if there were timetable apps for festivals and conferences that were available even when the networks go down for the umpteenth time?

How did you get involved with OpenTechSchool?

When I moved to Berlin some years ago, I was overwhelmed by all the meetups and workshops, networking events and user groups. But after moving to Dortmund, I was back out in the cold again. By that time, OpenTechSchool Germany had been founded, and Jan Lehnardt encouraged me to start a local chapter here. That was a year ago. Since then, we have had several workshops for kids and adults, from beginners to pros, and meetups with amazing talks on topics like DalekJS, MongoDB, flynn.io and OOCSS.

Do you think becoming a self-taught software engineer is a realistic goal?

I always thought so, because I kind of was one for a long time, and I seemed to be good at it. Still, three years ago, I decided to study computer science to learn new approaches to coding.

I think it's possible to teach yourself, but you need a solid base of knowledge that goes deeper than just working through some tutorials about frameworks and languages. Go to meetups and conferences, follow other developers on Twitter or meet them and work with them, do pair programming to exchange knowledge, and read blogs and books that go deeper. Never forget to challenge yourself every day, code a lot, and ask, ask, ask…

Words: Martin Cooper

This article originally appeared in net magazine issue 255.

Thank you for reading 5 articles this month* Join now for unlimited access

Enjoy your first month for just £1 / $1 / €1

*Read 5 free articles per month without a subscription

Join now for unlimited access

Try first month for just £1 / $1 / €1

The Creative Bloq team is made up of a group of design fans, and has changed and evolved since Creative Bloq began back in 2012. The current website team consists of seven full-time members of staff: Editor Georgia Coggan, Deputy Editor Rosie Hilder, Deals Editor Beren Neale, Senior News Editor Daniel Piper, Digital Arts and Design Editor Ian Dean, Tech Reviews Editor Erlingur Einarsson and Ecommerce Writer Abi Le Guilcher, as well as a roster of freelancers from around the world. The 3D World and ImagineFX magazine teams also pitch in, ensuring that content from 3D World and ImagineFX is represented on Creative Bloq.