Self Hosting Magic

The Future is Distributed

I believe that the future of the internet is distributed (like the fediverse). With internet connection rates rising globally (according to 2018 data from SpeedTest.net) alongside the rise in both popularity and power of single board computers like the RaspberryPi, it is becoming increasingly more realistic that the average end-user will have a server in their home for all their web-apps. Combine these facts with the increasing popularity of self-hosted cloud solutions like NextCloud and Collabora Online, and you have a recipe for a golden age of computing.

One of the primary complications preventing a distributed compute network (like the fediverse) has always been bandwidth. The sheer amount of overhead required for true decentralization and federation of services alone is enough to prevent users from hosting at home. As mentioned previously, the internet is becoming faster with more and more bandwidth available every year. As this trend continues, it only becomes easier and easier to manage the minuscule amount of data that is passed between instances. In 2018, I began hosting my choice of cloud solutions (primarily NextCloud) from home on a RaspberryPi Model 3A with great success! Not only could I share files to and from my clients through a secure web app without being concerned for their data's privacy, it wasn't even impacting my sub-par (5mb down and 1mb up) home networking speeds (roughly 128kb/s).

Once I'd done some testing off that initial RaspberryPi, I decided it was time to truly utilize my home network's Gigabit Intranet capabilities. Cue, my cardboard box server (and forgive the mess):

This baby has everything I could ever need out of a server, and it cost me a whopping $0! Built from up-cycled parts and a recycled cardboard box, it featured a hard drive that -- for heating reasons -- sits mounted to the outside of the box (not pictured). The mounting details are what really get me, being held in place by a matrix of cable ties. If I can set up a cardboard-box server for a Gigabit Intranet Google Drive alternative, deploying an imaged RaspberryPi to client workspace's is a trivial task.


Steps to Get There

All these things are wonderful, but without a method of making server-side setup as easy as installing a proprietary for-profit software like Slack the global distributed network can't succeed.

Containerization technology like [Docker] and Flatpak have made the art of installing a varied set of web-app tech stacks easy as a single command, they still have a long way to go. The very fact that these utilities rely on command line interfaces is a part of the problem (even though solutions like Kitematic for MacOS exist). But hey, that's the beauty of open source software! Someone out there is smart enough to tackle these issues (and I am certainly not the one to do it).

Additionally, there is the nebulous problem of end-user education for why distributed networks and federation are advantageous to them. While I've written an article on the benefits of federation and how it can aid your quest to retake your online privacy, it will take a whole lot more than a single tech enthusiast's blog post to educate the world.

Many tech media outlets have been releasing their "predictions for the next decade in tech," I'm still not sure what my prediction is yet. However, I can say without a shadow of a doubt that self-hosting and network federation are going to be major trends in the coming years.

Back to the Blog Index