galls-lawlisted
Install: claude install-skill The-Artificer-of-Ciphers-LLC/skills-from-the-artificer
# Gall's Law
> "A complex system that works has evolved from a simple system that worked. A complex system built from scratch won't work."
> — John Gall, 1975
## The core idea
You cannot design a working complex system directly. Complex systems that actually work all share the same history: they started as simple systems that worked, and grew from there. Every attempt to build the final, complete, sophisticated system from the start will fail — or produce something that doesn't actually work in production.
This isn't a counsel of despair. It's a guide to how to succeed: **start simple, ship, learn, and evolve.**
## Why complex systems fail when built from scratch
- **Unknown unknowns**: You don't know all the requirements until you've operated a simpler version.
- **Emergent complexity**: Real-world usage surfaces edge cases, failure modes, and interaction effects that no design can anticipate in advance.
- **Integration risk**: Each new component multiplies integration complexity. Building many components at once means many things to go wrong before you have any working baseline.
- **Feedback starvation**: Complex systems take longer to build, so you go longer without the real-world feedback that shapes good design.
## The rewrite trap
This law is most important when teams want to do a "big rewrite." The existing system feels painful, messy, and unmaintainable. The natural impulse is: throw it away and build the right thing.
But the existing system, however ugly, en