Most of us have worked in situations where a large amount of effort is spent addressing defects, support calls and technical debt. I recently worked with one team where they estimated that only 20% of their time was devoted to new value work and 80% of that effort was spent working around the technical debt. In other words they are operating at less than 5% of their potential.
How does code get into such horrible shape? The pattern seems pervasive enough that an appeal to craftsmanship is insufficient. I believe that there are larger systemic forces at play.
This talk presents technical debt, not as a problem but as a measure.
It is a measure of the technical health of your organization.
Large technical debt is analogous to high blood pressure. Addressing high blood pressure likely entails a lifestyle change involving diet, exercise and so on.
Addressing the symptom of technical debt similarly sheds light on organizational changes such as hiring practices, optimizing for project delivery over sustainable product development and so on.