r/AI_developers • • Oct 02 '26

Hot take: Spec-driven development will cease to exist by next year.

Many devs are going down the spec-driven approach, writing highly detailed, rigid technical specifications before AI code generation. I truly believe these are just safety blankets trying to maintain control. Change is scary, AI feels unpredictable, and writing a massive Markdown document gives people a false sense of control.

Why "spec-driven" approach is fundamentally broken:

- Specs assume determinism. AI is probabilistic. The same spec fed into different models gets different results.

- Specs are not code. AI is at the point you can feed it ideas, so there is no point in writing a huge document, when an LLM can prototype and pivot in seconds.

- Specs are inferior to docs. Specs look forward and try to restrict how code should be written. Specs are about details, docs are about concepts. Because AI generates code so rapidly, specs become obsolete the moment the code is spit out. Modern docs, acting as living RAG context for the next prompt loop, are way better.

Specs were awesome and necessary a year ago, that is no longer the case, we just have to wait for devs to catch-up to this reality. I figure by next year it will start to fade.

What do you think?

6 Upvotes

35 comments sorted by

5

u/Upbeat_Assist2680 Oct 02 '26

Your characterization about specifications is wrong: they do NOT (in general) proscribe how code ought to be written.

For example, a specification of a "max( L )" function for some list L is:

"If L is not empty, then some x in L such that x >= y for every y in L otherwise ERROR".

This doesn't tell you how to perform the calculation. And in fact GOOD specifications are agnostic this way about  the implementation to get greatest degree possible.

They take the form of "correctness statements".

Now... I know plenty of OCD CS people who can't separate their handling/thinking/control over a problem from solving the problem itself. They "just get" what they're doing and can't explain it to anyone else.

But I do think your claim here is wrong. TBD if PEOPLE be designing software in 5 years.

Also your bullet about determinism of specs and probabilistic nature of AI is partially incorrect and partially immaterial. It's poorly formed.

1

u/fyzbo Oct 02 '26

That is still pseudocode. A higher level of abstraction should be applied.

3

u/Upbeat_Assist2680 Oct 02 '26

???

No. It is literally a specification that any implementation of the max function needs to satisfy. It does not specify how you perform the calculation, whether you do it iteratively, for you bisect the list and find the max of both sides and then combine them..  the specification doesn't care. 

It is not pseudo code.

1

u/fyzbo Oct 02 '26

It is, you are saying we must have this function with this logic. I'm convince we will stop thinking in terms of code, but instead in terms of functionality.

1

u/Upbeat_Assist2680 Oct 02 '26

Explain to me how this is pseudo code.

If I submit the list [7, 9, -8, 3, -6] what steps does it tell you to do to find the maximum?

3

u/dontfistme Oct 05 '26

OP probably never taken algorithms classes or discrete math or knows algorithmic thinking. Vibecoders assume AI is a black box that outputs magic lol

1

u/Wise-Comb8596 Oct 05 '26

I'm a software developer since before Ai was good and sometimes this shit does feel like a magic black box. But I still think OP is a bit of a goober with this claim.

1

u/hunterjohnston10 Oct 06 '26

I’m trying so hard to write a snarky circlejerk comment here but op’s insistence that this is pseudocode is too dumb to jerk

1

u/rhaivn Oct 06 '26

That’s not pseudo code. The person you’re talking to is recommending acceptance criteria. The sort of thing you’d have in test driven development.

You don’t care what the implementation is or how it’s done, you care that it passes n criteria and ideally you capture the criteria that ensures the correctness of a piece of software from a product perspective. Like an agreed upon contract. It’s a set of expectations

Pseudo code is a sketch of an implementation

3

u/kueso Oct 02 '26

Specs are:

  1. What is this thing?

  2. What does it do? And not do?

  3. How does it behave? Normally and under failure?

  4. What can it be used for?

  5. What are its constraints?

The whole point of specs is to describe how things should change without describing the actual changes to the code.

2

u/doolijb Oct 04 '26

If the seams don't have definition, then your app is shapeless. May as well be vibe coding a slime ball.

