Joy & Curiosity #67
Interesting & joyful things from the previous week
Last issue of the year, let’s do this!
This week, Ryan and I got to interview DHH. It’s very rare that I get nervous before an online conversation, but this was one of those times. I mean, that’s the guy who made Rails, man! I wouldn’t be here without Rails. Rails is what I did for the first seven years of my career. Rails is the reason why I have a career. I read every book he and Jason have ever written, of course, and 37signals has had as deep an impression as a company can have on probably anybody who’s worked in a startup between 2008 and 2015.
…and then we had a great conversation. It’s been a few days, and different parts of it keep popping back into my head. David said quite a few things that I now feel I have to share. Some things about marketing that resonate with what we’ve been talking about internally; some things I want the world to hear; some things that were funny; other things that were very fascinating (he said he still writes 95% of his code by hand); and the rant on cookie banners that I want politicians to hear.
But here’s something that I want to leave you with, in this last edition of the year, this year that brought and announced more change to this profession than any other year I’ve lived through as a working software developer. Here’s something that David said that sums up why I’m excited and so curious about where all of this is going, something that I hope makes you feel something positive too:
“Where does the excitement come from? First and foremost, I love computers and I love to see computers do new things. It’s actually remarkable to me how many people who work in tech don’t particularly like computers. Yes, even programmers who have to interact with them every day and make these computers dance, not all of them like computers. I love computers. I love computers just for the— sheer machine of it. I’m not just trying to be instrumental about it. I’m not just trying to use computers to accomplish something. There’s a whole class of people who view the computer just as a tool to get somewhere. No, no, no. For me, it’s much deeper. I just love the computer itself and I love to see the computer do new things. And this is the most exciting new thing that computers have been doing, probably in my lifetime. Or at least it’s on level with the network-connected computer. Yes.”
The computer can now do new things.
My teammate Tim wrote about how he ported his TUI framework from Zig to TypeScript and how, in the process of porting it, he noticed that he’s getting in the way of the agent, slowing it down and costing more tokens. So he took his hands off the wheel and what we ended up with is this: A Codebase by an Agent for an Agent. I’ve shared this story quite a few times in person. I’m really happy it’s out now, so we have proof: this is an world-class terminal expert and programmer, letting an agent write 90% of the code, and ending up with something that is really, really good. (Also, side note: I contributed the images and, man, it’s so fun to put stuff like this out into the world.)
This was fantastic: Jeff Dean and Sanjay Ghemawat with Performance Hints. When I opened it I thought I’d skim it, but then I read the whole thing, looked at a lot of the examples, asked ChatGPT some questions along with screenshots. The writing is clear and precise and simple, the section with the napkin math is impressive, the emoji map optimization is what made me open ChatGPT, and then at the end there, in the CLs that demonstrate multiple techniques section, there’s this header 3.3X performance in index serving speed! and when you click on it you’ll read that they “found a number of performance issues when planning a switch from on-disk to in-memory index serving in 2001. This change fixed many of these problems and took us from 150 to over 500 in-memory queries per second (for a 2 GB in-memory index on dual processor Pentium III machine)” and then you realize what an impressive cathedral of software engineering Google’s infrastructure is. Click here for a good time, I’m telling you.
The TUI renaissance isn’t over: Will McGugan just released Toad, a “unified experience for AI in the terminal.” Taking inspiration from Jupyter notebooks is very smart and I love those little UI interactions he built. Good stuff.
The title is “Prompt caching: 10x cheaper LLM tokens, but how?” so you might think that this is about prompt caching, but, haha, that’s silly. Listen, this is about everything. It’s one of the best all-in-one explainers of how transformers work that I’ve come across. It’s by Sam Rose, who’s very good at visual explanations, and here he does a full explanation of how text goes into an LLM and text comes out the other end, including visuals, pseudo-code, in-depth explanations. It’s very, very good. If you don’t know how a transformer works, do yourself a favor and read this. If you do know how it works, look at this and smile at the visualizations.
Imagine you’re holding two rocks. One has written on it: “terminals can display images now, thanks to the kitty’s terminal graphics protocol”. The other: “when you think about it, a GUI framework does nothing but create images and display them, right?” Now the question is: what happens if you smash those two rocks together? This: “DVTUI” (note the quotes!), which takes a GUI framework (DVUI), gets it to save PNGs instead of rendering them to the screen, and then uses a TUI framework (libvaxis) to render those images in the terminal. To quote: “All that happens every single frame. And yet it works.”
As you know, I’m a sucker for lists like this one: Tom Whitwell’s 52 things I learned in 2025. Wonderful.
… and it brought me to this: write to escape your default setting. “Writing forces you to tidy that mental clutter. To articulate things with a level of context and coherence the mind alone can’t achieve.” Yes. Now, in times of LLMs, it’s probably more apparent than ever before that writing (real writing; writing you do) is thinking.
How I wrote JustHTML using coding agents: “After writing the parser, I still don’t know HTML5 properly. The agent wrote it for me. I guided it when it came to API design and corrected bad decisions at the high level, but it did ALL of the gruntwork and wrote all of the code.” I bet there’s a lot of people who read this and think “ha! so he doesn’t know HTML5 still!” And yet I wonder: was that the goal? It’s a very good post. A very calm, practical post, but that raises a fundamental question: JustHTML is now “3,000 lines of Python with 8,500+ tests passing” and “passes 100% of the html5lib test suite, has zero dependencies, and includes a CSS selector query API” — how many more dependencies could we turn into that now?
Martin Kleppmann: “I find it exciting to think that we could just specify in a high-level, declarative way the properties that we want some piece of code to have, and then to vibe code the implementation along with a proof that it satisfies the specification. That would totally change the nature of software development: we wouldn’t even need to bother looking at the AI-generated code any more, just like we don’t bother looking at the machine code generated by a compiler.”
“The perfection of snow in the paintings of Danish artist Peder Mørk Mønsted.”
Stripe Press: Tacit. “The mechanism for developing tacit knowledge is straightforward but slow: repeated practice that gradually moves skills from conscious effort to automatic execution. The mechanism for transmitting it is even slower: apprenticeship, where a learner works alongside someone experienced, observing and imitating until their own judgment develops. This is why tacit knowledge often concentrates in lineages, unbroken chains of practitioners passing expertise to the next generation. […] AI has elevated the distinction between what is tacit and what is not. Language models can summarize and automate, but when they attempt to create something that carries the signature of human craft, the result is often flat.” In the words of Tamara Winter: Tacit is a series of mini-documentaries that are “ vignettes of craftspeople who provide a pretty compelling answer to the question, ‘after AI, does mastery still matter?’”
I need to try this: Geoffrey Litt’s JIT Guide Workflow.
This fantastic post by Jakob Schwichtenberg shifted something in my head: “Our very definition of intelligence encodes the bias toward speed. The modern definition of intelligence is extremely narrow. It simply describes the speed at which you can solve well-defined problems. Consider this: if you get access to an IQ test weeks in advance, you could slowly work through all the problems and memorize the solutions. The test would then score you as a genius. This reveals what IQ tests actually measure. It’s not whether you can solve problems, but how fast you solve them.” And then: “In fact, it’s not hard to imagine how raw processing speed can be counterproductive. People who excel at quickly solving well-defined problems tend to gravitate toward... well-defined problems. They choose what to work on based on what they’re good at, not necessarily what’s worth doing.”
… but then there’s James Somers saying “Speed matters: Why working quickly is more important than it seems.” And Nat Friedman is saying: “It’s important to do things fast. You learn more per unit time because you make contact with reality more frequently. Going fast makes you focus on what’s important; there’s no time for bullshit.” And Patrick Collison is collecting fast projects. Then here I am, wondering, and possibly assuring myself: yeah, we’re not all doing the same things, are we?
antirez’ Reflections on AI at the end of 2025. “The fundamental challenge in AI for the next 20 years is avoiding extinction.”
Yes, this is in The New Yorker: “I trust in TextEdit. It doesn’t redesign its interface without warning, the way Spotify does; it doesn’t hawk new features, and it doesn’t demand I update the app every other week, as Google Chrome does. I’ve tried out other software for keeping track of my random thoughts and ideas in progress—the personal note-storage app Evernote; the task-management board Trello; the collaborative digital workspace Notion, which can store and share company information. Each encourages you to adapt to a certain philosophy of organization, with its own formats and filing systems. But nothing has served me better than the brute simplicity of TextEdit, which doesn’t try to help you at all with the process of thinking.” Great title too: TextEdit and the Relief of Simple Software.
Also The New Yorker, on performative reading, and reading, and books, and social media: “Reading a book is antithetical to scrolling; online platforms cannot replicate the slow, patient, and complex experience of reading a weighty novel. [...] The only way that an internet mind can understand a person reading a certain kind of book in public is through the prism of how it would appear on a feed: as a grotesquely performative posture, a false and self-flattering manipulation, or a desperate attempt to attract a romantic partner.”
LLMs and physical laws? Maybe: “The dynamics of LLM generation are quite unique. Compared to traditional rule-based programs, LLM-based generation exhibits diverse and adaptive outputs. […] To model the dynamic behavior of LLMs, we embed the generative process of LLM within a given agent framework, viewing it as a Markov transition process in its state space. […] Based on this model, we propose a method to measure this underlying potential function based on a least action principle. By experimentally measuring the transition probabilities between states, we statistically discover […] To our knowledge, this is the first discovery of a macroscopic physical law in LLM generative dynamics that does not depend on specific model details.”
“’Climbing Everest solo without bottled oxygen in 1980 was the hardest thing I’ve done. I was alone up there, completely alone. I fell down a crevasse at night and almost gave up. Only because I had this fantasy - because for two years I had been pregnant with this fantasy of soloing Everest - was I able to continue.’ This is how Messner talks about how his will was governed.”
I regularly remind myself and sometimes even others of Jason Fried’s Give it five minutes. It’s one of the most influential things I’ve read in the past ten years. I constantly think of it and I’m convinced it’s improved my mental well-being and my connections to other people like few others things. Yes, I know how this sounds, but, I guess, an idea and a specific phrase that sticks with you can go a long way as far as life-changing is concerned. Now, all of that is just context, because what I want to actually share is this Jason Fried piece here: Idea protectionism. I re-found and re-read it after sharing the other Jason Fried piece and wanting to share the Jony Ive quote in this one and, yup, stumbled across it by chance. Lucky.
Reuters reports on China’s Manhattan Project. This is it, baby! This has it all: corporate espionage, ASML, lithography, “one veteran Chinese engineer from ASML recruited to the project was surprised to find that his generous signing bonus came with an identification card issued under a false name”, EUV systems that “are roughly the size of a school bus, and weigh 180 tons”, Germany’s Carl Zeiss AG, “networks of intermediary companies are sometimes used to mask the ultimate buyer”, “employees assigned to semiconductor teams often sleep on-site and are barred from returning home during the work week, with phone access restricted for teams handling more sensitive tasks”, and, of course, the tension at the heart of it all: “Starting in 2018, the United States began pressuring the Netherlands to block ASML from selling EUV systems to China. The restrictions expanded in 2022, when the Biden administration imposed sweeping export controls designed to cut off China’s access to advanced semiconductor technology. No EUV system has ever been sold to a customer in China, ASML told Reuters.”
I didn’t know this is a thing, this was funny: the Beckham rumour that refuses to die.
At work, we ended up talking about Christmas traditions and while I was explaining that where I live the magical entity that makes presents appear is called “christkind” (christ child), I was also trying to find proof on Wikipedia so I’d seem less weird and found this map. Note the filename: Christmas-gift-bringers-Europe.jpg. Great name. But now see where the green and the brown mix, in the middle of Germany? That’s where I live. So not only does one legend say it’s Baby Jesus bringing presents, it’s also that in the next town over it’s the Christmas Man. And that dude looks an awful lot like its American cousin Santa Claus, who has a lot more media appearances and higher popularity in the younger-than-10 demographic. Try to keep your story straight when you talk to a 4-year-old who keeps asking you whether she’ll get a computer for Christmas. How grand it must be to live in Iceland, where, according to that map, the Christmas Lads live.



I've really loved reading your blog this year; I genuinely look forward to sitting down with a cup of coffee on a Sunday morning and going through all the weird and wonderful stuff you've found that week.
Having said that: the DHH interview is a real disappointment. I'm a Londoner born and bred, and DHH's post about my city and the disgust he has for people who look like me is repulsive. I know, I know; you're just computer guys! Talking about fun computer things! Your writing makes you seem like a warm, joyful person, but who knows? Maybe you're also the sort of person whose lip would curl if you saw my daughter and I on the tube, simply because we weren't white.
Is the interview with DHH already posted somewhere? I suppose not or there'd be a link; looking forward to it!