Table of Contents

Technical health - why it matters

Software codebases start small, but can blossom into incredibly complex systems that can be difficult for developers to understand and change confidently. This can result in a lack of productivity, agility, and inability to react to market demands. Code can also be unreliable or brittle, leading to defects, accidents, and disasters.

Much like a human body, codebases can be healthy or they can be sick. Their ‘technical health’ is a key driver of long term effectiveness of the development organization and success of the product. Keeping a software codebase healthy from the outset will allow it to grow, evolve, and be worked on by many developers in concert even as the codebase and the development organization scale. An unhealthy codebase will ultimately fail to thrive, as developers become hamstrung and customers are left unhappy and waiting.

 

Our team’s research at MIT and Harvard Business School has established a strong link between technical health and ‘software economics’. Over 20 years, we measured different aspects of technical health from enterprise, government, DoD, and open source software. We correlated technical health with development productivity, defects, staff turnover, revenue generation, and other things of business value. Based on this experience, we are able to talk about what makes code healthy and what makes it sick based on quantitative evidence.

Things to know about code and the people who make it

 

Why does technical health drive organizational effectiveness?