Systematic Debugging
The Iron Law
code
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
The Four Phases
Phase 1: Root Cause Investigation
- •Read Error Messages Carefully
- •Reproduce Consistently
- •Check Recent Changes
- •Gather Evidence in Multi-Component Systems
- •Trace Data Flow
Phase 2: Pattern Analysis
- •Find Working Examples
- •Compare Against References
- •Identify Differences
- •Understand Dependencies
Phase 3: Hypothesis and Testing
- •Form Single Hypothesis
- •Test Minimally
- •Verify Before Continuing
Phase 4: Implementation
- •Create Failing Test Case
- •Implement Single Fix
- •Verify Fix
- •If 3+ Fixes Failed: Question Architecture
Red Flags - STOP and Follow Process
- •"Quick fix for now, investigate later"
- •"Just try changing X and see if it works"
- •"I don't fully understand but this might work"
- •Proposing solutions before tracing data flow
Quick Reference
| Phase | Key Activities | Success Criteria |
|---|---|---|
| 1. Root Cause | Read errors, reproduce, check changes | Understand WHAT and WHY |
| 2. Pattern | Find working examples, compare | Identify differences |
| 3. Hypothesis | Form theory, test minimally | Confirmed or new hypothesis |
| 4. Implementation | Create test, fix, verify | Bug resolved, tests pass |