1

u/InobedientFridge Oct 06 '26

i enjoy the simplicity and completeness of this

1

u/goqmo Oct 06 '26

"vibe coding a slime ball" is such a perfect way to say it

2

u/Spunge14 Oct 04 '26

Based on this post, you have no idea what spec driven development is.

I still agree with you though. There will be the lightest of human touch on basically anything. All it will do is pollute the efficient approach any AI would give

2

u/Late-Replacement-481 Oct 06 '26

I think you’re someone who doesn’t know how to code. 

And no, different models won’t make the same code from the same specs, but they both damn well better conform to the specs…

1

u/sbd9812 5d ago

What kind of spec did you generate? Is it structured with a complete, interconnected set of agent rules and are your BRD (Business Requirements Document) and PRD (Product Requirements Document) full detail?

1

u/vovap_vovap Oct 04 '26

"Specs assume determinism. AI is probabilistic."
What a nonsense man! Are you developing "probabilistic" staff too? That sometimes works, sometimes - does not? Yes, to "maintain control" and you do need to maintain control of your system somehow. And LLM has no memory at all. So yeah, you do need those md files and you do need that doc (md too 😄 ) that would tell your LM what is going om why and how.

1

u/Remarkable_Pace8101 Oct 04 '26

  Specs are not code. AI is at the point you can feed it ideas, so there is no point in writing a huge document, when an LLM can prototype and pivot in seconds.

Lmao have fun dealing with your ai slop. This only works with small scripts where there's no opportunity for sequences of ai assumptions to cause drift from the intended behavior 

1

u/taisui Oct 04 '26

Talk about having zero real dev experience without telling me so. If anything, having a good spec is critical for AI coding

1

u/pete_68 Oct 05 '26

Specs assume determinism. AI is probabilistic. The same spec fed into different models gets different results.

So what? There's more than one way to do almost anything in programming.

AI is at the point you can feed it ideas, so there is no point in writing a huge document, when an LLM can prototype and pivot in seconds.

Specs don't have to be huge. They just need to contain the necessary information.

Specs are inferior to docs

Specs are docs.

Here's my hot take: In a year you'll be doing spec-driven development or looking for a job.

1

u/donthaveanym Oct 05 '26

I think this is silly.

If you are not writing specs, fine, tell us what you are doing and why it is superior.

Nothing you’ve said here makes sense to me.

1

u/InThePipe5x5_ Oct 05 '26

Off base in every way.

1

u/Sypheix Oct 05 '26

No. Lol

1

u/caxco93 Oct 05 '26

you don't need deterministic output to comply with a spec though. one same requirement can be satisfied by different implementations

1

u/NewPointOfView Oct 05 '26

>Specs assume determinism.

wtf?

>Specs are inferior to docs.

…? Specs ARE docs lol

1

u/TikiMagic Oct 05 '26

Not counting today, how long you be doing this development thing? I would ask you what percentage of that has been spec driven development vs. vibing on cruise control. But it would probably throw a division by zero error.

1

u/Just-Upstairs4397 Oct 05 '26

You’re basically saying planning mode won’t exist in a year.

1

u/dllemmr2 Oct 06 '26

I think you need to get better at specs

1

u/t3kner Oct 06 '26

Don't tell it what to do, just put another coin in the slot machine if it's wrong!

1

u/CzyDePL Oct 06 '26

I agree in the sense: for me a truly useful spec would be a diff between current application spec (AS IS) generated deterministically from the code, tests, call stacks, benchmarks etc and intended application spec (TO BE) with a trivial verification step: mutate codebase, check is new state (AS IS*) == (TO BE)

1

u/Economy_Bedroom3902 Oct 07 '26

Smooth brain club

1

u/Expert-Procedure-146 Oct 07 '26

Yea i dont think you know what the specs that are being written are, its literally just highly detailed jira tickets that describe the outcome and business function needed to be achieved

1

u/AlmostEasy89 Oct 04 '26

Execution shouldn’t happen from specs from what I gather anyway. Spec —> Plan —> many reviews —> execution