Engineering discipline was built on specs.

Requirements, architecture, design, verification, and interface specifications have historically driven the engineering team and product development. Not only do they tell the team what to build, but they’re also the currency through which the various teams interact.

Give and take. Trade this for that. Not this, but how about that.

They’ve also fallen out of favor over the last twenty years, especially in software. Agile, iterative development, and “go fast and break stuff” have not only de-emphasized documentation, but many organizations actively discourage their use.

“It’s the code. The code is the spec.”

OK, fair enough. I don’t disagree.

But I think we’re flipping back the other way. Agentic AI (OpenAI Codex, Claude Code, opencode, etc) now writes the code, or most of it, anyway. Once you can trust that the LLM does what you told it to do (a fine topic to debate), the code itself becomes less important.

So how does it know what to do?

Specs.

Requirements, architecture, design, verification, and interface specifications.

Good, old-fashioned documentation.

Get better at writing specs, because now they’re even more important.


Discover more from johnmaconline

Subscribe to get the latest posts sent to your email.

Pin It on Pinterest

Share This

Discover more from johnmaconline

Subscribe now to keep reading and get access to the full archive.

Continue reading