What problem does it solve?
Guide design decisions using the State > Coupling > Complexity > Code priority framework. Use when evaluating tradeoffs, reviewing design choices, deciding between implementations, or when code volume seems prioritised over deeper concerns.
Core Features & Use Cases
- Priority Hierarchy: State > Coupling > Complexity > Code, with clear rationale for why each level matters.
- Core Principle: "It's okay to increase coupling if it makes your code more stateless."
- Decision Framework: A stepwise guide to compare options on state, coupling, complexity, and finally code volume.
- Practical Examples: Scenarios showing tradeoffs between maintaining state, reducing dependencies, and simplifying logic.
- Integration: Complementary with Tidy First, TDD, and targeted refactoring practices.
Quick Start
Apply the code optimization priority framework by sacrificing lower priorities to improve higher ones.