It Ain't Broke: Why Software Fundamentals Matter More Than Ever

Matt Pocock (AI Hero conference talk, AI Engineer) ยท video ยท 2026-04-23 Reader ๐Ÿ–ฅ๏ธ

Agent Planning ArtifactsCode QualityFeedback LoopsSoftware Design FundamentalsSpec-Driven DevelopmentTest-Driven Development
Because AI amplifies the cost of bad code through software entropy, investing in software design fundamentals โ€” shared understanding, ubiquitous language, deep modules, TDD, and deliberate architecture โ€” matters more in the AI era than it ever did before.

practical ยท argumentative โ€” A conference talk structured as a persuasive argument against the 'code is cheap' thesis, with five practical skills/tips drawn from classical software engineering books. Argumentative spine with expository illustrations at each tip.

Structure

PartRole
Opening thesis: software fundamentals matter more than everStates the core claim and establishes the speaker's credibility as a teacher building an AI coding curriculum
Critique of specs-to-code movementPresents the opposing position (code is cheap, just re-run the compiler) and demonstrates its failure through personal experience with entropy
Classical grounding: Ousterhout on complexity, Pragmatic Programmer on entropyAnchors the observed AI failure in established software engineering theory
Thesis restatement: bad code is the most expensive it has ever beenInverts the 'code is cheap' claim โ€” good codebases unlock AI's bounty, bad codebases block it
Failure mode 1: AI didn't do what I wanted โ†’ Grill Me skill (Brooks' design concept)Addresses the requirements-gathering gap between human and AI using Frederick Brooks' design tree
Failure mode 2: AI is too verbose โ†’ Ubiquitous Language skill (DDD)Applies domain-driven design's ubiquitous language to human-AI communication
Failure mode 3: AI built the right thing but it doesn't work โ†’ TDD and feedback loopsIntroduces the Pragmatic Programmer's 'outrunning your headlights' and argues TDD forces small steps
Failure mode 4: Testing is hard because the codebase is bad โ†’ Deep modules (Ousterhout)Argues that testable codebases require deep modules with simple interfaces, not shallow modules
Failure mode 5: Your brain can't keep up โ†’ Design the interface, delegate the implementationShows how deep modules also reduce cognitive load for the human, enabling gray-box delegation to AI
Closing: Kent Beck's 'invest in design every day' vs. specs-to-code divestmentFrames the developer as strategic thinker above the AI's tactical execution

Key terms

Propositions

Arguments

Software fundamentals matter more in the AI era, not less. strength: high
Explicit premises:
Implicit premises:
Inferences:
Requirements elicitation through adversarial questioning (Grill Me) is superior to eager plan generation. strength: medium
Explicit premises:
Implicit premises:
Inferences:
Deep module architecture is the key to making codebases both testable and AI-navigable. strength: high
Explicit premises:
Implicit premises:
Inferences:
TDD is the right feedback discipline for AI-assisted development. strength: medium
Explicit premises:
Implicit premises:
Inferences:

Narratives

Questions addressed

Gaps

Related documents