Preppers, Survivalists, however you use these terms, are people who prepare for disasters and place a high value on a sort of rugged self-reliance. As I understand, these ideas travel mostly in conservative and libertarian circles. These values are not inherently libertarian, in that there is nothing un-libertarian about living in San Francisco, having an “app for everything”, and paying people to do all your chores. In fact, from a libertarian standpoint there is something to be said for division of labor. However, a measure of self-reliance puts you in a much better bargaining position during difficult times. If things go sideways, you are at the mercy of whoever you rely on. Better that be yourself, your family, your friends, or your (real) community.
There is another curious community, one that I am little more tuned into myself, and it hangs out a little more on the Left. It’s called the Free Software movement. It has produced such notable projects as the Firefox browser and the GNU/Linux operating system. This movement advocates for what it sees as the rights of individuals to fully control the computing equipment that they own, in the face of corporations who would exert their control over you. In their mind, for any software I own, I am entitled to use it for any purpose I want, alter it, and redistribute original or altered copies.
These freedoms require access to the “source code” to the software. This gives programmers the ability to make changes, and it gives non-programmers the opportunity to choose a trusted programmer to implement changes for them, or just to inspect the code to make sure it is not malicious in some way. In practice, there is usually one organization who is in charge of a given Free Software project, but there is always the threat of a “fork” that gives people an alternative if the organization becomes problematic in any way. Try doing that with Apple or Microsoft software!
There are a few adjacent movements that share the goal of giving people control over their technology. The Mesh Networking movement, aimed at taking power away from companies like Comcast by giving people the power to “build their own Internet” in their city. The Open Data movement, giving people unrestricted access to large data sets like Wikipedia instead of making them rent access to it. The “Self-Hosting” movement, encouraging people to host their own “Cloud” using Free Software, which takes control away from companies like Google and Facebook who can spy on you, censor you, or generally lock you out.
Free Software, Leftism, and Libertarianism
Despite the anti-corporate tone, Free Software advocates generally have no opposition to people being paid to produce software so long as it respects these freedoms. This often requires some creative business models (crowdfunding, companies collaborating for mutual benefit, etc), and the movement celebrates when new models are discovered.
Forcing a developer to provide source code requires an unconventional sort of intellectual property (known as “copyleft”) which is arguably not friendly to libertarianism. However there are some Free Software licenses that make this arrangement socially encouraged rather than legally required. These licenses are somewhat controversial among Free Software types, since they are usually associated with the related “Open Source” movement, which focuses on the practical benefits of software quality under a production model where source code is available to everybody, rather than ethics. However libertarian fans of Free Software may use these licenses to accommodate both commitments at once (this is what I do).
The tension between the Free Software and Open Source movements is reminiscent of the tension between Objectivism and Libertarianism. And if there ever was an Ayn Rand of the Free Software movement, his name is Richard Stallman. He began the Free Software movement in 1983, and takes a hardline approach against using “non-free” software.
I highly recommend his overview of the Free Software movement, accessible to non-programmers, given as a TedX talk. Again, there is a very leftist tone to all of this, but notice that the important theme here is not obligation to help anybody, but freedom. Freedom from control, and freedom to choose a community to rely on.
Despite coming from different corners of the political and social spectrum, it seems to me that there is a lot of common ground between all of these movements. Here, for fun and inspiration, I would like to try to collect some of these ideas into a vision I will call “The Digital Prepper”. What can we do to be more independent from technology companies and prepare ourselves for an Internet outage?
Here, I would like to list some of the tools already at our disposal. I would stress that connecting all of this together may be a difficult or impossible task today. However, as dedicated people continue to work on them, they could some day be tied together into a turnkey system.
Let’s start with some web-based services that we can run from a server in our home or community center. We want to keep our data to ourselves and maintain access during an Internet outage. Here is a small list of some self-hosted options currently available:
NextCloud – Calendars, Contacts, Office document collaboration
RocketChat – A chat room service, like Slack
Mastodon – A federated Twitter-like website that is gaining in popularity
PeerTube – A federated YouTube-like website (which I linked to for Richard Stallman’s TedX talk above)
There are countless such projects, of varying quality, for many different purposes. Self-hosted web services are usually not as easy to set up and maintain as the software you install on your personal computer, but there are a few projects aimed at making it easier. My personal favorite of these is Sandstorm.io, though development has sadly stalled as of late.
Even if we can run our own web services off the grid, there is a wealth of information that would become unavailable during an Internet outage. Fear not, as a lot of useful information is there for the taking in bulk. Just as the Free Software movement has promoted global collaboration on and dissemination of software, the Open Data movement has promoted the same model for information. A couple of my favorite projects that make it possible to have a local copy of this data are Kiwix and OpenStreetMap.
Kiwix is an application that makes it easy to have offline snapshots of Wikipedia, Project Gutenberg, Stack Overflow, TedX talks, and many more, in many languages. You can install it on your phone or your laptop right now, or as a web server for your community. (Personal plug: I packaged the web server version of Kiwix to make it available on Sandstorm.io. You can see the same Richard Stallman TedX talk above on Kiwix on my own instance of Sandstorm.io (assuming others visitors don’t overload my server!))
OpenStreetMap is like Wikipedia for maps: a world map that is collaboratively edited by anyone who wants to, and freely available to all. Many different applications including Pokémon Go use OpenStreetMap data. Some of them, such as Maps.me (easy to use) and OSMAnd (more features) allow you to download maps of entire states or countries locally to your phone for use offline. Like Kiwix, you could set up an OpenStreetMap community server as well, but as of now it may be a little harder to do.
Connecting with neighbors
So you’ve got your home or community center equipped with web services and copies of Wikipedia and OpenStreetMap. But what about connecting with community members in their own homes?
Some special wireless devices are able to connect to each other across a neighborhood, and even relay messages down the line to each other to allow communication across an entire city. This is called a Mesh network. A few such projects exist and are growing in number. They include NYC Mesh, Guifi.net in Spain, and the Athens Wireless Metropolitan Network in Greece. Friend of the Freecoast Patrick is also working on a new one in Manchester, New Hampshire.
These networks can help connect users to off-the-grid services like those described above, and also provide a way to connect to the Internet that avoids traditional ISPs.
One example of mesh networking being successfully used during an Internet outage of sorts is the use of FireChat by Open Garden by protesters to communicate during the 2014 “Umbrella Revolution” in Hong Kong. (Notably, FireChat in particular is not Free Software. It also hasn’t received security updates for a year as of this writing, so it may not be advisable to use today.)
Distributing and developing software
What about the Free Software you run on your personal computer? Free Software operating systems based on Linux and BSD are often distributed using mirrors, which are servers run by independent parties. If your local community ran a mirror for a Linux distribution, it would allow people to install software during an outage. The software on the mirror would of course become outdated during a long outage, but if there is partial connectivity, the mirror’s maintainer could update it, keeping the rest of the community up to date.
With some more effort, one could conceivably host the entire build system for a Linux distribution, complete with a local Github-like website (such as Gitlab) to let people browse source code within the community. This would allow software developers in the community make their own updates to the software during an outage. This would be taking community reliance for software to its extreme.
If nothing else, it’s fun to think about what sort of alternate infrastructure we could build for resilience and independence. For myself, I have been trying to move toward controlling my own digital footprint with a home server. Over time I hope to try some experiments in promoting more “community cloud” services. It’s a lot to set up, and even more to maintain. Perhaps one day it will be easy.