5 ms·
Right, and "debt" is a beautiful word here. It accurately describes receiving the value today, but then owing that time back, with interest, in the future.
by ghayes 4y ago
Right, and "debt" is a beautiful word here. It accurately describes receiving the value today, but then owing that time back, with interest, in the future.
- Juliate 4y agoI'd argue that "debt" instills an unrelated meaning. As well as "legacy" and "debt" mean different things, yet may be related in some situations. What is technical debt today might actually be (considered) no debt at all later on (or even from the beginning, in the extreme case you're building something for once only), for multiple reasons. The context matters a lot, and begets a more elaborate discourse than just "that's technical debt", which in itself means little of the possible or mandated actions. (edited to refine)
- drewrv 4y agoTech debt is one of the few metaphors I love because it’s so accurate. What a lot of engineers struggle with is that manageable levels of debt is fine for a business and in fact superior to being cash constrained. Some forms of debt are a headache if the business goes south but tech debt can be ignored if the software project goes nowhere. So the “terms” are good. Rather than complaining about tech debt, one should communicate the advantages of paying it down or the risks of taking on too much. But the metaphor works and simply referring to “debt” will not dissuade people because a bit of debt is fine.
- crdrost 4y agoI agree, and I love the metaphor too, but you have to admit that something about the metaphor isn’t reaching peoples’ brains the way a good metaphor does. A good litmus test here is to ask someone, “what if I told you that technical debt was originally a good thing?”... Like “Yes! Let’s go and get some technical debt, it will be great!” And so, can you understand why it might have started out that way? People who really get the metaphor, can understand why it was originally a good thing to be desired. Because debt is a useful tool for the same reason, and if you can pursue what “being unable to take on technical debt” looks like, you can understand that it was a reaction to waterfall-style approaches. But a solid 80-90% of people in tech don't understand how it could possibly be positive... “tech debt” is just a shorthand for the stuff that is causing development to go slower than you would have liked it to go.
- AndyMcConachie 4y agoThe big difference between technical debt and actual debt in a money sense is that real debt is taken on consciously with an agreement betweenn debtor and lender. Because of this money debt can be worked into the planning and the risk can be calculated at the time the loan is initiated. Circumstances can change over time, but there is a bargain between the debtor and the lender. There are things like interest rates and collateral that are agreed upon when the debt is incurred. Technical debt is by definition created to save time, so there is rarely an understanding of the risk that comes with the debt until the debt must be repaid. This means that the eventual payback can range from inconsequential to disasterous. The point is that the debtor won't know until it comes time to pay the debt back. Technical debt is often incurred in lieu of actual planning, not because a debtor is consciously and rationally weighing current reward against a future risk.
- Angostura 4y ago> People who really get the metaphor, can understand why it was originally a good thing to be desired. Because debt is a useful tool for the same reason In that case, it is a very apt metaphor because most people naturally see debt as a bad thing. But with some nuanced thinking and deeper investigation you recognise that it can be useful sometimes.
- Vinnl 4y agoI think they weren't saying that it's not an apt metaphor, but that it's not a good one, because now you first need to explain to people why regular debt is not necessarily bad, before being able to move on to your actual point that technical debt is also not necessarily bad.
- treis 4y agoSimply because it's a lot nicer to say than "my predecessor did dumb stuff". Especially when the predecessor is still around and outranks you.
- kyriakos 4y ago
- tome 4y agoI think those who object to the metaphor do so because they interpret "technical debt" as "technical consumer debt". Consumer debt being a relatively benign form of debt, they don't believe it conveys the gravity of the matter at hand. Consumer debt is mostly unsecured, almost perfectly fungible across term structures and refinanceable on a whim within a very competitive market of lenders. It's rare for it to be essential for a consumer to take on debt to continue to live[1] and there are typically safeguards in place to ensure consumers don't take on too much debt burden. The only debt that most consumers will come across that imposes any restrictions, or moves slowly, is a mortgage on a residential property. When we talk of "technical debt" we are talking of something has none of the nice properties of consumer debt. If I had sufficient cash I could pay off all my consumer debt within two minutes with a few taps of my phone screen. On the other hand, I interpret "technical debt" to be akin to a complex structured financial product. Maybe there are convertability clauses between debt and equity, perhaps there is variability in the rates payable, or optionality that can be triggered by various real world events. This form of debt is not liquid, it is not refinanceable and it can be hard to find someone to take it off your hands for any amount of money! Nonetheless, sometimes it is essential for a business to take on this sort of debt to continue to thrive. That is an apt meaning for "technical debt" in my opinion. [1] rarity depends on how socialised one's healthcare system is!
- TheOtherHobbes 4y agoExcept it doesn't. It's a one-sided and misleading concept. The problem is usually finding a balance between "Let's hack some suicidally awful crap together quickly to see if we even have a market and then fix it when we have real income, except everyone knows we won't so it will be a permanent drag on the business" and "Let's build a beautiful extendable maintainable paragon of elegance and purity and ignore the fact that it'll take three years when we have six months of runway." Too far in either direction will kill you. The sweet spot is between those extremes, and finding it is extremely difficult. It's unhelpful that there isn't a word to describe aiming for that balance, never mind hitting it.
- lilyball 4y agoIt's not one-sided though. Debt is often a very useful tool. You take on debt now because you can do more productive things with the money that will be worth more than the payments you have to make on it later. This is an extremely apt description of technical debt. Often times people will make bad decisions about what debt to take on, and the same is true for technical debt, and often times people will overestimate the value they'll get out of the debt, which is again true for technical debt, but debt is still a useful tool, and technical debt is a useful compromise you make to ship software.
- eru 4y agoYour description is apt when you are talking about an analogy between technical debt and personal debt. For companies, whether to use debt or equity to finance their balance sheet is just a technical decision. Either way, you have to pay the cost of capital. (Ie even if you finance your project from equity and not from debt, it still has to be better for your shareholders than just giving them the necessary capital back via a stock buyback.) A company can have debt as a permanent feature of its balance sheet, just like equity. Funny enough, I suspect from a corporate finance point of view, technical debt should actually be called 'technical equity', because technical debt only gets expensive when your project takes off. If you never end up using that piece of code, the technical debt never has to be paid. But it gets more and more expensive, the more successful your project is. Just like selling 50% of your startup to an investor (as equity) gets more and more expensive (in retrospect), only if your startup really takes off. Debt stays the same price, whether your startup is middling or goes to the moon.
- pmontra 4y agoNot sure about that. A large part of the company (everybody close to money) probably see debt as a good thing because it lets them buy stuff. Of course you have to pay debt to creditors and how do they do it? By making more debt. It works well until you have to pay it off, all of it. So if they ever enter in a discussion about technical debt expect them to suggest to make more debt (and move faster.) Building without foundations, driving blindfolded, etc, could be better metaphors everybody can agree upon. If you're talking with a CFO, talk about high leverage (as for derivatives.)
- eru 4y agoWhy would you have to pay off all the (financial) debt? Debt can be a permanent part of your company's capital structure just like equity can be a permanent part. Or do you have a plan to buy back all outstanding stock? (Yes, real world debt in the form of bonds a due date, when you have to roll it over. But that's an accident of history. Instead companies could also sell perpetual bonds and put options on those bonds for the same effect.) In finance terms, loosely speaking debt is the part of your capital structure whose cost is fixed in nominal terms. Equity gets the remainder of your income stream. About high leverage: the more of your income stream you parcel out for fixed payments, the more you 'concentrate' your equity and the variability of the residual income it gets. (Overall, I blame tax systems that give preferential treatment to debt over equity. Roughly, you can pay the capital cost of your debt with pre-tax money, but the capital cost of your equity comes out of post-tax money. Put them on equal footing, and you'll solve quite a few problems.)
- samatman 4y agoI agree completely, it's a powerful concept, just too narrowly applied. The 'technical' part points out that it's a special kind of debt, one that isn't measured directly in money. What's the debt? The debt is time. You can't move some technical (which isn't a noun), or some money (which is), from one account to another, to pay down a time debt. You have to pay it off with skilled labor, which takes time in a way that isn't fungible with money: there's a lot of COBOL out there which can be lightly modified, or replaced, but that company can't find the hours of skilled labor to do more with it, at any price. A codebase isn't the only time debt a company can incur, any process can be stuck in a suboptimal frame because no one wants to sign off on the time it would take to make it right.
- tester756 4y agoI prefer "tech investment"! It's more positive ;)