Over at Bite Code! there’s a post that I found really interesting. It’s about doing software deveopment or training in difficult places. “Difficult places” means places lacking the usual computing infrastructure or having a hostile political or geographical environment. The post describes what to pack and how to prepare for an assignment in one of those places.
One of the author’s main points is that you can’t depend on anything being available at the destination so you have to take everything you could possibly need—actually at least two of everything you might need—with you. That means even high end items such as laptops but also mundane items such as soap, paper and pens, cables, power strips, adaptors, and personal hygiene items.
You should, he says, expect that at least one of every type of item you take will be lost, stolen, confiscated, or broken. For that reason, you have to keep duplicates in different places. At the same time, you shouldn’t take anything that you can’t afford to lose.
Trust me when I tell you that I have no desire for such work. The joke in my family is that my idea of roughing it is poolside at the Hilton. Still, I find the post fascinating. The idea of having everything I need with me wherever I am appeals to me. It’s probably why I never go anywhere without my phone, laptop, and iPad.
I tagged this post “Emacs”, even though Emacs is never mentioned in the Bite Code! post, because Emacs in many ways exemplifies the same mindset. It packs all the documentation and tools you need in a single package.
That’s not quite true, of course, especially if you’re developing in something other than Elisp but the point stands. If you have Emacs and the appropriate packages, you have most of what you need for your day-to-day work. It doesn’t include every version of Python as discussed in the Bite Code! post but it does take you a long way and it doesn’t depend on an external connection, the cloud, license servers, or any of the other things that the post tells you to avoid for work in difficult places.