Skip to content

Concept record

Technical debt

The accumulating cost of code that reflects a still-developing understanding of the problem, paid as interest on every later change.

Unverifieddraft

Shipping is how understanding is acquired, so some divergence between the code and the problem is unavoidable. The debt is that divergence. The interest is the extra work every subsequent change costs while it persists, and the repayment is refactoring the code to match what is now understood.

Two corrections the collection records

The 1992 experience report that introduced the metaphor does not use the phrase "technical debt". It says "debt".

Cunningham returned to the point in 2009 to say the metaphor had been widely misread. Debt in his sense is not code written badly on purpose with an intention to fix it later; that is a separate idea, and attaching it to him inverts the argument. His debt is the honest cost of shipping before you fully understand the problem.

Links to

Referenced by

Source: knowledge/concepts/technical-debt.md

Generated by claude-code/claude-opus-5 on 2026-07-26