Gall’s Law

Mental Models
Systems Thinking
Engineering

“A complex system that works is invariably found to have evolved from a simple system that worked.”

Also known as: The Complexity Corollary · Iterative Design Principle · Law of Complex Systems
Complex systems that work almost always evolved from simpler working systems
Complex systems that work almost always evolved from simpler working systems

John Gall was a pediatrician who spent decades watching systems — educational, organizational, technical — fail in predictable ways. In 1975 he published his observations in Systemantics, a dry, funny, and largely ignored-at-the-time treatise on why complex systems misbehave. His central insight is deceptively simple: you cannot design a working complex system from scratch. You can only grow one, carefully, from something that already works.

The corollary is equally blunt: “A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over, beginning with a working simple system.” This is not a guideline about preferring simple things. It’s an empirical observation about the only known path to functional complexity.

Where You’ll See It

  • The internet: ARPANET began in 1967 as a small network connecting a handful of research universities. The internet as we know it evolved from that — it was never architected wholesale. The complexity grew; it was never imposed.
  • Wikipedia: Launched in 2001 as a basic wiki with minimal rules. Its elaborate governance structure, manual of style, and review processes emerged iteratively as problems surfaced. Compare to Nupedia — its fully-designed-from-scratch predecessor, which never gained traction.
  • Healthcare.gov (2013): The catastrophic launch was partly a case study in Gall’s Law violated. The system attempted to handle 17 different immigration status exceptions in version 1.0. The complexity was designed in from day one, and the system collapsed under it.
  • Unix/Linux: Unix was built on a philosophy of small, composable tools. Linux inherited that philosophy. Both are now extraordinarily complex — but that complexity layered on top of simple, working foundations.
  • Microservices architecture: The software engineering shift from monolithic applications to microservices is explicitly Gall’s Law in practice: start with the smallest working thing, then evolve it.
Key Takeaway

Build the simplest version that actually works. Ship it. Learn from it. Grow it. Any other approach is designing complexity you don’t yet understand, layered on top of problems you haven’t yet encountered.

Worth Noting

Gall’s book was largely written as satire and systems humor, and it spent decades in relative obscurity. Its rediscovery came largely through the software engineering community in the 2000s and 2010s, where its insights aligned perfectly with agile methodology and lean startup thinking. A physician’s satirical 1975 observations about organizational systems became a de facto foundational text for modern software architecture.

Further Reading

  1. The Systems Bible (Systemantics) by John Gall (1975; 3rd ed. 2002)
    Book
    — The original source. Humorous, short, and genuinely wise. The 3rd edition (retitled “The Systems Bible”) is the most accessible version.
  2. Systemantics — Wikipedia
    Free
    — Overview of the book and Gall’s key principles, with historical context and reception.
  3. Gall’s Law — Personal MBA
    Free
    — Applied business and entrepreneurship framing; connects Gall’s Law to MVP and lean startup methodology.
  4. Complexity and Emergent Behavior — Farnam Street
    Free
    — Broader treatment of how complex systems behave, providing conceptual context for Gall’s Law.
  5. Systemantics (PDF) — DocDrop
    Free
    — Free digital access to the original 1977 text.

Similar Posts