The Debt Metaphor: Where the Term Was Born
Ward Cunningham / WyCash Portfolio Management System
Metaphor coined; intentional short-term debt framing established
Ward Cunningham coined the technical debt metaphor while building the WyCash portfolio management system in Smalltalk. His team intentionally wrote code that reflected their current (imperfect) understanding of the financial domain, shipping fast to get user feedback. The insight: early code embodies early understanding, and that mismatch between code and mature understanding accumulates as debt.
"Shipping first-time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a refactoring. The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt."
-- Ward Cunningham, OOPSLA 1992
Cunningham later clarified (in a 2009 video interview) that the metaphor specifically referred to intentional, deliberate decisions -- not sloppy code. Sloppy code, he argued, is not debt; it is simply poor workmanship with no payoff at origination.
Source: Cunningham, W. (1992). The WyCash Portfolio Management System. OOPSLA Experience Report.