Hall of FameBrian Foote, Joseph Yoder199774 min readpaperintermediate
Big Ball of Mud
Summary
The paper defines the "Big Ball of Mud" anti‑pattern—systems that grow haphazardly due to expedient fixes—and outlines seven related patterns that explain why they arise and how to mitigate or reverse them.
- Throwaway code often survives beyond its intended lifespan, becoming the seed of a Big Ball of Mud.
- Piecemeal growth and constant expedient patches erode any original architectural intent.
- Shearing layers—separating fast‑changing from slow‑changing parts—helps contain entropy.
- Sweeping problems under the rug hides technical debt; refactoring or reconstruction is needed to restore health.
Any engineer who maintains or evolves legacy code should understand these forces to avoid or remediate architectural decay.
8/10