Technical debt is something every developer comes to experience in some form.
Luca Rossi has a thoughtful piece on defining technical debt and agrees with its definition as “a disagreement between business needs and how the software has been written.” These are the two biggest offenders:
- Wrong Design — what we built was wrong from the start.
- Rapid Evolution — we built the right thing, but the landscape changed quickly and made it obsolete.