The Machine War: Chapter 7
I Decided to Listen Less. Eternal Eternal September. The Absence of Bubba.
Back to the book! But before we go any further, here’s a rundown of some Mars Review of Books-related stuff.
—Check out marsreview.org for something pretty cool: there’s now a simple, secure way to get onto Urbit without any know-how from the user. We’re bundling this service with a subscription to the Mars Review of Books at over 50% off cover price. Thanks to our friends over at Tirrel Corporation.
—Back at Urbit Assembly Miami I talked about the MRB on a panel called “The Medium is the Message” with Walter Kirn, Default Friend, Alex Lee Moyer, and Sam Frank. A good time was had by all (I think).
—A gentleman who goes by “Jayislate” just published a substack interview with me about the MRB, literature as ritual, and much else. He asked some great questions. Give it a read.
And now for Chapter 7.
I Decided to Listen Less
On September 25, 2013, a fast-talking, but otherwise unassuming man in a button down gray T-shirt and jeans stood before an audience that could not have numbered much more than a dozen or so, and made his pitch for the computing project he had been working on for the past decade. “I remember when the internet was a social network,” said Curtis Yarvin, “I graduated from college in 1992. Everybody’s ports were open. Nobody had heard of firewalls. . . . It was a general-purpose distributed social network. We’re all basically trying to recover that state of innocence. And what happened was Eternal September, and hordes of orcs were released, and it all died.”
The crowd laughed. It wasn’t the first time in the talk laughter could be heard, and it wouldn’t be the last. The laughter seemed to combine mirth and incredulity—as if to ask (genuinely, though not unkindly) is this guy for real? After the talk was over, and a few befuddled questions were asked, a large, jovial man with a thick German accent chimed in.
“I’ve been talking to this guy [Yarvin] off and on for like six months,” he said, “and, I have to admit that I understand only this much (holding thumb and forefinger parallel, in the universal sign of just a little bit) . . . but that is blowing away my mind, so I decided to listen less, because nothing is left of my mind.”
Yarvin, appearing slightly uncomfortable with the praise, smiled and offered to play a video demonstration of his concept later on, before walking back through the folding chairs into the audience.
Yarvin’s invention, Urbit, would require nothing less than leaving behind the entire commonly used computing stack. But it wasn't totally ex nihilo. It rested on the back of a new functional programming language he had invented, called Hoon, which compiled down to Nock. Nock could be described as a low level language similar to what is known as “assembly language” on typical computers. Assembly language simply connotes the set of basic operations into which a given computer's machine code is assembled; machine code consists of strings of bits, such as 1101 0100
, etc.
The first notable thing to mention about Hoon is that it is a functional language. Functional programming languages might be (a little whimsically) described as the cool aloof cousin of the computer programming language family. Lisp, the earliest and perhaps best-known functional programming language today, was influenced by a mathematical system known as the Lambda Calculus. Invented by American mathematician Alonzo Church in 1928, the Lambda Calculus is a way of stating the most elementary concepts in mathematics. Unlike other similar methods, the Lambda Calculus privileges the function instead of privileging the set. (The mathematical field of set theory tends to privilege the set). Church was following in the footsteps of European mathematicians David Hilbert, Moses Schönfinkel, John von Neumann, and the American Haskell Curry (who got his own functional programming language, Haskell, named after him) in trying to find a solid foundation for formal logic that could hold strong no matter how hard one might push against it.1
Unfortunately for mathematicians like Church and his predecessors, Kurt Gödel’s famous incompleteness theorems would soon render them somewhat irrelevant. Gödel showed once and for all that the “Hilbertian program” of attempting to axiomatize the building blocks of math was doomed to failure. “It will never be possible,” wrote fellow mathematician John von Neumann, summarizing Gödel’s findings, “to acquire with mathematical means the certainty that mathematics does not contain contradictions.” [2](George Dyson, Turing’s Cathedral, 94).
But the Lambda Calculus got a second life as an influencer for programming languages. Foremost among these is the above-mentioned Lisp, invented by MIT’s John McCarthy and formally introduced in 1960.3 A major feature that Lisp inherits from the Lambda Calculus is that, as Paul Graham puts it, “code and data are made out of the same data structures.” [4](Paul Graham, The Roots of Lisp). This is also true of Urbit's Nock, the low-level language that rests at the core of Hoon. But one difference in Nock is that both code and data are composed entirely of unsigned integers, i.e. the natural numbers plus zero.
An example of a very simple Nock formula is
5 [1 32]
In this formula 5 is the subject. The symbol that signifies the performance of a function is 1. And what does this 1 want us to do, in Nock? Is it telling us to add, or subtract, or multiply? No, something even simpler. What 1 means is: ignore whatever came before the 1, and return the value after the 1. What comes after the 1? 32. So, when we run
5 [1 32]
we get
32
The 1
function shown above is one of only twelve “opcodes” that Nock runs. The specifications for Nock are meant to be as bare-bones as possible—so much so that they fit on the front of a T-shirt. (This T-shirt has in fact been printed and worn.) To give some comparison, the typical instruction set for an internet server's assembly language has between 1300 and 4000 opcodes.5
Eternal Eternal September
Seeing as Urbit was launched in the 21st century, the real launch was not the day Yarvin gave his presentation in front of that small crowd at the Personal Cloud Community Gathering. The real launch was on the internet. A day before the event, Urbit’s ur-docs were released by an anonymous user, called tsax, to Hacker News, the highest signal place on the net for news relevant to computer programmers.6 “I guess on the Internets,” Yarvin quickly responded, “you never release anything - it's released for you.”
Hacker News warrants its own mini-history, for it is both unique among Facebook-era social networks, and, in other ways, perfectly representative of their limitations. One unique feature of the site is that it was invented as a proof of concept. The concept was a functional programming language called Arc, written by Hacker News inventor Paul Graham. Today Graham is best known for being the co-founder of the start-up incubator Y Combinator, a mentorship program that has become a famous benchmark for young companies trying to make it big. But his first foray into the public square was as author of the book On Lisp7, a well-received guide to the subject. As a matter of fact, Yarvin mentions Graham and Arc within the first 500 words of his Moron Lab post announcing the existence of Urbit. There are some obvious parallels between Graham’s way of thinking and Yarvin’s. A quotation from Graham on the design philosophy behind Arc should be sufficient to demonstrate this:
Good design is timeless, and if you want something timeless you can't pander to the limitations of some hypothetical "average" user. It's too vague a target. It's also a moving target: the average user might not be as stupid as you think.8
Another interesting feature of Hacker News is that it was meant to be both a social network and a funnel for potential entrepreneurs toward Y combinator. In his announcement post for the site, which was originally called “Startup News,” Graham describes it as something more like what a listserv might have been in the early days of the internet, or what Google Groups is today. “We created this partly for our own use,” Graham writes, “we've now funded about a hundred people, so it doesn't work well anymore to send links around by email.”9 In the early days at least, Graham meant for Hacker News to function as something like a reputation system for its users: a place where Graham and the rest of the team at Y Combinator could get to know potential entrepreneurs based on their posts.
The other Hacker News raison dêtre was to replace Reddit, which already in 2007, had ceased to be a good place to find “a concentration of startup-related links.” Whereas at its birth Reddit had been a tech news hub, once it became popular it began to lean more towards news, politics, and other topics that have more interest to the general public. This was a version of the phenomenon that has come to be known as “Eternal September.” The phrase refers to an occurrence on AOL, in September, 1993. Back before then, the internet had been a more rarefied place. Usenet groups had a particular etiquette, such as not posting advertisements (a.k.a. spamming) in inappropriate groups.10 Around every September, Usenet would see an influx of new users, because many people would get their first internet connection at college. And with this influx would come an influx of people violating the general netiquette. Then they’d get chastised and they would adapt, and things would go back to normal.
But in 1993, America Online’s vice president of marketing Jan Brandt had an idea that changed the face of the internet forever. It was her job to grow AOL’s userbase, and she had the fundamental insight that AOL’s biggest need wasn’t advertisements selling any of its individual features; the company just needed to get AOL into people’s hands so that they could see what it actually was. [11](McCullough, How the Internet Happened, 61). So she got the company to spend a quarter of a million dollars printing diskettes and shotgun sprayed them into the homes of anyone within distance. The results were astounding. People were taking the disk, loading it onto their computers, and simply handing over their credit card numbers. “When I saw that,” says Brandt, “honestly, it was better than sex.” In fact, so many people got on Usenet through AOL, in such a short span of time, that they were never compelled to adjust to the netiquette. Newbs just kept coming and coming, overwhelming the earlier users so that the previously established mores could not be enforced. This was the September that Never Ended, or Eternal September. By most accounts, on the internet today, we’re still living in it.
The process of Eternal September has repeated itself in various ways over the years, on various forums. Most people reading this can probably recall a Facebook group or a Reddit forum or a Twitter community that, at one point, was pointedly and focusedly about the thing that it claimed to be about, and which later became noisy, spammy, and dominated by those suffering from an excess of yellow bile. And in some ways, the case was no different for Hacker News. Whereas in 2007 its reason for existence was to replace techie Reddit, which had fallen prey early on to an Eternal September influx, by 2011 Hacker News appeared to have reached its own Eternal September. “Now that Hacker News is so much more popular” wrote entrepreneur Imran Ghory in (appropriately) September of 2011, “the top links tend to be general technology, or geek, or political news” as opposed to news that's refined for the tastes of start-up entrepreneurs.12 Today Hacker News is still an interesting link aggregator, which continues to feature useful and intriguing information about all kinds of things, including start-ups, new technologies, culture, and politics. (A sample front page from April, 2021 listed articles about resources for amateur compiler writers, the geology of Mars, and a memoiristic essay from a man who believes he may be Bob Dylan’s illegitimate son.) But even a glancing comparison between 2007 comments and 2021 comments will betray a userbase that has become more ideological and splenetic. As Hacker News’s own moderator Daniel Gackle put it in 2019, “the one consensus is that it’s not as good as it used to be.”13
The Absence of Bubba
Back in another September—September of 2013—Urbit’s debut on Hacker News garnered what one might call a mixed review. “It seems like Urbit is art for art's sake,” wrote cloud infrastructure architect and former IBM researcher Wes Felter, “the fact that it executes is a side benefit.” Commenting on the style of the early docs, which quickly became a flashpoint among HN commenters, software engineer Cory Burgett wrote, “I thought the style was a refreshing departure from the usual tone of expository technical documents. I actually enjoyed reading it, even though I disagreed with many of the assertions that were made.” Soon afterward, a games designer named Lewis Pollard retorted, “Personally, I was reminded of the schizophrenic guy on HN who built his own OS” (a reference to the late Terry Davis.) Software engineer Risto Saarelma pasted in the comment he had made on the popular "rationalist" blog Less Wrong, founded by AI researcher and essayist Eliezer Yudkowsky. Saarelma's post gave an account of a strange dream he had the night before, in which Yarvin had
gotten tired of the state of the software industry and the Internet and had made his personal solution to it all into an actual piece of working software that was some sort of bizarre synthesis of a peer-to-peer identity and distributed computing platform, an operating system and a programming language. Unfortunately, you needed to figure out an insane system of phoneticized punctuation that got rewritten into a combinator grammar VM code if you wanted to program anything in it. I think there even was a public Github with reams of code in it, but when I tried to read it I realized that my computer was actually a cardboard box with an endless swarm of spiders crawling out of it while all my teeth were falling out, and then I woke up without ever finding out exactly how the thing was supposed to work.
Another user, who went by the handle Touche, wrote, “Watching the video blew my brains out the back of my head. Figuratively of course.” (It would appear Touche meant this as a good thing.)
In general, the comments included a fair amount of befuddlement, a fair amount of admiration, and a fair amount of back-and-forth kibbitzing. One person claimed that the general idea was wonderful, but that the language of Hoon was ridiculous. One person liked the idea but felt it was obviously just for laughs and could have no practical implementations. (One person, whose interest in the project was expressed without equivocation, would later join the company built to bootstrap Urbit, and become its CEO). No matter what the take—and this would be in stark contrast to the comments that would become typical on Urbit-related posts in the second half that decade and in the few years of the ‘20s—almost everyone expressed respect for the grandness and novelty of the vision. Maybe certain details were off. And maybe the docs could be clearer. But at least it was something interesting and new. After all, the project was open source, so those who didn’t like certain aspects of it were always free copy some parts of it and make new and better versions. As Yarvin himself would put it, in an early document about the Urbit address space:
If you don't like this, found your own kingdom in the cloud! Nothing could possibly prevent you. Heck, you can even take the Urbit function, copy it, replace the prince's root key with your own, and call it "Bubba." Bubba and Urbit will compete on a perfectly level playing field. I won't even be offended.14
As of November 2022, there still isn't any Bubba.