The Economics of Software for One

AI lowers the cost of implementation. Building for yourself lowers the cost of figuring out what to build and makes software for a market of one practical.

One blue tailored suit hangs among a row of identical charcoal off-the-rack suits.

AI has made it much easier to produce working software. It hasn't made it easy to produce good software.

There is still a lot that goes into quality software. What belongs in the primary experience? What doesn't? What does intuitive UX look like? Every answer creates more decisions and more work.

I'm currently cobbling together my own meeting capture and notes system using local transcription. I didn't have to start from scratch. I adopted an open-source tool that uses local models, All Ears, and began extending it.

All Ears is a set of small tools for capture, transcription, cleanup, and summarization. They work through plain files, so I can combine them or replace parts to fit my workflow. Its browser extension detects calls in Google Meet, Zoom, and Teams, then transcribes them when the call ends. I still need a menu bar app for the parts of my workflow that happen outside the browser. Building that has been additional work.

The easier part is that I'm not trying to build software for everyone. I don't have to interview an arbitrary group of people and derive the shape of an experience for users I may not understand. I'm building for myself, so I already know most of the requirements and can tell when the result is wrong.

The advantage continues after the software is built. I know when it isn't working, and the agent can trace the path from the user's behavior through the data and into the code to explain why.

I built a small web app for my daughter to drill multiplication tables. It tracks her progress toward mastery and automatic recall. When it stopped showing her new facts, I asked the coding agent why and asked it to look at her usage data. It found that she was answering correctly but not quickly enough to meet the app's threshold for "mastery." That was preventing it from introducing additional facts. (As anyone with experience building software can tell you, the ability to point an agent at the codebase, analytics and data so it can debug a situation where things aren't working as they should is magical. I won't go back.)

My daughter is the only user. I know what she's trying to learn, can observe how she uses the app, and have the data to refine it around her.

Code generation lowers the cost of implementation. Proximity to the user lowers the cost of figuring out what to build. Conventional software has to generalize across a market. Bespoke software can be shaped around one person's exact problem, preferences, and data.

Subscribe to Field Notes

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe