I've already touched on the topic of working offline before. In that case, it was from the point of view of having connectivity, but to avoid distraction you'd choose to take some time offline to just write code. This time it is something slightly different.
Developing offline is hard. This coming week I'll be in Poland with minimal connectivity. I wanted to spend the time learning something new, the big problem is that while learning you need constant access to the internet to research and find solutions to problems, so trying to learn something new while mostly offline is not something I can recommend.
If you find a problem and you get stuck you can work on something else for a while, but it is likely that you don't know the solution unless you have really good autocomplete and even then it's not always enough (apart from the fact that most autocomplete are utter crap).
In the end I decided that the best thing to do is to improve in some areas that I'm already familiar, but not too much so I won't' get stuck too often, but I will learn new things and for the (hopefully) few things that I just can't do offline I'll write TODOs and implement later.