The cost YAGNI was never about
- Programming
- AI
- Developer Tools
- Hardware
Kent Beck’s post argues that YAGNI is usually misunderstood as a warning about wasted implementation time. His actual target is earlier commitment. When you build scaffolding for a feature that has not arrived yet, you are freezing one guess about the future and paying ongoing costs to carry, read, test, and preserve that guess even if reality lands somewhere else. Several commenters sharpened that framing by translating the "option" metaphor into everyday software work. Unwritten code stays flexible because it does not bloat the codebase, test suite, or the context humans and coding agents have to keep in their heads. That landed as the most useful reading of the piece.
Treat YAGNI as a risk-management tool, not a blanket ban on planning. If your product lives in a domain with stable table-stakes requirements or expensive changes, invest in structure deliberately and validate it with domain experts before code hardens around the wrong assumptions.
- newsletter.kentbeck.com
- Discuss on HN