AI

Stop Blaming the Model: Why Your AI Coding Agent Is Failing

Julián Deangelis argues that ambiguity, not intelligence, is the primary bottleneck in AI-assisted development.

··4 min read
Stop Blaming the Model: Why Your AI Coding Agent Is Failing

We have spent the last two years in a state of perpetual anticipation. Every time an AI coding agent stalls out on a basic API integration or hallucinates a library that does not exist, the collective response from the developer community is usually the same. We tell ourselves the models are not quite there yet. We look toward the next iteration of Claude or the eventual release of GPT-5 as the magic fix that will finally make autonomous coding a reality.

But what if the problem is not the engine? What if the problem is the driver?

Julián Deangelis recently threw a wrench into this narrative with a proposal that has resonated deeply across the industry. His argument, which racked up over 194,000 views in just a few days, suggests that AI agent failure is rarely a result of inherent model limitations. Instead, agents fail because they are being fed ambiguous, low-quality instructions. He calls his solution Spec-Driven Development (SDD). It is a methodology that favors old-school engineering rigor over the current trend of prompt-and-pray development.

The Myth of the Magic AI

In my work as an AI researcher, I frequently see a massive gap between what a model can do and what a user actually allows it to do. Modern Large Language Models (LLMs) are essentially probabilistic engines. When you give them a vague instruction like "make the UI look better," you are effectively increasing the entropy of the output. The model has to guess what "better" means across a massive range of possibilities. More often than not, it guesses wrong.

Deangelis argues that we are currently blaming the model for our own lack of precision. The viral success of his thesis suggests a growing frustration with the current state of AI tools. Developers are realizing that simply having a more powerful model does not solve the fundamental issue of intent. If you cannot describe exactly what you want, a smarter model will just give you a more sophisticated version of the wrong thing.

The Four Pillars of Spec-Driven Development

The Spec-Driven Development framework is designed to bridge the gap between human intent and machine implementation. It moves away from the idea of the AI as a creative partner and treats it more like a high-speed execution engine that requires strict boundaries.

The methodology consists of four distinct stages.

First, you must specify the desired outcome. This is not just a sentence or two, but a detailed definition of what the final product should do. Second, you develop a technical implementation plan. This is where the human developer acts as the architect, deciding on the stack, the data flow, and the logic before a single line of code is written.

Third, you decompose the plan into actionable tasks. This is perhaps the most critical step for current AI agents because most models struggle with long-horizon reasoning. By breaking a project into micro-tasks, you stay within the model's most effective reasoning window. Finally, you implement the tasks incrementally. You do not ask the agent to build the whole app at once. You feed it one task, verify the output, and move to the next.

Shifting the Bottleneck

This approach represents a significant shift from model-first thinking to workflow-first thinking. In the research lab, we talk a lot about inference-time compute and how we can make models think harder before they speak. Spec-Driven Development is essentially a way for humans to provide that reasoning structure externally.

By adopting this framework, developers can extract significantly higher performance from the models we already have. You do not need a future super-intelligence to build complex features today if you are willing to provide the architectural guardrails. The bottleneck has shifted from the silicon to the specification.

This also changes the role of the developer. We are moving away from being the ones who manually type out syntax and moving toward being system architects. It requires a different set of skills. You need to be able to visualize the entire system and communicate its requirements with mathematical precision. If you can do that, the AI becomes a force multiplier rather than a source of constant frustration.

A Reality Check for the SDD Framework

While the logic behind Spec-Driven Development is sound, it is important to acknowledge that it is still an unverified methodology. It represents a perspective from the field rather than empirical data from a controlled study.

There is also the question of friction. Does this framework add too much overhead to the development process? For a simple script, writing a full specification and a four-step plan might feel like overkill. However, for production-grade software, the trade-off seems clear. The time spent writing a spec is significantly less than the time spent debugging a hallucinated mess created by a vague prompt. The discipline required for SDD is a return to traditional software engineering values where planning was just as important as execution.

Ultimately, the rise of Spec-Driven Development tells us something important about our future with AI. If we can achieve production-grade code today simply by changing how we talk to the machines, the focus of the next few years might not be on making models smarter. It might be on making humans better at directing them. The future of programming may not be defined by the models we use, but by our ability to act as precise technical architects for the machines we direct.

#AI Coding Agents#Software Development#Artificial Intelligence#AI Productivity#Coding Tools