Everything must die

Everything must die

Windows must die. Google must die. GNU must die. OpenGL must die. HTTP must die. HTML and its ancillaries especially must die. POSIX and C must die. x86-64 must die. TCP/IP must die. Ethernet might be fine.

Don't be enamored with computers. Computers aren't your friends. They're tools not worth loving. Yes, Urbit too must die.

Computers take on personalities and exact their own value systems. We anthropomorphize them and say things like "Urbit wants" and "Urbit needs." We must take care that these wants and needs don't become our enemy; everything in Urbit must advance our own interests. Sometimes, we concede that wished-for perfection just to get off the ground. This is correct. But that concession must eventually be reversed, lest it become a permanent obstacle.

Gall, for example, shoehorns a reactive functional namespace into the shape of ducts, Arvo's causality scheme. It was good at the time—Urbit has lots of fun applications now—but it's time for Gall and its applications to die.

This is going to happen repeatedly while Urbit is in its gaseous phase. Every time we discover a simpler architecture, the only option is to burn everything down. Don't be discouraged. This work is not wasted.

The task is incremental and never-ending. Absolute zero won't be achieved in our lifetimes, and I'm not convinced it's even possible. If anyone's going to find the grail, it's us, and it's good that we try… but there's a conflict deep in the heart of Urbit. It wants to be frozen, but it also wants to be free.

One of Urbit's design goals is to make application development not a completely insane prospect. The only reason for this to be valuable is that we expect people to make and use applications. Implicitly, the frozen parts of Urbit won't be sufficient for general-purpose computing. We should freeze as much as possible, yes, but not everything can be frozen.

New software inevitably leads to incompatiblities, and that's an environment we should wish to support, because that's the way it's going to be. Then those components will either freeze or die. But as long as there's unfrozen software, we're still in a Red Queen's race.

Oh, well. Even if we don't find the grail, we'll have made a fine mug.