How do you choose between building features and investing in code futures for long-term compounding?
Kent Beck distinguishes two fundamentally different games in software development: The Finish Line Game (optimize for a single outcome, then stop) and The Compounding Game (build systems that earn resources for the next iteration indefinitely). Most spec-driven and AI-assisted development assumes the former; sustained product growth requires the latter, demanding equal investment in futures—the architectural and design work that keeps complexity manageable—as in features.
Read full essay on Substack ↗Questions this essay answers