I see technical debt differently. Technical debt is something you take on in exchange for moving faster. Maybe you skipped writing unit tests. Maybe you didn&#x27;t respond to all the style feedback, or even do a code review. But at the time you make the choice, you should know that you&#x27;re borrowing time from your future self in order to move faster now.<p>Like real life monetary debt, technical debt has 2 aspects: the principle and the interest. Sometimes the interest ends up being variable rate and backbreaking for your project - you should have written those tests up front and saved yourself a lot of time. Sometimes the whole project dies before you pay back the debt - you go bankrupt but it&#x27;s no big deal, your creditors are friendly. In either case, the principle usually isn&#x27;t smaller when you go to address it. You&#x27;re just delaying payment in favor of speed.<p>What the original artical addresses are several aspects that I might call &quot;technical assets&quot; that have depreciated significantly. That kludge, if it wasn&#x27;t done intentionally, isn&#x27;t debt - it&#x27;s now an asset. If you didn&#x27;t have a plan to pay it off in the future, you&#x27;ve already bought it and now you need to replace it. And the replacement is very expensive. That is a technical investment you&#x27;re deciding to make. You aren&#x27;t just paying off debt at that point, it&#x27;s a whole new capital expense.