
Latest issue
"Let It Crash" Is a Design Philosophy, Not a Cop-Out
6/17/2026
Lesson 15: What Erlang's actor model teaches us about building systems that expect to fail --- A telephone switch that handles 30–40 million calls per week cannot afford a maintenance window. It cannot queue a restart for off-peak hours. When something breaks — and in a system th…
Recent posts
Lesson 14: What Clojure's persistent data structures reveal about the nature of change --- There's a moment every developer hits when working with shared mutable state: you're debu…
Lesson 13: What Rust's ownership system reveals about the cost of trusting programmers --- There's a number that keeps appearing in conversations about memory safety, and it's wort…
Lesson 12: What Homoiconicity Teaches Every Programmer --- There's a moment that happens to almost every programmer who first encounters Lisp. They see something like (+ a ( b c))…
Lesson 12: When the Language Is the Architecture --- Most distributed systems frameworks start with a lie: that you can make a network of machines behave like a single machine, if…
Lesson 11: What a 1970s Government Contract Teaches About Modern Language Design --- The United States Department of Defense surveyed its own software in the early 1970s and found…
Lesson 10: What Embedding Philosophy Teaches About Language Design for Hostile Environments There's a design principle hiding inside Lua that most programmers walk right past. They…
Lesson 10: The Vision That Mainstream OOP Left Behind --- Alan Kay has said, more than once, that most of what gets called "object-oriented programming" today isn't what he meant.…
Lesson 9: The Design Decisions That Made APL Simultaneously Brilliant and Impenetrable --- Last week we looked at APL's philosophy — the idea that notation shapes thought, and that…
Lesson 8: When Notation Becomes the Language --- Ken Iverson had a complaint. It's 1962, and most programming languages, in his view, were "decidedly inferior to mathematical notat…
Lesson 7: Declarative Thinking and the Logic Programming Model Here's a question that reframes how you think about code: what if you never told the computer how to find the answer…
Origins: One Programmer's Refusal to Accept Overhead In 1969, Charles Moore was writing software to control radio telescopes at the National Radio Astronomy Observatory. The machin…
Lesson 7 of 12: Concurrency as Architecture Here's a number that should bother you: the Ericsson AXD301 telephone switch, built on Erlang, was reported to achieve nine nines of ava…
Lesson 4 of the Language Archaeology curriculum Here's a design constraint that most programmers never face: your software controls telephone switches. A single switch handles tens…












