Ask: Why Do Specs Matter NOW? The AI Moment
The Question
Specifications have existed since the 1970s. Why is SDD only becoming standard practice NOW, in 2025?
If specs were so good, why didn't everyone use them 20 years ago?
What Changed: Three Convergent Forces
1. AI got good enough to generate production code (2025+)
- Before Summer 2025: AI-generated code was often broken, unreliable
- 2025+: LLMs can generate working, tested code from clear specifications
2. Developers discovered specs save iteration time with AI agents
- Vague prompt → 5-10 iterations to get it right
- Clear spec → Working code on first or second try
- Time savings became obvious and measurable
3. AI agents are literal-minded (need specs more than humans do)
- Human developers: Can infer intent, ask clarifying questions, understand context
- AI agents: Take instructions literally, follow patterns, don't "read between the lines"
- Specifications provide the explicit detail AI agents need
The Timeline:
- Before 2025: AI-generated broken code → Specs weren't worth the effort
- 2025+: AI generates working code from specs → Specs became essential
Historical Context: Why Specs Failed Before
Understanding why previous specification approaches failed helps us appreciate why SDD succeeds now.
1970s: Formal Methods
Promise: Mathematically prove code is correct
Reality: Too rigid, only for critical systems (aerospace, nuclear)
Why it failed: Required PhD-level math, impractical for normal software
Lesson: Specs are powerful but need the right context
1980s: Design by Contract
Promise: Embed specs in code itself (pre/post conditions)
Reality: Only worked in Eiffel language, wasn't mainstream
Why it failed: Language-specific, not adopted widely
Lesson: Specs need separation from code
2000s: Model-Driven Development
Promise: Specs (UML models) → automatic code generation Reality: Tools created lock-in, models became outdated, specs and code diverged Lesson: Code generation from specs is hard; abstraction level matters
2010s: Agile Backlash
Promise: Minimize specs, maximize iteration Reality: Lost institutional knowledge, teams couldn't scale, documentation disappeared Lesson: No specs is also bad; balance is needed
2025+: SDD Emerges
Why NOW?:
- AI agents are powerful enough to generate correct code
- AI agents are literal-minded (NEED explicit specs)
- Specs became the interface between humans and AI
- Cost-benefit finally works: specs save time with AI
The math:
- Before: 2 hours vague prompt + 10 hours iteration = 12 hours
- Now: 3 hours spec + 30 mins iteration = 3.5 hours
- SDD wins for anything >4 hours of work
The Specific Insight: AI Agents Demand Clarity
Ask your companion:
Why do AI agents specifically benefit from specs? What's different about
how AI agents work compared to human colleagues?
Human colleagues can:
- Ask clarifying questions
- Use context and experience to infer intent
- Notice edge cases and flag them
- Work from sketches and diagrams
AI agents can:
- Follow explicit instructions precisely
- NOT infer your intent
- NEED unambiguous specifications
- Generate code from detailed descriptions
The Key Shift:
- Before AI: Specs were nice but not essential (humans could improvise)
- With AI: Specs became essential (AI can't improvise)
This is why SDD emerged now. AI made specs mandatory, not optional.
The MDD Lesson: Why Code Generation Failed Before
Model-Driven Development (MDD) promised automatic code generation in the 2000s. It mostly failed. Understanding why helps us see what makes SDD different.
MDD's Problems
- Abstraction mismatch: Models sat at awkward level (too detailed for managers, too vague for developers)
- Tool lock-in: Custom code generators created dependency on specific tools
- Incomplete models: Models didn't capture edge cases, so developers hand-edited generated code
- Divergence: Code and models went out of sync (which is source of truth?)
Why SDD Succeeds Where MDD Failed
- Natural language specs: More flexible than UML/DSL, less formal but more practical
- LLMs need no custom tools: Any LLM can generate code from natural language
- Less lock-in: Specs are markdown/prose, not proprietary format
- Faster feedback: Spec changes → regenerated code in minutes (not hours)
- Better models: 2024 LLMs understand nuance and edge cases better than 2004 code generators
The Market Validation: When Did SDD Emerge?
2025 Timeline shows rapid industry adoption:
- GitHub releases Spec-Kit (formal SDD framework)
- Anthropic integrates Spec-Kit Plus with Claude Code
- Google Gemini CLI adds spec support
- Multiple startups build spec-driven tools
- Industry calls 2025 "the year specs became essential"
Why Now?:
- ChatGPT (Nov 2022) created mainstream AI coding
- Developers experienced 10 iterations for simple features
- 2025: "Wait, what if we just wrote a clear spec?"
- Pattern discovered: Clear spec → correct code, first try
- Tools emerged to systematize this pattern
Your Personal Realization
Ask yourself:
When have I experienced this problem?
- Vague description → code that's wrong
- Had to iterate 5+ times to get it right
- Blamed the AI, but really I was being vague
When would a spec have helped?
Think of a recent project. How much time would you have saved with a clear spec upfront?
This isn't theoretical. This is your actual experience being addressed.
The Bigger Insight: Specifications Enable Parallelization
Ask your companion:
How do specs enable team parallelization? If my team could do more work
in parallel, what's the mechanism?
Your companion will explain:
"With clear specs, team members (or AI agents) can work independently on different features without constant communication.
Feature A spec: clearly defined interfaces Feature B spec: clearly defined interfaces
Developer A works on Feature A Developer B works on Feature B
They integrate at defined interfaces (no constant meetings needed)
Without specs: constant communication, bottlenecks, miscommunication With specs: async parallelization, clear boundaries, independent work"
This is why SDD is a scalability breakthrough, not just a quality improvement.
Key Realization
SDD isn't a new invention. Specifications have existed for decades.
What's new is the NECESSITY and the TOOLS.
- Necessity: AI agents need specs (humans can improvise; AI can't)
- Tools: Spec-Kit, Kiro, etc., make specs systematic (not ad-hoc)
- Timing: 2025 is the moment AI capability and spec tooling converged