Bespoke Software
Roberto Selbach got me thinking about the future of consumer software. Software is becoming a commodity. When you go from taking a team of skilled professionals thousands of man-hours to make an application to a layman being able to make the same application over the course of a single conversation, the calculus changes. I could imagine a world where the idea of downloading an “app” is a thing of the past. A world where data is made available via network-exposed APIs and your interface to that data is bespoke, made just for you the way you want it today.
We’re not there yet. Today’s AI tools can’t recreate a professional quality app over the course of a conversation. But, humor me for a minute, let’s pretend they could. We still wouldn’t be in the world I described four sentences ago. What’s preventing that?
- Most people don’t want to think about what UI they should use to do a thing, they just want to do the thing! They want a tried and tested approach to doing the thing. They definitely don’t want to have to go through a round of tinkering before they do the thing.
- Not all data is publicly available. Your mom’s Facebook profile is stored on Facebook’s servers, and they have a vested interest in getting you to use their UI, not the one your AI assistant whipped up for you ten minutes ago, to look at it. They want to show you ads and optimize the UI to nudge you towards using the app the way they want you to use it.
- Maintenance. Every line you vibe code is maintenance burden. When I open the McDonald’s app and make an order, thousands of external API calls are orchestrated to provide me that experience. I hope that McDonald’s has a team of engineers working very hard to make sure that when I open that app for the first time in 6 months, it has been updated so that every API call succeeds and I can receive my burger. An AI assistant making your software for you would also have to keep it updates. Then add security patches, regulatory changes, edge cases, etc.
- I like to see innovation. I despise advertising in general and consider it a blight upon society, but it has a very economically useful effect which is diffusing innovation through society. Centrally managed software (i.e. the current model) has a similar effect: new interfaces and algorithms are “pushed” out to users, rather than requiring them to opt-in. We could potentially rely on assistants to incorporate the newest advances in their bespoke software, but if you’ve ever seen the reaction people have to a minor UI update in an app they use…
- omegastick