Many in the industry have been captivated by the idea of “vibe coding” – a software development process, popularized by Andrej Karpathy, that relies heavily on artificial intelligence (AI) assistance. Advocates of “vibe coding” say that it democratizes software development by enabling non-technical people to build applications without software engineering skills.
The allure of rubberducking with a duck that talks back is fascinating. However, this way of “getting things done” quickly and intuitively is a double-edged sword. For those that have had to live outside of software development teams, it’s invigorating and empowering. For those with actual experience building software, it’s curious, but at best, frustrating and, at times, laughable.
While there are anecdotes of how AI foretells the end of the software developer, we also see anecdotes that show we’re just not there yet. Tales of bad code, security vulnerabilities, and just a basic lack of discipline result in productivity actually dropping for those that do this job professionally. Even Karpathy said,
“It’s not too bad for throwaway weekend projects, but still quite amusing. I’m building a project or webapp, but it’s not really coding – I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works.” [source]
In this article, we want to look at one facet of this debate – the fundamental process involved in creating and maintaining software. If an approach like “vibe coding” is truly going to threaten the livelihood of those that currently do this work professionally, let’s take a look at whether this AI-driven simplicity is an actual threat to the formal processes that have evolved over the decades of the profession existing.
TL;DR: We believe that AI doesn’t replace our process; it exposes our need for a good one.
Let’s dig in.
The Journey from Personal “Vibe” to Formal Process
The “vibe coder” is a perfect microcosm for a startup’s journey toward process maturity. At the outset, a non-technical founder with a brilliant idea and a tool like an AI coding assistant can seem unstoppable. They “vibe” their way to a Minimum Viable Product (MVP), using natural language prompts to build a user interface, generate boilerplate code, and connect to a database. They are the epitome of “getting things done” with minimal overhead, relying on intuition and the raw power of the tool.
This is the startup equivalent of throwing code into a repository with a basic build process, and then hand-holding a deployment to an environment that they can demo it to potential customers. It works for a while—until it doesn’t. The moment the demo needs to evolve into a production-ready application, the intuitive “vibe” breaks down. The code, brilliant as it may have been, is undocumented, fragile, and difficult to maintain. The very simplicity that made it possible to build so quickly becomes a liability.
As we have explored this idea, we came across a YouTube video that encapsulates so much about this very topic that it provided a perfect example for this discussion. The video covers a person (ok, we acknowledge that he is a 5x founder with experience rooted in Computer Science) exemplifying the “vibes”, and the host’s amazement at his process only serving to encourage the mythology of the “vibe coder”. The video, “A 3-step AI coding workflow for solo founders”, claims that the speaker is “turning ‘vibe coding’ into a structured and scalable approach that can replace full engineering teams.” No offence to the host or the speaker, he has some clever ideas, but, yes, this will do nicely.
The speaker takes us on a journey into rapidly prototyping applications. Initial progress is made, but as the opening states, mistakes are made, specifically, one that the speaker claims everyone makes (and no experienced software team would disagree with).
“I think the biggest mistake that I do, that everyone does, is they try to rush through the context, where you just don’t have the patience to tell the AI what it actually needs to know to solve your problem.”
Ah yes – vague requirements.
In order to address this mistake, the speaker shares a clever idea – a set of refined prompts that help him (an experienced Product Owner) develop a Product Requirements Document (PRD), which informs a prompt that produces a set of technical tasks that a developer can then implement, or in his case, an AI tool can implement for him. The parallels to what a professional, human software development team goes through is almost comedy by the end of the video. In essence, the speaker was forced to create a process to stabilize their work and the outcomes they achieved, just as a professional team should.
This experience highlights a profound truth: the problems that a team of software professionals solve daily—vague requirements, architecture and system design, human-computer interaction, version control, continuous integration, quality assurance, documentation, and much more—are not arbitrary artifacts of a bygone era. They are the direct result of a continuous, half-century-plus-long effort to make software delivery predictable, reliable, and scalable. AI, by allowing anyone to jump to the “building” part, simply accelerates the moment of reckoning when these fundamental processes become indispensable.
Let’s peel the onion a little further.
What’s Old is New Again. Again.
The Illusion of Effortlessness and the Lack of a Shared Language
The initial “dream come true” moment for the “vibe coder” is born from natural language prompts, where the coder assumes the AI understands their high-level intent. This feels effortless and liberating, but it’s a dangerous illusion. Just because the AI can respond in human language doesn’t mean it shares the same contextual understanding or “tacit knowledge” an experienced software developer might provide. The AI might deliver “a login page,” but it won’t intuit the need for enterprise-grade security or accessibility standards unless explicitly asked. The result is a functional artifact that is ultimately fragile and lacks professional rigor.
Similarly, new or unpracticed human teams may communicate in the same language and believe they are all on the same page. While this can work for simple tasks, it often breaks down as complexity increases, creating an environment where everyone operates on their own assumptions. For example, while trying to build a new website, one person may start on a front-end designed for mobile-only users while the other creates a back-end that assumes a traditional desktop interface. In both cases, the lack of a shared language of process, quality, and intent can lead to a fragile, or worse, incompatible outcome.
The Inevitable “Maintenance Sinkhole” and the Need for a Retrospective
The rapid, unchecked output of the AI can lead to what experienced software developers call “spaghetti code.” The problems that a “vibe coder” encounters with their AI-generated code, such as a difficulty debugging complex issues and a lack of basic professional rigor, are often harder to fix than they were to create in the first place.
This directly mirrors the experience of a human team that fails to perform regular retrospectives or peer reviews. Without a formal process to pause, reflect, and inspect their work, the team accumulates “technical debt” in the code and “process debt” in how they are functioning as a team.. Unaddressed communication breakdowns, unclear dependencies, and ad-hoc solutions become a “maintenance sinkhole” that consumes more and more time. The problems the vibe coder encounters with their “code” are a perfect analogy for the problems a team encounters with their “process.”
The Shift from Uncontrolled Creation to Continuous Improvement
The successful “vibe coder” eventually learns that they can’t just blindly accept all changes suggested by the AI. They must develop a disciplined, step-by-step approach to prompting and validation. You’ve probably heard of this by a fancier name – “human-in-the-loop”. The AI becomes a tool that augments the coder’s process, rather than a replacement for it.
For human teams, this is the essence of continuous process improvement. A team that once operated in an ad-hoc fashion learns to create a “detailed list of steps” through a formal process. They move from “just do it” to “how can we do this better?” The team begins to use tools and practices (like stand-ups, retrospectives, and formal planning) to ensure quality, manage complexity, and prevent future problems. This mirrors the vibe coder’s journey to impose discipline on their creative process, and their rubber duck.
From Personal Prompt Library to a Shared Knowledge Base
The “vibe coder” may start with a personal collection of refined prompts. This is their collection of “artifacts” that hold their private process. Over time, they feel the need to set up some custom GPTs with these instructions, and then later to a full liberation from their personal silo to a shared, standardized information model that serves as a “single source of truth.” This mirrors the evolution of human teams.
By formalizing and documenting their individual processes, combining them with others and continuously refining them as a team, human teams “uncover their better ways” and produce consistent results of acceptable quality. The transition from a personal “artifact” to a shared “information model” is what allows an organization to truly scale and achieve predictable outcomes, independent of any (yet leveraging every) single individual’s “vibe.”
The Path to Maturity: From Vibe to Strategy
The “vibe coder”’s journey from intuitive creation to a disciplined, process-driven workflow teaches a profound lesson: a lack of process is not a sign of agility; it’s a pre-existing condition waiting to be exposed. The power of an AI assistant isn’t that it eliminates the need for process, but that it accelerates the moment of reckoning when those processes become indispensable.
This reframes the entire conversation around AI adoption. It’s not about replacing human teams; it’s about using AI as a catalyst for process maturity. Product managers and executives often “geek out” over what is essentially the same continuous process improvement that high-performing teams have been doing for decades in their retrospectives. They see the AI’s struggle with vague prompts and inconsistent output as a new problem, when in fact, it’s simply highlighting a long-standing gap in the organization’s process.
Without a clear, defined process, AI’s output can be chaotic or inconsistent, revealing a pre-existing problem with a lack of structure. The most effective AI adoption for software development is therefore grounded in a process maturity context. It should be strategic, address real needs, and multiply the effectiveness of existing well-aligned practices.
By forcing us to be more explicit in our instructions, and by failing spectacularly when we are not, AI is teaching us the value of a shared, transparent, and continuously improving process.
Wrapping It All Up: From Artifact to Information
The traditional emphasis on artifacts in software development—the static requirements document, the isolated design sketch, the final piece of code—has always created inefficiency. We treat these outputs as separate, static things to be managed, when in reality, they are all just different forms of “interconnected instructions.” AI, by its very nature, helps us see this with stunning clarity by being a catalyst for identifying what information is truly essential and what can be derived from a single source of truth.
This leads us to a new, fundamental question that could shape how we build software in the years to come: If all of our outputs—from the prompt chain to the final code—are just different forms of interconnected instructions, what does that mean for how we work? What if we’re not building software, but instead, we’re simply documenting it?
We’ll explore this next in Part 2: Software Development is ALL Documentation.
Before You Go…
The journey from “vibe coding” to a disciplined process is a powerful one. It’s a reminder that true agility isn’t about the absence of process, but about having a lean, adaptable one that evolves with your needs.
If this article has resonated with you—if you’re a leader seeing inconsistent outputs from your teams, a product manager struggling with vague requirements, or an engineer feeling the weight of technical debt—you’re not alone. You’re simply at the moment of reckoning, and AI can be your catalyst for change.
We specialize in helping teams and organizations “uncover their better ways” to deliver products and services. Through our low-risk, high-value Agile + AI Readiness Assessment we analyze your current processes, propose high-impact pilot use cases tailored to your needs, and help you strategically integrate AI into your workflow.
Ready to move from chaos to clarity? Let’s talk about how to make AI a strategic advantage, not just another tool.

