One thing to keep in mind is you don't always need to pay this debt back. For instance - what if you want to try a quick prototype of something (which may later be discarded if it doesn't pan out), or just need a temporary stopgap solution?
One thing to keep in mind is you don't always need to pay this debt back. For instance - what if you want to try a quick prototype of something (which may later be discarded if it doesn't pan out), or just need a temporary stopgap solution?
to the bankrupt startup, the difference between $5m of tech debt and a perfect codebase/architecture is precisely 0. they're bankrupt either way
racking up tech debt is a necessary strategy at certain points in most companies' lives
Even if jank today means future changes are more expensive, if those changes are in service to growth, that just means that in the future, you'll need a capital investment if you want to grow, which is normal. It's not the same thing as debt today. You could choose to not target that growth avenue and never incur that cost.
It's pretty normal to have to buy a completely a new machine to support new use-cases in the physical world, and owning an older machine doesn't make that any cheaper, and physical machines require actual ongoing costs to not literally fall apart on their own. Even software that's full of "debt" usually gives you something cheaper than having to repay the entire capital investment on a new program. If it didn't, you'd just rewrite software from scratch every time you needed something new. And software does not in fact rot over time. If you don't touch it, it generally does the exact same thing today as it did yesterday, last week, and last year. If you're happy with that, you can just leave it alone indefinitely. Web 1.0 sites continue to work just as well today as they did 20 years ago, except with much faster computers to process them.
Basically, the analogy has always been pretty bad.
If you want a financial analogy, you should call it 'technical equity'. From a companies point of view both equity and debt are something you use to finance your business. But equity is only worth something if your company takes off. Similarly, 'technical debt' is only a problem when your software project goes somewhere.
(We are ignoring bankruptcy here.)