Collapse OS — Why?

I expect our global supply chain to collapse before we reach 2030. With this collapse, we won't be able to produce most of our electronics because it depends on a very complex supply chain that we won't be able to achieve again for decades (ever?).

The fast rate of progress we've seen since the advent of electronics happened in very specific conditions that won't be there post-collapse, so we can't hope to be able to bootstrap new electronic technology as fast we did without a good "starter kit" to help us do so.

Electronics yield enormous power, a power that will give significant advantages to communities that manage to continue mastering it. This will usher a new age of scavenger electronics: parts can't be manufactured any more, but we have billions of parts lying around. Those who can manage to create new designs from those parts with low-tech tools will be very powerful.

Among these scavenged parts are microcontrollers, which are especially powerful but need complex tools (often computers) to program them. Computers, after a couple of decades, will break down beyond repair and we won't be able to program microcontrollers any more.

To avoid this fate, we need to have a system that can be designed from scavenged parts and program microcontrollers. We also need the generation of engineers that will follow us to be able to create new designs instead of inheriting a legacy of machines that they can't recreate and barely maintain.

This is where Collapse OS comes in.

Open questions

Futile?

For now, this isn't much more than an idea, and a fragile one. This project is only relevant if the collapse is of a specific magnitude. A weak-enough collapse and it's useless (just a few fabs that close down, a few wars here and there, hunger, disease, but people are nevertheless able to maintain current technology levels). A big enough collapse and it's even more useless (who needs microcontrollers when you're running away from cannibals).

But if the collapse magnitude is right, then this project will change the course of our history, which makes it worth trying.

This idea is also fragile because it might not be feasible. It's also difficult to predict post-collapse conditions, so the "self-contained" part might fail and prove useless to many post-collapse communities.

But nevertheless, this idea seems too powerful to not try it. And even if it proves futile, it sounds like a lot of fun to try.

32-bit? 16-bit?

Why go as far as 8-bit machines? There are some 32-bit ARM chips around that are protoboard-friendly.

First, because I think there are more scavenge-friendly 8-bit chips around than scavenge-friendly 16-bit or 32-bit chips.

Second, because those chips will be easier to replicate in a post-collapse fab. The z80 has 9000 transistors. 9000! Compared to the millions we have in any modern CPU, that's nothing! If the first chips we're able to create post-collapse have a low transistor count, we might as well design a system that works well on simpler chips.

That being said, nothing stops the project from including the capability of programming an ARM or RISC-V chip.

Prior art

I've spent some time doing software archeology and see if something that was already made could be used. There are some really nice and well-made programs out there, such as CP/M, but as far as I know (please, let me know if I'm wrong, I don't know this world very well), these old OS weren't made to be self-replicating. CP/M is now open source, but I don't think we can recompile CP/M from CP/M.

Then comes the idea of piggy-backing from an existing BASIC interpreter and make a shell out of it. Interesting idea, and using Grant Searle's modified nascom basic would be a good starting point, but I see two problems with this. First, the interpreter is already 8k. That's a lot. Second, it's copyright-ladden (by Searle *and* Microsoft) and can't be licensed as open source.

Nah, maybe I'm working needlessly, but I'll start from scratch. But if someone has a hint about useful prior art, please let me know.