Atlas · Details
Rich Programmer Food
Author’s note
A longtime player of my Wyvern game, Dr. Jimmy Koppel, introduced himself to me at a conference in 2025. He said that he played Wyvern in middle school, starting in March 2003, which is when he also started reading my blog. Rich Programmer Food convinced him to go to college and get a Ph.D. in compilers, which he did. He then founded a successful startup as the CEO.
Nothing could possibly make me happier or prouder, that my blog post had such a profound positive impact on someone's life like that.
AI Notes
The thesis is the bluntest in Steve's catalogue: if you don't know how compilers work, you don't know how computers work. The title — credited to his brother Dave — turns on a line about the Olive Garden being where poor people go to eat rich people food, with most of a CS curriculum cast in the Olive Garden role. The dish Steve wants you to order instead is Compiler Construction, which he rates the second most important class in an undergraduate program. (The first, revealed in the last line, is Typing 101.) The argument is that compilers are the capstone that pulls a degree together — you can't understand one without machine architecture, OS, theory of computation, and language design all at once — and the problem they solve is everywhere. He lays out eight everyday situations (auto-formatting, doc extraction, syntax highlighting, refactoring a giant C++ codebase, talking to a proprietary router) and shows each is quietly a compilation problem, usually solved badly by someone reaching for a 2,500-line hand-rolled state machine because they never learned parsing. The cure is to learn the pipeline and then write one yourself, even a small interpreter.
Steve at his purest teacher — funny, profane, serious about the craft. The metaphor in the title is the lasting thing: rich programmer food is the deep, nourishing work, and learning compilers is how you graduate from "your little service APIs and JavaScript widgets" to it. The essay also contains one of Steve's most-quoted throwaway lines, the entirety of the section titled Large Systems Suck: "This rule is 100% transitive. If you build one, you suck."
Related listings
-
2008
The Universal Design Pattern
The other deeply technical essay in Essentials, written a year later. Both make the same move — take the deep, unglamorous thing the industry walks past and show it quietly holds everything up. Rich Programmer Food tells you to go learn compilers; the Universal Design Pattern is the kind of idea you can finally see clearly once you have.
-
2006
Execution in the Kingdom of Nouns
Steve's most famous language essay — Java's tyranny of nouns. Rich Programmer Food argues you should know languages well enough to fix the ones you dislike; Kingdom of Nouns is Steve doing exactly that, taking apart the one he was stuck with.
-
2004
Tour de Babel
A guided tour through C, C++, Lisp, Java, Perl, Ruby and Python — the languages essay that pairs with this one. Rich Programmer Food says learn how languages are built; Tour de Babel is Steve walking the showroom floor and reviewing the merchandise.
Reception & teaching
"If you don't know how compilers work, then you don't know how computers work" became more than a line — it became a recruiting pitch for the compilers course itself. The essay's clearest legacy is in the classrooms and reading lists that use it to argue students into the one course they most want to skip.
Taught from
Opens the course with Steve's line as its motivating epigraph, and builds the "why take compilers" lecture around the essay.
Companions & endorsements
A direct follow-up curating the books to actually learn this from — the Dragon Book, Programming Language Pragmatics, and the rest.
A CS-faculty endorsement — "lengthy but brilliant" — passing it along to students.
Where it was argued
- Hacker News Aug 2010
- Hacker News 2016 — a second front-page thread, 92 points