General

What is Technical Debt?

The accumulated future cost of expedient design choices, paid as interest through slower development and riskier changes.

Definition

Technical debt, Ward Cunningham's metaphor, frames shortcuts—skipped tests, copy-pasted logic, outdated dependencies, architecture outgrown by requirements—as borrowed time: the principal is the eventual fix, the interest is every feature that lands slower because of it. Martin Fowler's quadrant distinguishes deliberate/prudent debt ("ship now, refactor after launch") from reckless debt taken unknowingly. Not all debt deserves repayment; debt in code that never changes charges no interest. Healthy teams make it visible—tracking it in the backlog, budgeting a fixed slice of each cycle for paydown, and using boy-scout-rule refactoring—rather than letting it surface as mysterious velocity collapse.

Keep the references coming

One email a week: new and trending developer tools, fresh comparisons, and what shipped. Unsubscribe in one click.