The test of a work of art is, in the end, our affection for it, not our ability to explain why it is good.- Stanley Kubrick
The "No-Code" revolution has been coming for years, and I have been watching the shifting landscape of development. I’m still of the opinion that hand-crafted, artisanal code written by an expert will outperform AI-generated code. A hand-painted sign by an artist is more beautiful and performs better than a print-and-cut vinyl sign. Today, most signs are print-and-cut vinyl because it’s faster, cheaper, and gets the job done well enough. We have hit the point in development where the difference between hand-crafted code and generated-code doesn’t matter for a huge amount of development. Applications are going to be prompt-and-generate developed because it’s faster, cheaper, and gets the job done well enough.
I had an introductory subscription to a workout app I’ve been using the last few months and really enjoying, but my trial pricing was ending and the subscription was going to triple. The app didn’t seem very complex for personal use, so why not just build one? It’s been five years since I last built an iOS app and almost seven years since my last complex progressive web app. I know I could hand-build this app myself in a couple of weeks, but would I? No, I’d just pay the higher price. I set myself a challenge: use AI to build a functional workout app. I picked Gemini CLI simply because it has a free tier and this project was about cost savings.
I spent the first hour in a prompting conversation with Gemini around what I wanted to build and how I wanted it to be structured. I came in with enough knowledge to have opinions about the technology stack, the user interface, and the structure of the routine I wanted to build. I’d brag that my years of writing product definitions, technical specs, etc., made me excel at this process. But did it? It’s possible an amateur spending more time working through a conversational planning model would come to nearly the same outcome.
After an hour, the plan looked good, my markdown spec looked honed, and I let Gemini rip. I watched it set up structure, build packages, write code, etc. Around 70% quota use for the day and I had a working application running on my local machine. I could see a dozen refinements I wanted to make to how the app worked, but it worked. I used my final bit of quota, under Gemini’s suggestion, to push the app live on GitHub Pages (For free! Thanks Microsoft).
Four hours of work. Zero code written. Zero dollars spent. A perfectly reasonable minimum viable product for free. I’ve been using the app every day and pushing through my quota to make refinements, but after a week, I’m getting to the end of the changes I want to make.
So what does that mean for all of our jobs as product managers, engineers, QA testers, etc.? Does it mean fewer jobs for us all? I would like to think it means MORE opportunity: more people needed to define and test applications, more people capable of pushing development forward, more people to orchestrate the revolution.
We are also in the early days where a lot of the actual costs are being subsidized by venture capital. No one is profitable. It’s a little like when Uber was half the price of a taxi. It wasn’t because Uber cost half as much; it was because VCs were paying the other half. Most estimates show that the frontier models are spending 25x what people and companies are paying them.
Just like it’s always been, employees run the gamut from generating value to detracting from it. AI is making our good employees able to generate even more value, but it makes our moderate or bad employees incredibly capable of generating huge volumes of work at great expense that provide neutral to negative value. Your employee costs are no salary + benefits + tokens. A mediocre employee equipped with AI can be very expensive very fast if you don’t recognize the slop.
Let’s see where we are in five years when the dust settles.
