---
date: 2017-08-20
modified_at: 2019-05-22
tags: [lifestyle, productivity, programming]
description: An experiment in setting up a complete offline development environment for React Native to enable productive programming during multi-day mountain treks in Bulgaria, demonstrating that remote work doesn't require internet.
---
# About working offline

I put my entire development environment offline so that I can develop my
data-driven React Native App while being completely off the map!
It's one of my hobbies to be able to do long treks in the mountains, but the
problem is, that during these treks I can't really work. Or can I? It's my dream
to be able to work 8 hours a day and still do long hikes of, for example, 6
hours a day walking, trekking through the most amazing nature and rural areas in
the world... Wouldn't that be awesome?

Most of my work currently consists of programming. I'm building my own app, so I
don't need to communicate. Very often when programming, however, I need to go
online to read some documentation. However... It can be done in another way!
While being in Bansko, I decided to try it.

I needed to be able to program with React Native and continue building my app
without using any internet. This is what I did to be able to do that:

 * I downloaded all documentation and GitHub repo's that I'm using as
   dependencies. I used devdocs.io http://devdocs.io for documentation for
   most huge libraries.
 * For smaller libraries like Apollo or GraphQL that weren't available there, I
   used SiteSucker http://ricks-apps.com/osx/sitesucker/index.html for Mac to
   download the Documentation websites for offline use.
 * My React Native App uses a Node + Express + GraphQL + Sequelize SQLite
   backend which I run locally and completely offline.
 * I don't use anything like Expo. Expo needs internet! I use the good old way
   of running and building the React Native App locally.

The experiment
Can I be productive in an extremely rural environment? I will sleep in the
mountains in huts for 2+ nights.

 * Day 1 - 8:30 Bansko train station bus to Vihren hut - Walk to Vihren peak -
   walk back to Vihren hut; work & sleep
 * Day 2 - Vihren hut -> lakes -> Demyanitsa hut - It's a long day. I can work
   at the Demyanitsa hut in the evening.
 * Day 3 - Demyanitsa down to Bansko or stay and do some more... I'll see how it
   goes!

The theory is that I will be less distracted. Having no or very bad internet
keeps you off news websites, social media, and other things.

The results
It's tuesday, 22nd of August, 2017. I've just worked 90 minutes without any
internet. Great focus! I don't mind working like this every day! Look at that
view!


I am even still getting 2Mbit Download speed here, so if I really want to… I can
still look some things up on Google… Or update my blog… Like now :)

Further possibilities
 * In the future, I will try to go even more remote in other offline-experiments
   by using a tent, bringing my own food, and a good solar panel + power bank to
   keep my laptop charged.
 * It could also be possible to go with a small group of people to Nepal and do
   the Annapurna Circuit like this. I want to do this in april 2018
   https://travellifemovement.com/, preferably with a small group of React
   Native programmers!