From vibe coding to prompt coding: my analysis of a lightning-fast transition
It’s fascinating to see how quickly vibe coding went from being an exciting novelty to the laughingstock of the development community. We’re talking about a handful of weeks, a few months at most. This approach of “coding by feel” with AI assistance now faces numerous criticisms and limitations. It has even become a subject of mockery in our field. This rapid transformation is part of a broader evolution of the developer profession.
Unlock the full article
Drop your email below and I’ll send you the rest right away.
It’s fascinating to see how quickly vibe coding went from being an exciting novelty to the laughingstock of the development community. We’re talking about a handful of weeks, a few months at most. This approach of “coding by feel” with AI assistance now faces numerous criticisms and limitations. It has even become a subject of mockery in our field. This rapid transformation is part of a broader evolution of the developer profession.
And its replacement is already here: prompt coding, or more precisely the specification-driven approach. This concept isn’t new - it has existed for many years - but it’s making a strong comeback thanks to advances in AI agents and tools like GitHub Speckit. These tools now enable us to generate large amounts of high-quality documentation, then establish a development plan that can be executed by AI agents, humans, or both.
My analysis of vibe coding’s limitations
The main criticism I have of vibe coding is its fundamentally random and poorly controlled nature. I’ve experimented with this approach, and I quickly identified its flaws: the production chain lacks consistency and predictability.
Don’t get me wrong, vibe coding is perfect for certain use cases. When I want to quickly generate an application draft or create a POC in a few minutes, it’s the ideal tool. I get something functional very quickly, I can test my idea, validate a concept.
But as soon as I tackle more complex applications or professional use cases requiring robustness, vibe coding shows its limits. The random aspect becomes problematic: I can’t predict the result with certainty, quality varies from one generation to another, and maintenance becomes a nightmare. It’s like building a house without blueprints: it might stand up, but I have no guarantee of solidity.
What vibe coding taught us
Paradoxically, I think vibe coding has been an excellent revealer. It highlighted something important: we needed a better approach to using AI in development.
By exposing its own limitations, vibe coding brought the spec-driven approach back into fashion. It showed us that we couldn’t simply “prompt by feel” and expect to consistently obtain professional results. This collective realization was quick and brutal, but necessary.
Vibe coding thus served as a catalyst. It created enthusiasm for AI-assisted development, then forced the community to ask the right questions: how do we structure this collaboration with AI? How do we obtain predictable and maintainable results?
Why the spec-driven approach is taking over
The specification-driven approach is not new to our profession. It has existed for decades. But I’ve always seen it as relatively rare in practice, for a simple reason: it required a considerable time investment upfront. Writing exhaustive documentation before producing a single line of code was perceived as a hindrance, a slowdown in the process.
This is where LLMs revolutionize things. What used to take me hours, even days, I can now generate at lightning speed. AI agents are capable of producing detailed, coherent, and quality specifications in minutes. The paradigm completely shifts: what was identified as a hindrance becomes an accelerator.
My vision is that we’re witnessing a complete reversal. With a solid specification generated quickly by AI, I drastically limit the risks of error. I reduce the number of iterations needed before arriving at a satisfactory product. The specification phase is no longer a cost, it’s an investment that pays off immediately.
I’m already observing this transformation in my projects: an hour spent refining specs with AI saves me days of chaotic development and refactoring. The quality of the final deliverable is incomparably superior.
My vision for the future of vibe coding
So, is this the end of vibe coding? I don’t think so. I even think it will endure, and I have my reasons for defending it in certain contexts.
Vibe coding remains invaluable for anyone who wants to quickly test an idea. I myself continue to use it for this purpose. When I have a concept in mind in the evening and want to see it take shape in 30 minutes, I don’t need a detailed spec. I just want to materialize this idea, see if it holds up visually and functionally.
I see vibe coding as an idea accelerator, not as a production method. It’s my playground for rapid exploration, for disposable prototyping, for weekend experiments. In this context, its random aspect isn’t a problem, it’s sometimes even a source of interesting surprises.
The nuance is important: I don’t build serious products with vibe coding, but I use it to validate hypotheses before switching to spec-driven mode for the real implementation.
What I take away from this
This lightning-fast transition from vibe coding to the specification-driven approach teaches us several things about the evolution of our profession with AI.
First, the speed of adoption and abandonment of practices has considerably accelerated. We’re in an intense experimentation phase where best practices are being drawn in real time. I’ve explored this transformation in more detail in my article on the evolution of jobs with AI.
Second, the fundamentals of software development remain valid. The spec-driven approach isn’t new, it was just too costly. AI doesn’t change the principles, it finally makes them applicable at scale.
Third, I notice that we need to develop fine discernment about using AI tools. Not everything is worth taking, and each approach has its optimal context of use. Vibe coding for exploration, spec-driven for production.
My conviction is that we’re entering an era where specification quality will become the main differentiating factor. Those who know how to collaborate effectively with AI to produce solid specs will have a considerable advantage. Development becomes less about typing speed and more about clarity of thought and structuring.