Joy & Curiosity #73
Interesting & joyful things from the previous week
A year ago, on this very newsletter, I wondered: how might AI change programming?
Here are some of the questions I asked in that post:
“Will we write docstrings at the top of files that aren’t meant to be read by humans, but by LLMs when they ingest the file into their context window?”
“Will we see a melting of language servers and LLMs?”
“What will change once we start to optimize code and processes around code purely for the reader, because the writer’s a machine?”
“Will we change how we modularize code and switch to writing many smaller programs because they’re easier for LLMs to digest than large codebases?”
It’s been a year and now most of these questions sound naive to me. Of course we’ll write documentation for agents, language servers seem dead, and absolutely one hundred percent are we optimizing code for readability over writability, except that now the reader is also an agent. And small programs? Yes, we’re all optimizing codebases for the agents now.
Here’s a little anecdote for you, to show what happened in a year.
On Tuesday, I was on a call with Tim and Camden to discuss something about our new architecture, and they suggested that we use UUIDs everywhere. Hmm, I don’t know, UUIDs aren’t a silver bullet you know, they do come with downsides, I said. But we don’t have those downsides, they said, because our tables are literally a few hundred rows in this setup. Right, right, I said, but UUIDs are kinda ugly and when you look at them they don’t give you any insights.
On Thursday, Tim then said: hey, didn’t you just say on Raising An Agent that you need to optimize for agents, not for humans, even at the cost of human developer experience? And I don’t remember what exactly I said in response, but it boiled down to: you’ll see, and then I will say that I told you so, UUIDs are ugly.
Then yesterday, on Saturday, I realized Tim’s right. Who am I kidding. Agents will read far more UUIDs than I ever will in the future. I had an aesthetic objection to something I’ll barely see. The agents, though, they will deal with the UUIDs and they love them.
We recorded another episode of Raising An Agent. Quinn and I talk about where the frontier of these coding agents is moving to, why we are going to kill the Amp editor extension and why we don’t think the sidebar nor the text editor are the future, and, finally, we talk about how wild it is to build in AI land and how every playbook software companies had in the last twenty, thirty years is now outdated. The only winning move now is to accept that the board will be flipped at random intervals. It’s 55 minutes long and a condensed version of what I’d tell you this evening if you and I went out for beers.
Recorded another short video: “Is this the bet you want to take? While everything around us is changing?”
My colleague Lewis wrote a wonderful post about giving agents feedback: Feedback Loopable. There are so many good ideas in there: the arrow, the URL updating, the logs, the debug/REPL/CLI thing. Highly recommend it.
Hey, seriously, watch this talk: Rich Hickey - Simple Made Easy. I’ve linked to it before, I’ve tweeted about it many times, but this week I had to find out (and then digest and recover) that some of my colleagues hadn’t seen it. So now I’m here and I’m telling you that this might very well be the greatest talk about programming ever given. I’m not kidding. I’m not exaggerating. I mean it. Not a week goes by in which I don’t think of it. I’m rearchitecting a system now and when I close my eyes I can see Rich standing there, one hand on the podium, the other in the air, hanging down, and him saying “…and you end up with this knot.” Go and watch the talk. Don’t complect.
Martin Alderson: “Two kinds of AI users are emerging. The gap between them is astonishing.” There’s a lot of great stuff in there. The first point about people being stuck in Copilot is very interesting, isn’t it? If your product is a text box, then it looks like all the other text boxes. But some text boxes have actual genies behind them and others don’t. You, as a user, can’t tell in advance. The other points he makes about enterprises shooting themselves in their feet with their security restrictions is very interesting too.
Monday was my birthday and I got a fantastic gift: the Xteink X4! Yes, it’s a tiny, tiny e-reader. My mini-review, after having not read at all on it this week yet: very light, very small, very fun — the software seems unfinished, it feels a bit hacky, it’s a bit of a pain in the ass to transfer files to it, but there are a lot of articles and browser extensions on how to get the most out of it, there are also custom wallpapers, and an open-source firmware you can flash on it, and people are using their agents to write scripts for it, and I had Amp clone and extend the Send to X4 browser extension for me so that it fixes some broken epub formatting. Fun!
Talking about text boxes, here’s Julian Lehr, Creative Director at Linear, with his case against conversational interfaces.
Mitchell: My AI Adoption Journey. “Through this journey, I’ve personally reached a point where I’m having success with modern AI tooling and I believe I’m approaching it with the proper measured view that is grounded in reality. I really don’t care one way or the other if AI is here to stay, I’m a software craftsman that just wants to build stuff for the love of the game. The whole landscape is moving so rapidly that I’m sure I’ll look back at this post very quickly and laugh at my naivete.” Great post.
And here’s DHH, roughly 6 weeks after I interviewed him and couldn’t get a word in when he said that he doesn’t believe in the hype and that agents can’t write code he likes, telling his employees how to use agents.
Fantastic blog post: A Broken Heart. Read it, I swear you won’t regret it. Great writing, great bug, great debugging. And — you might not even notice, because of how calmly it’s woven into the rest — great use of agents.
Brendan Gregg is joining OpenAI. What a gig for him! There’s very few places in the world right now where the relationship between performance and business value is as big as it is there.
Also: Yehuda Katz is joining Vercel to work on v0. The next big framework programmer going to build developer tooling with AI. Because that’s where the leverage is.
But then here’s José Valim, another big framework guy but one who turned into language guy, explaining why he thinks Elixir is the best language for AI. I respect Valim immensely, he’s one of this generation’s greatest programmers, but I couldn’t help reading this and thinking: does it matter? doc strings? As if GPT-5.2 wasn’t a thing. The point with the tooling stands though. Remember when some languages flipped how they print stack traces so that the most important line is printed last, so that the developer reading them in the terminal can immediately see it without scrolling up? What’s the equivalent for agents going to be?
And here’s someone arguing that the age of frameworks is over, but that software engineering (“the true one”) is back: “Automation and boilerplating have never been so cheap to overcome. I’ve been basically never writing twice the same line of code. I’m instantly building small tools I need, purpose built, exactly shaped around the problem at hand. I don’t need any fancy monorepo manager. A simple Makefile covers 100% of my needs for 99% of my use cases. When things will get very complicated, and if they get very complicated, I’ll think about it. But only then. Not a second before. This is engineering. You solve the problem you have, not the problem someone on a conference stage told you that you’ll eventually have.” I agree that agents solve many of the same problems that frameworks are solving, but the overlap isn’t 100%. Frameworks will continue to be around but look vastly different in a few years.
Related: Start all of your commands with a comma. This seems very smart and while I don’t have that much in my ~/bin, I’m intrigued. But I’m also wondering: won’t the agents think it’s a typo? Won’t they get it wrong at least once every time they try to run a command. You know, as if they were trying to plug a USB-A thing in.
So, John Collison and Dwarkesh Patel interviewed Elon Musk and two of them drank Guinness. Now, I’m aware that by linking to this episode I risk receiving angry letters telling me that I shall not promote Musk and by linking to a conversation with him I endorse this and that. I’m aware, but I do think it’s possible to listen to someone talk and find them interesting and providing food for thought without agreeing with them. That’s what happened when I listened to this episode. I kept thinking about how crazy this is: data centers in space to generate tokens. Maybe it will actually happen? Wow. I also kept thinking about how Musk views problems and engineering challenges, and how he always wants to remove the next bottleneck, and how everything is a manufacturing question to him. Everything, as if he’s in a game of Factorio. Building one thing isn’t enough, to solve the problem you need to build the factory that builds the things. I do think that listening to this episode and reading the commentary around it is interesting, because energy and GPUs are at the heart of the transformation we’re going through. It’s also interesting because xAI is joining SpaceX and SpaceX is about to IPO and you have to wonder how much of this podcast is part of the IPO pitch.
This tweet by Rasmus is worth reading. And so too is the reply by Protty (that’s the Zig contributor, ex-TigerBeetle, hardcore hacker Protty). My personal, very boring take that’s actually so boring that it often makes me wonder whether I might just not be smart enough to see what others apparently see: I don’t think today’s software is buggier than the software I used in 1998 or in 2002 or in 2010. I also don’t think the software back then was better. What I do think is that the Lindy effect exists in software too and that’s why Vim is something we should put in a shrine but not that all software from 1992 is great.
cdixon in 2013: what the smartest people do on the weekend is what everyone else will do during the week in ten years.
2013, again, this time Jason Cohen: The Code is your Enemy. Prescient, right? I mean: “The weakness is the same as your strength as they often are: Your love of creation. You love to write clean, tested, scalable, extensible, beautiful code. You love converting ‘JTBDs’ into 960-wide artwork. You love developing an entire app in the browser against a scalable back-end. And because you love it, you do it. You wake up in the morning thinking about what you can make, not how you can sell. You open Visual Studio before you consult your to-do list because there’s something you just need to tweak. You launch xterm before your CRM (if you even have one, which you don’t) because the server was running just a tad slower than you’d expect and you want to paw through log files.”
“Clawdbot is a boutique, nerdy project right now, but consider it as an underlying trend going forward: when the major consumer LLMs become smart and intuitive enough to adapt to you on-demand for any given functionality – when you’ll eventually be able to ask Claude or ChatGPT to do or create anything on your computer with no Terminal UI – what will become of ‘apps’ created by professional developers? I especially worry about standalone utility apps: if Clawdbot can create a virtual remote for my LG television (something I did) or give me a personalized report with voice every morning (another cron job I set up) that work exactly the way I want, why should I even bother going to the App Store to look for pre-built solutions made by someone else? What happens to Shortcuts when any ‘automation’ I may want to carefully create is actually just a text message to a digital assistant away?” That’s by Federico Viticci. I think he has programming chops, but I don’t think he’s worked as a software engineer and, well, now he’s also seeing it: a lot of software is going to die in the next few years. Don’t make the mistake and think that there’ll be announcements or funerals.
Here’s stevey with a very stevey but calm-and-reflective-stevey post about Anthropic, and the idea of a Golden Age that companies go through, and about a hundred other things too: The Anthropic Hive Mind. This is stevey at his best. And, coming back to what Viticci wrote, the closing paragraphs are very good: “If you have a strictly online or SaaS software presence, with no atoms in your product whatsoever, just electrons, then you are, candidly, pretty screwed if you don’t pivot. I don’t think there are any recipes for pivoting yet; this is all new, and it’s all happening very fast. But there is a yellow brick road: spending tokens. This golden shimmering trail will lead your company gradually in the right direction. Your organization is going to have to learn a bunch of new lessons, as new bottlenecks emerge when coding is no longer the bottleneck. You need to start learning those bespoke organizational lessons early. The only way to know for sure that you’re learning those lessons is if people are out there trying and making mistakes. And you can tell how much practice they’re getting from their token spend.” Here’s my recipe for how to walk the yellow brick road, from December 2025. I’d update it to say: use deep mode in Amp. GPT-5.2 and GPT-5.3 — that’s the frontier now.
Wirth’s Revenge. I really enjoyed this one. I don’t agree with quite a few things in there but that’s what made it stick with me and maybe I’ll change my opinions because of it. Good stuff.
An invitation by Nolan Lawson to mourn our craft. “Someday years from now we will look back on the era when we were the last generation to code by hand. We’ll laugh and explain to our grandkids how silly it was that we typed out JavaScript syntax with our fingers. But secretly we’ll miss it.”
Domenic Denicola: “But they haven’t solved the need to plan and prioritize and project-manage. And by making even low-priority work addictive and engaging, there’s a real possibility that programmers will be burning through their backlog of bugs and refactors, instead of just executing on top priorities faster. Put another way, while AI agents might make it possible for a disciplined team to ship in half the time, a less-disciplined team might ship following the original schedule, with beautifully-extensible internal architecture, all P3 bugs fixed, and several side projects and supporting tools spun up as part of the effort.”
Nicholas Carlini at Anthropic “tasked Opus 4.6 using agent teams to build a C Compiler, and then (mostly) walked away.” That’s a milestone we’ll think back to even next year, I’d say. But, of course, people have moved the goalposts out of the stadium already and are saying that the code the compiler produced is slower than GCC’s at -O0. See you in the parking lot! But there’s another interesting bit here, at the end: “So, while this experiment excites me, it also leaves me feeling uneasy. Building this compiler has been some of the most fun I’ve had recently, but I did not expect this to be anywhere near possible so early in 2026. The rapid progress in both language models and the scaffolds we use to interact with them opens the door to writing an enormous amount of new code. I expect the positive applications to outweigh the negative, but we’re entering a new world which will require new strategies to navigate safely.” Why do statements like these always sound so hollow when they come from people working at Anthropic?
Steven Sinofsky, who’s seen quite a few platform and paradigm shifts from up close: “Death of Software. Nah.” He’s saying that “there will be more software than ever before. This is not just because of AI coding or agents building products or whatever. It is because we are nowhere near meeting the demand for what software can do.” And “new tools will be created with AI that do new things.” And also: “Finally, it is absolutely true that some companies will not make it. It is even true that in some very long time, longer than a career or generation, every company will be completely different or their product line and organization will have dramatically changed. This will not broadly happen on any investing timeline.”
Jo Kristian Bergum with some very good thoughts on the future: “few things are worth building.” The value of 10k lines of code is approaching $0, he says, and a lot of things will disappear along with the value these lines once held. “What survives? Systems that compress hard-won insights agents would have to rediscover at enormous token cost. Systems that operate on a cheaper substrate than inference. Systems that solve hard universal problems agents can’t route around easily. Systems built for how agents actually work, not how we wish they worked.” The point about the “cheaper substrate” is something I flip back and forth on. Let’s see how it plays out.
David Crawshaw after “eight more months of agents”: “I am having more fun programming than I ever have, because so many more of the programs I wish I could find the time to write actually exist. I wish I could share this joy with the people who are fearful about the changes agents are bringing. The fear itself I understand, I have fear more broadly about what the end-game is for intelligence on tap in our society. But in the limited domain of writing computer programs these tools have brought so much exploration and joy to my work.”
Yesterday evening, to my great delight, I found out that there’s a documentary on Netflix about The New Yorker’s 100th anniversary. Why did no one tell me about this? Next time, please do. That’s why I write this newsletter. But anyway: delightful and very good. Also, if you’ve never listened to it, I very often think of David Remnick’s voice in this 2016 episode of the Longform podcast.
Now that’s a headline: Notepad++ Hijacked by State-Sponsored Hackers. And here’s a very interesting, very screenshot-heavy deep dive into how the attack works. But I want to read the New Yorker version of this. Who targets Notepad++? There has to be an amazing story behind this.


