Code that is written by AI (generated by LLMs) has had a bad reputationβit has bugs, is unreliable. And vibe-coded software has been thought to be even worse: it is felt to be unusable slop. But while AI coding does have drawbacks, it can be used to create high-quality software.
When I first started trying to use AI, I ended up with some pretty terrible bugs from vibe coding. But I decided to move to spec-driven development where an LLM generates code from a carefully-maintained specification file. This ended up being more reliable (and also cheaper).
β’ With AI, I improved the quality of my program, and also its performance.
β’ I made the code easier to maintain, as I could "offload" some of the cognitive effort.
β’ Spec-driven AI-assisted coding, done with care and thought by someone who knows what they are doing, can be used to create or improve high-quality code.