From the lab

Post Apocalyptic Future

We believe that in the post apocalyptic future, downtime will be the new normal. Our prototype aims to downscale, finding a minimum viable way to communicate: a virtual mailbox containing text documents that can be encoded and decoded with base64.

Tech used

  • Go
  • Python
  • Base64

Background and problem

While the world is changing and adapting to new global circumstances, our job as developers has to adjust to those accordingly. The skills needed for the future are always impossible to predict, but we tried to look at a few probable limitations that might occur due to climate change and its effects.

The energy crisis in Europe in the autumn of 2022 has made it even more realistic to imagine that in the future, electricity will not be limitless but a scarcity. Knowing that many new technologies are invented in times of war, we have also researched what means of communication have been used in the war in Ukraine.

We believe it is important to dare to imagine a future that might look gloomier and darker than the world looks now, but to still choose hope and action instead of apathy. This project has been a way for us to feel that we are at least trying to do something. This product probably won’t be used by anyone, but it has given us the feeling to work on something that matters.

We wanted to look at both the plausible needs and limitations in the future we imagine. We tried to downscale, aiming not to make it possible to upload images or videos, but focusing on finding a minimum viable way to communicate.

This all made this project feel very relevant, and it has led to philosophical discussions. We spent almost half the project time discussing the needs and doing research on the limitations that frame the project.

The biggest obstacle in this project has been trying to understand what limitations to adapt to. What kind of technology will be accessible in a future that is not only a little tougher, but actually post apocalyptic? In our research, we looked a lot into this project for inspiration:

In the autumn of 2022, component scarcity has already been prominent. Rising sea levels will most probably restrict the use of harbors, decreasing ****transport possibilities, and it’s most likely going to get worse further on. The possibilities to create new devices once your device breaks are most probably going to decrease. Therefore we need to look at creating new devices from old components, and the possibilities to use less complex systems, in best case technology that we already have access to.

Expecting CPU power, memory, storage etc, to stay static or drop over time, made us look at languages that have lower dependency to these features. We wanted to be able to not rely on constant uptime, and to use technologies that have stood the test of time. We wanted to choose a language that could do a lot with a little, and be able to both scale up and down when needed. We also wanted to make sure that we could run on lightweight systems, with low bandwidth, hence having to make the digital packets we send and receive as small as possible.

Idea and solution

We believe that in the post apocalyptic future, downtime will be the new normal. We simply can’t expect anything close to the level of average performance and uptime we have today when building communications tools for the future.

The project resulted both in a simple storage folder containing text documents which can be encoded and decoded with base64. We see it as a virtual mailbox, existing on the network, where users can leave messages for others. Messages may be downloaded when the recipient has uptime. There’s also a chat-function, where a TCP tunnel is opened between users where they can chat using Netcat. With its port scanning features Netcat can be used to scan for open ports and potentially find others to connect to.

Implementation and results

An insight from the project is that the internet, routing, and getting hold of each other - functionalities we use every day - are much more complex than one might think. Today we are very dependent on governmental infrastructure to achieve this, which we find eye-opening and scary. In this project it has been more difficult to create a solution, independent of other services and companies, than we expected and wanted.