How many bugs are you willing to tolerate in your codebase?
Don’t tell me it’s zero, because we both know it’s not zero. It’s also not a four-digit number. That’d be too much. But there is a number, or a range of numbers.
Because we all know that it’s theoretically possible to get to zero bugs, but so far the cost-to-benefit ratio made it not worthwhile. And, on the other end, if the number is too high then your software becomes unusable and you lose customers. (It’s worth mentioning, though, that how high that number can go also depends a lot on context: no one drops their banking app because of five bugs they ran into, as long as the money’s where it’s supposed to be.)
Now here’s my question to you: when was the last time you adjusted that number?
With agents, bugs are faster to find and to fix. You can start bug investigations asynchronously and in parallel. You can find and fix bugs in areas of the codebase you never would’ve debugged before. You can throw an infinite number of agents on the same bug.
Imagine it’s 2018 and in your engineering department’s office a genie appears and says: “Nice to meet you. Usually there’s this whole thing we do now, but we can skip that. I anticipated your biggest wish and here it is: a team of ten world-class engineers that have specialized in debugging and can find and fix bugs in any language, any framework, any platform. They don’t sleep. They don’t grow frustrated. They don’t want to build features. They live to fix bugs.”
You’d of course look around and wonder whether anyone else is seeing this, but then you’d say: “Wow, okay. I didn’t even know I had that wish. But… I’ll take it, I suppose? Can I even refuse?” The genie disappears before you say that last word.
And then you consider what you can do now, with that team available, and you realize: we can, no: we must go faster now. We need to recalibrate what fast even means.
There’s going slow and playing it safe, where no known bug goes into production, and there’s being fast and reckless, where you know that some bugs might make it through.
We need to find the spot right in the middle, where speed and defects are in balance, where we go so fast that, yes, some bugs might make it through, but their lifetime has been shortened substantially by our new team and no one will even know about these bugs before they’re fixed.
Time to recalibrate.
Beautiful, so, so good: Everything I own, owned. Now that you have a firehose of tokens, of intelligence, you can point it at things and take them back.
The Golden Rule for Becoming a Better Writer: “One of the key things I’ve learned is this: there’s no real blueprint. I say this to aspiring writers in my workshops, and those I mentor. There’s no one way – every writer will have a different path to creation. […] Except the one golden rule*. One rule that is true, no matter the writer. One rule, that if you don’t follow, means you shouldn’t be writing in the first place. Here it is: Read as much as you can. Read widely and well.” Yes, yes, yes, yes. You need to immerse yourself in what you want to be good at.
“We are not too late to change Europe’s trajectory, if we take the right steps today.” Patrick Collison and Mario Draghi have created the Rhine Group.
Talking about the EU: How Europe is killing makers and micro-entrepreneurs. Made me say “maaaaan” out loud.
Paul Dix, creator of InfluxDB: The end of programming. I agree with this so much that I have a hard time even imagining the arguments or the worldview of someone who’s arguing against what Paul is saying here: “But the most productive software creators will be doing it without programming in any traditional sense. They’ll be directing AIs, creating harnesses, and software factories, and QA and verification systems that ship working software faster than we’ve ever seen before. And we will have arrived at the point where we have more running, production software written by AIs than written by humans. It’ll be the end of programming.” The future of software & programming is going to be wild and if you still insist on “the models can’t write good code” or “I’ll be there to clean up the mess”, then… well, I don’t know what to tell you anymore. What software engineering is is changing, and that changes what software is, and that in turn changes again what software engineering is, and so on and so on. I don’t see an end to this in the near future. It’ll be a few more years before things have settled.
You all already know that I think CleanShot X is one of the greatest macOS applications of all time, right? I mean, you watched this, yes? So, anyway: they’re going to release a new version on September 1 and I can’t remember the last time I was this excited for a software release. I mean, what are they going to do? It’s perfect, how can you top perfection?
Chad Fowler: SaaS Isn’t Dead. Sameness Is. I think Chad and I see the same things: a lot of customization options in software — plugins, settings, configuration — were built on the assumption that changing the code is hard. But that’s no longer true!
Talking about the future: we recorded another episode of Raising an Agent and this might be the most “what does it all mean?” episode we’ve done so far, and all of them have been pretty, well, “what does it all mean?” In this one though we talked about what Chad and Paul also talk about: the future of software, the future of SaaS, build vs. buy, vibe coding vs. jellyware, foundations and systems of record.
“US consumer spending on Apple’s App Store fell for the first time in a decade in Q2”
Dylan Patel was on the Dwarkesh podcast again and of course I listened to the whole thing right away. I love listening to them riff on tokenomics the same way I imagine a sports fan loves to listen to commentators discuss trades of players or something. But this episode went to a different place in the second half when they discussed what would happen to the world economy if growth of AI and growth of the AI labs stay at the current pace and… the numbers, the trajectories, the results… It all sounds very sci-fi, which is to say: hard to believe. But then again: a company going from $10M to $60B of ARR in less than two years sounded like sci-fi two years ago, too. But it happened. And now we have another company, Nvidia, doing $1B per day. I did find Dylan’s pushback interesting — that politics, and the real world, might slow the growth — but I found this formulation even better: What if demand flattens?
One thing I’ve used in anger a lot over the past few weeks is this prompt: “what the hell do you mean? Use ASD-STE100 Simplified Technical English (STE)” And that last part I always copy from that Wikipedia page.
Love stuff like this: Building a backyard office, the build and cost breakdown. And not just because I’m interested in building a backyard office some day, but because, well, how can you not love someone sharing things like this?
Interview with Doug McIlroy, born in 1932, in 2025. There are many things to love and be fascinated by here — the story of early Unix programs, anecdotes about Ken Thompson and Dennis Ritchie, stories from Bell Labs, the history of McIlroy’s invention of Unix pipes — but what stuck out to me was how this 93-year-old man talked about bit masks, and bit operations, and accumulators, and instructions and, well, … yes, I do know what he means, but he’s displaying an instinct with it that seems, frankly, foreign now and strange and I can’t help but wonder: in five, or ten, or twenty years, when I talk to somebody about how I programmed in Go and wrote a book about how to build an interpreter in a couple thousand lines of Go — will it also sound that strange to them?
Do not read this if you have a home network and are easily nerd-sniped: Fornax’s Guide To Ridiculously Fast Ethernet. I’m in Switzerland right now, far away from my home, but I read it yesterday evening in bed and I got anxious about setting up a 10GbE network at home. (All of this is to say, of course: read it!)
I really, really, really enjoyed the intro to this FLUX Review issue about writing in times of AI: Language evolves, truth-telling endures.
There’s been more investigation into the OpenAI & HuggingFace incident and, holy fucking shit man: the agents weren’t allowed to get the responses of HTTP requests, so one of the agents “used a publicly available HTTP testing service to construct a very long URL that contained an HTML page with inline JavaScript, essentially instructing a third-party screenshot service to render that URL which contained the HTML. The screenshot service’s browser executed the JavaScript embedded in the HTML page, which requested information from external APIs, and wrote the responses into the rendered page. When the screenshot service returned an image of the page, the [agent] recovered the information from that image by using optical character recognition or direct pixel decoding.” That’s from the OpenAI report.
Here’s Ryan Greenblatt, who was part of the investigation team, on how hard it was to make sense of the incident: “The difficulty of understanding incidents and overseeing AI agents appears to be growing faster than the rate at which more capable AIs help us with oversight and understanding. As in, AI capabilities (and propensities?) for achieving large, ambitious, and misaligned objectives are growing faster than our ability to understand what these agents are doing.”
And here’s Dwarkesh’s write-up of what happened: The Rise and Fall of Agent Civilizations. Incredible stuff.
Two years ago, you probably could’ve created a “best way to create thumbnails from video” tool and charged for it. A small little piece of software to do X, where X is creating thumbnails for videos. But nowadays? Brett had Amp build a custom, JIT tool inside an Orb to select frames for a thumbnail. Software to do X is no longer valuable when you can just do X.
A model that paints with JavaScript watercolour: “My friend Cameron and I trained a language model to make images by writing code, using reinforcement learning. The code is the artefact, and the code is editable.”


