Technology

Can Urbit Reboot Computing?

Urbit seeks to distill computing into its lightest and purest possible form, leaving the user in control of more processes than previously afforded.

|

Steve A. Johnson/Flick

It's a common complaint that "computing" is broken. Whether the concern is government surveillance, invasive advertising and malware, censorship by private and public bodies, or the general gulf between user control and control of users, many worry that our amazing network of networks has been slowly atrophying for some time. But a project called Urbit aims to overcome this—by getting humans to start thinking more like Martians

Why is a reboot necessary? The incentives and arrangements developed during the early days of the internet haven't exactly scaled well. Much of our digital infrastructure forces us to rely faceless third parties—Internet Service Providers, software developers, cloud servers, platform administrators, domain-name registrars—in order to connect with others. No one person can presently provide all or most of these functions for themselves. Instead, we each must trust this conglomeration of faraway bureaucracies—in addition to the often-rascally governments that oversee the whole operation.

As a result, our computing experiences will only be as good as this federation of virtual landlords is virtuous. Alas: virtue is not exactly "in" online.

Some developers are seeking to transcend our internet feudalism by minimizing the number of third parties one must patronize to participate in digital society. Open-source operating systems like Linux allow people to take more control over their own computers. Bitcoin substitutes trust in a single payment processor for trust in a cryptographically secure, peer-to-peer network. BitTorrent, similarly, allows individuals to share files using a distributed network that cannot be immediately shut down by targeting any one entity. And several new projects aim to extend this logic to personal computing more generally. There's OpenBazaar, a distributed marketplace platform that wants to be the "Bitcoin of Amazon"—a censorship-resistant e-commerce protocol that empowers buyers and sellers to transact peacefully without a middleman. There's the InterPlanetary File System, or IPFS, which would operate as a kind of BitTorrent for the World Wide Web.

But there is only one project that aims to just start this whole networking thing completely from scratch. It's an "operating function" called Urbit, and it is by far the most fascinating and bizarre of these attempts to reboot computing.

Inside the Urbit Universe

Urbit is brought to you by a man named Curtis Yarvin and a company named Tlon. Much of the commentary about Urbit has focused on the unorthodox political opinions of Yarvin, who is better known in some circles by his nom de plume, Mencius Moldbug. As Moldbug, Yarvin has penned fiery condemnations of democracy, extolled the virtues of historic monarchies, and found himself as a philosophical leader for the budding "neoreactionary" movement. But Urbit is perhaps even more intriguing than its radical creator. 

Urbit is a software stack comprised of roughly five major parts: an operating system (Arvo), two kinds of programming languages that interact together (Nock and Hoon), a network (Ames), and you, the dear user. Combined, this system seeks to distill computing into its lightest and purest possible form, leaving the user in control of more processes than previously afforded.

Arvo: Microsoft has Windows, Apple has Mac OS, and Urbit has Arvo. This is the "kernel" upon which the entire system runs. Arvo starts with a self-compiling command and a basic input/output system. It is quite small, written in roughly 600 lines of the native programming language, Hoon. For frame of reference, Windows 7 is written in about 40 million lines of code. Arvo is small because it is intended to "grow" with a user's event history.

Nock and Hoon: This is the DNA of Urbit, and in true Urbit fashion, it is radically different from the object-oriented programming languages most familiar to laypeople. For the techies out there, Nock is a virtual machine and high-level language that compiles Hoon and is a little bit like Lisp. Hoon is a functional programming language that is a little bit like Haskell. They're quite odd, but totally groovy if you're into the challenge of learning abstract code. For the non-techies out there, all you need to know is that Nock and Hoon comprise the language of Urbit.

Ames: This is the "Urbit network," an encrypted peer-to-peer protocol and namespace. It is here that an Urbit user shapes her identity and interacts with the vast universe of this cyberspace. Unlike in the current system, where you have many digital identities—your IP address and various screennames that may or may not connect to your "real" self—your address is your identity in Ames. 

Starstuff (you): And what are "you" in Urbit? You are a plot. A plot is a 128-bit number that serves as your identity and your address. There are many kinds of plots in Urbit, of different sizes and importance, yet all celestial. The hierarchy is as follows: There are the 8-bit "galaxies" of one syllable; two-syllabled, 16-bit "stars"; the 32-bit, 4-syllable "planets"; 64-bit and 8-syllable "moons"; and finally the 128-bit, 16-syllable "comets." All of these plots map to services and functions that already exist in the current system.

