Half-way through 2026, I’m finally getting around to posting some predictions for the year. Really, ideas about how software development can fix the house to deal with coding agents generating lots of code:

  • Design with pacing, stable/unstable layers – ala Shearing layers
  • Correctness by design/assertion – ala “Making Impossible States Impossible”
  • Formal verification (finally) – figure out if we can do better than compilers and unit tests to know if what we asked for resembles what we received
  • Even more deterministic static analysis – absent a leap forward in the practicality and ergonomics of formal verification, can we manage the flood plain of incoming code with beaver dams of linters, style checkers, and good old-fashioned grep?
  • Improve our observability stance – how can we see the emergent properties of the running system, let alone iterate on them? And, can we do so without spending all our lunch money on observability services and stacks?

Notably absent from this list: guardrails, specs, swarms, optimization, maximalism, orchestration. These aren’t even local maxima, they’re just shiny objects or shovels someone is trying to sell us along the way.