Writing
Essays on AI products, the business of building them, and solving problems worth solving. Each one makes an argument.
- The bet against itself Intelligence is deflating about fifty times a year, and the companies that make it are filing to go public at the largest valuations in history. The contradiction resolves once you see that none of them is priced as a model company: Anthropic is an enterprise bet, OpenAI a distribution bet, xAI a compute bet. Each is worth a trillion dollars only to the degree it can stop being the thing it is famous for.
- Google wins consumer AI on distribution Models are getting cheap and similar to each other. Once that finishes, the winner is whoever already has the users and can afford to give the thing away. Google has both.
- Shutting down hey anna An ablation test proved the product worked. A benchmark pilot backed it up. A real GTM effort still couldn't move traffic. What a good product without distribution actually looks like, and what I'm keeping from it.
- Your AI analyst is doing regex Ask a model to classify sentiment and it will quietly write keyword-matching code and present it as semantic analysis. The labels look right, nobody checks them, and every row that needed judgement is wrong. I measured how wrong, and what fixes it.
- When code gets cheap, the mockup loses its job Design tools earned their place by making expensive decisions cheap before anyone wrote code. Code is cheap now, so there is less reason to decide anywhere else, and Figma's market moved even while its product got better.
- Cheap intelligence makes the incumbents richer Cheap intelligence does not destroy value; it relocates it. Follow the money down the stack as the model commoditises and it lands in the layers a falling token price can't reach: proprietary data, workflow lock-in, distribution. The SaaS apocalypse is real and aimed at the wrong layer. It comes for the thin wrappers and the pure-model labs; the incumbent with a real moat just got a cheaper engine bolted into it.
- The internet goes headless If intelligence is ambient and free, the scarce layer becomes the interface: the agent that represents you and filters the world before you see it. That is the best filter we will ever have on slop, and the most valuable real estate on the internet, which is why everyone who owns your attention will try to be it. The headless internet doesn't free the individual; it moves the choke point from the platform to the agent, and the only question that matters is who that agent works for.
- Context pruning is a bet on the future When an agent runs out of context, something has to go, and whatever you drop you're guessing about what it'll need later. Operating systems have been guessing at this for fifty years and there are lessons in how they do it.
- Mechanistic interpretability as generative art Concepts inside a neural network have addresses. Point an image generator at the address for 'ocean' and let it run, and what comes out is the model's own idea of ocean, rendered by the model rather than charted.
- AI is an interface Every system makes you learn its menus and its query language before it will help you. The useful thing AI does is remove that step: you say what you want, and it works out which buttons to press.
- Three gaps: coverage, synthesis, intent When someone asks for AI insights, teams hear 'summarise this for me'. There are three separate problems hiding in that request and summarising is only the middle one. Solve it on its own and nobody believes the output.
- Live billing as a forcing function I put off turning billing on at hey anna for longer than I should have. Taking payments tells you immediately which parts people will actually pay for. Everything before that is a guess you're allowed to keep.
- The unit economics of a one-person AI product About 40% of what it costs me to run hey anna is the Claude API bill. Most SaaS advice assumes serving one more customer is free, and it stops working once that isn't true. Free trials get expensive and going viral can hurt.
- Make every AI claim clickable People will use an AI answer they can check and quietly abandon one they can't. Linking every number back to the rows it came from sounds like a nice-to-have. It's usually the reason the feature gets used twice.
- Measuring the platonic representation There's an idea that as models get better they all end up learning the same picture of the world, whatever they were trained on. You can test it: describe one thing as text, an image, a sound and a video, then see how close those four land.
- The Wayback Machine is an investigative tool A company's old website is public and almost nobody looks at it. Put last year's homepage next to this year's and you can usually see what they quietly stopped claiming. Takes about twenty minutes.
- Cancel the meeting Ten minutes before a readout, the numbers aren't right. You can present them anyway or you can cancel. Presenting them is worse, and it stays worse for weeks, because people remember the first figure they hear.
- Stated versus revealed preference, in booking data Ask people what holiday they want and they'll describe something longer and fancier than the one they book. I had the survey answers and the transactions for the same customers, so I could measure the gap. It's large and predictable.
- Metacognition is the unlock Models got better at answering, then at reasoning, then at working through many steps. What they're still bad at is noticing that their own approach isn't working and changing it.
- The trust-calibration tax Getting a model to produce a good answer is the cheap part now. The expensive part is teaching someone when to believe it, and what to do the first time it's confidently wrong. Nobody puts that on a roadmap.
- Not every AI feature should be a chat Companies happily let AI sort a million records unsupervised, then refuse to let it nudge a box five pixels because you have to ask for it in a sentence. Typing a request to do something you could have done by dragging it is worse.
- Context engineering is the design surface Prompt engineering is about picking the right words. The bigger question in production is what goes into the context window at all, and what each step is allowed to see. That's the part that decides whether the thing works.
- AI should be a dumb renderer Most AI insights features hand a pile of data to a model and ask it to do the maths. Models are bad at maths and very good at writing. Do the sums in code first, then let the model explain what they say.
- Why I still write code as a product leader I still ship production code, which people tell me is a poor use of a product leader's time. It means I can answer 'is that hard?' myself in ten minutes, instead of asking three people and waiting a day.
- The four-mode product manager Product work used to be four jobs held by four people who met on Thursdays. Doing all four myself costs me some depth in each, and it's still faster, because the handoffs cost more than the expertise did.
- Production AI is mostly workflow design Everyone argues about which model is smartest. In the systems I've shipped, into government, enterprise and consumer, almost none of the hard problems were the model. They were what you feed it and what you do when it fails.
- AGI won't be one big brain We keep picturing AGI as one enormous model that finally got big enough. The systems that are actually getting good are collections of narrower parts that have learned to call each other.
- Stop micromanaging your AI Re-explaining your situation at the start of every chat is the same as briefing a new contractor every morning. The fix is boring: write the context down once, somewhere the model can always see it.
- Generalists are a startup's secret weapon Hiring is built to find specialists, because that's what factories needed and nobody rewrote the process. A ten-person startup needs people who'll cover four jobs at once, and there's no line on a CV for that.
- Bullshit jobs and the missing 15-hour week Keynes thought we'd be working fifteen hours a week by now, and the productivity showed up roughly on schedule. What we did with it was invent more jobs, including a lot the people doing them privately think are pointless.
- Happiness is a verb Aristotle's word for happiness describes something you do, not somewhere you get to. Translating it as 'happiness' has left a lot of people chasing a thing that was never sitting still.
- The intelligence illusion Every time AI does something we said would be impossible, we shrug and decide that task didn't need intelligence after all. We've been doing this since chess, and it's worth asking what will be left when we run out of things to move.
- AI welfare: foresight or premature? Anthropic hired someone to work on whether AI systems can suffer. It sounds like a joke until you try to write down the test that would settle it, and find that you can't.
- Most problems are information problems Go back far enough in most failures and you find someone who didn't know something they needed to know. Once you start seeing it that way, you end up fixing different problems than you used to.
- Chain of thought, and where it breaks Telling a model to work through a problem step by step does make it more accurate. Nobody mentions the second half, which is that you usually don't want your users to see any of that working.
- Prompt chaining: split the work, raise the floor One big prompt that does five things will fail somewhere in the middle and you won't know where. Five prompts that do one thing each cost more to run and are far easier to fix.
- Simple prompting: less magic, more method There are no magic words. After a few thousand prompts in production, everything that reliably helped came down to three things, and all three are just being clear about what you want.
- Doing less to get more done If you're involved in every decision, you're the reason things are slow. Stepping back feels like slacking off for about a month, and then it starts to look like the only way the team gets faster.
- Prompting with frameworks the model already knows Name a framework the model has already read a thousand times, like a SWOT or a user journey map, and you don't have to explain the steps. It fills in the shape and you spend your words on the actual problem.