The Assumptions That Break Systems
Feb 15 2026Every bug you've ever spent hours hunting had the same root cause: something you were sure was true, wasn't. Assumptions are the invisible scaffolding of software development — inferences we treat as facts because checking everything is impossible, and our cognitive context, much like an LLM's, has hard limits. The dangerous part isn't making assumptions; it's losing track of which beliefs are proven and which are just comfortable shortcuts. Even tests — our best tool for replacing assumptions with proof — are themselves built on assumptions. This is the paradox at the heart of reliable software.