As the Urbit white paper explains, galaxies and stars comprise the network infrastructure, planets are like personal servers, moons are like clients, and comets are like cheap little bots. Control tiers up the hierarchy: Galaxies can issue stars, stars can issue planets, planets can issue moons, and moons can issue bots. A detailed analysis of the law and context guiding these identities in Urbit deserves a separate article, but this is the universe of Urbit in a nutshell.

Urbit has been in the works for at least six years, and despite the mystery and strangeness pervading the previously available documentation, it does indeed actually exist as a testnet and can be downloaded and run by any interested parties. Or, if you'd rather merely dip your toes into this unparalleled experiment in Martian programming, you can jump into the chat to politely pick the brains of the star-men of Urbit.

Declaration of Digital Independence 

By now, this is probably all sounding pretty zany. The Tlon developers will proudly tell you that it is. But when you parse through the underlying values that guide the system, a rather libertarian ethos begins to emerge. Consider Tlon's statement of principles

We believe that general-purpose computing is an essential tool to unlock the power of individual creativity.

We believe that ownership, privacy and control don't need to be sacrificed in exchange for usability, accessibility and reliability.

We believe in the power of the informed crowd to develop and maintain software, through the IETF principles of sincerity and rough consensus. The ability of the engineering community to govern itself through republican forms is not an abstract theory; it's a proven fact.

We believe in both free speech and individual accountability. We believe that a healthy network is one with diverse and well-defined communities, and clear, user-controlled, boundaries between public and private space.

We believe that no software system can replace human trust and communication. Dialogue, judgment and governance are essential to communities of all scales. Code and law can reduce conflict in the common case; they can never handle all exceptions.

If the Founding Fathers were computer programmers designing a new digital republic, their Declaration of Independence might look a bit like the Urbit manifesto. 

As a republic, the "government" of Urbit has one task: "promoting, preserving and protecting Urbit." But in doing so, Yarvin and fellow developer Galen Wolfe-Pauly point out, Urbit should "never fall under any kind of central control."

Much of the language in Urbit's statement of principles reads as if it could have been written by Murray Rothbard himself (indeed, Yarvin frequently cites such luminaries of liberty as Ludwig von Mises and John Perry Barlow as his personal intellectual influences). But "liberty" is not a homogeneous concept. It's important to note that Urbit approaches the problem of "centralized computing" from a radically different position than many of the other projects described above, such as Bitcoin. 

As the Urbit white paper explains, "Bitcoin is a trust-free system; Urbit has a central trust hierarchy"—the nested system of galaxies and heavenly bodies outlined above. However, the initial hierarchy baked into the Urbit platform—namely, the preliminary "crowdsale" of galaxies—may raise eyebrows among "scamcoin"-watchdogs in the cryptocurrency community.

Too Complicated for Crypto-Utopia?

Urbit is unlike any other system that has been developed to date, and it can be complicated for even the most seasoned of functional programmers. It took a good amount of dedicated research and several conversations with more technical-minded friends for your intrepid columnist to grok the basics of the Urbit system and how they all work together. Even now, my starship navigates the Urbitverse only tentatively.

But steep learning curves are the norm with any revolutionary new technology: When I was first introduced to Bitcoin, for example, the community was largely comprised of a tiny group of computer-wizard sysdamins well-versed in the fundamentals of cryptography and distributed computing. Today, my decidedly non-technical parents can buy and sell bitcoins with ease. 

In many ways, initial complexity can be a feature. Techies can probe away at vulnerabilities and oversights for years in relative obscurity, improving technologies so that new orders of laypeople can eventually participate. User interfaces become sleeker, venture capital starts pouring in, the news media takes notice, and eventually the technology becomes mainstreamed. 

This is not to say that Urbit will necessarily be successful—there are, in fact, many ways it could fail. It could simply be too complex for users to understand. It could prove to be too ambitious: if any of the constituent parts go awry, the rest of the project hangs in the balance. Or perhaps the fine rhetoric about individual sovereignty and non-aggression that is so appealing to Reason readers will prove merely a cover for yet another money-making scheme in the fly-by-night crypto-utopian space. In Silicon Valley, talk is cheap. We'll need to closely watch this project to determine whether Urbit is mostly marketing or something truly revolutionary.

But in the wild event that Urbit, or something like it, does take off, the scale of disruption in computing could echo that of the great transition from feudal serfdom to a bourgeois capitalistic society. In the meantime, many people might find it thrilling to moonlight as the king of their own computing galaxy. At the very least, the Urbit project's ambitious goals and libertarian vision are both admirable and charming. After all, it's precisely those values that preternaturally propel human progress.