What is Technical Debt?


Hi, I’m Steve Kuo, senior developer and coach at SolutionsIQ. I’m going to talk to you today about the term technical debt. Ward Cunningham coined this phrase, and it describes the entropic effect of choices and decisions made during the development of software.

It’s particularly appropriate, because as these choices and compromises and decisions are made, you incur this debt, and unless this debt is paid off, software can suffer adverse consequences. All projects have technical debt. It’s how a project accumulates that debt, if it’s a slow steady trickle, if it comes in big chunks, how it’s addressed, if it’s ever addressed – for example, if it’s ever paid off, parts are paid off – that can vastly affect how the health and the longevity of the project are.

One way that I’ve found to help address technical debt is just the simple thing of making it visible. When these compromises and decisions are made, you take 3×5 cards or Post-its and you find a place to display that debt visibly. Then what you can do is, at later times, you can have discussions about it and note them and remember them. You’d be amazed at how effective it is making technical debt visible rather than swept under the carpet and hidden. Thank you.