James Hague's claim, quoted by John D. Cook: "the number one most important skill" in writing code "is how to keep a tangle of features from collapsing under the weight of its own complexity." Across large telecom systems, console games, and blogging software, Hague found that a tricky data structure or algorithm "very rarely" dominates. What dominates is "lots of state to keep track of, rearranging of values, handling special cases, and carefully working out how all the pieces of a system interact."
This reframes what coding is: "to a great extent the act of coding is one of organization. Refactoring. Simplifying. Figuring out how to remove extraneous manipulations here and there." The scarce skill is not inventing cleverness but subtracting it, keeping the whole comprehensible as features accumulate.
The failure mode generalizes past software. Any system that grows by accretion (a legal codebase, an organization's processes, a research program) risks collapse under self-generated complexity. The maintainable ones are organized, not clever.
**Cross-Domain Connections**: [[Complexity Partitioning]] — one concrete organization technique: bound complexity within module boundaries so the whole stays comprehensible; [[Organization Skill Is Learned Through Owned Complexity]] — the sibling insight on why this skill is under-taught.
## Source
- [[The Most Important Skill in Software Development]] — John D. Cook, quoting James Hague ("Organization skills beat algorithmic wizardry"), 18 June 2015