4 ms·
Technical debt is a former technical asset without its owner.
by alexpetralia 2y ago
Technical debt is a former technical asset without its owner.
- mayank 2y agoGot a source for this? Because it’s brilliant.
- deathanatos 2y agoSeems like a similar thought to "Programming as Theory Building"[1]. The paper is well worth reading, but the TL;DR if you don't wanna: the "theory" of a program (how does it fit together? What extensions/modifications would work well, how should it evolve to handle new cases, etc.) is contained only in the mind of the coder; documentation, spoken explanations, etc. are attempts at describing that theory, but they are necessarily a lossy encoding of it. Certainly attrishing everyone who knows something about a codebase would be extremely foolish under Naur's argument. Debt, I guess to me, is code deviating from a known better theory for it to follow. [1]: https://pages.cs.wisc.edu/~remzi/Naur.pdf https://pages.cs.wisc.edu/~remzi/Naur.pdf
- heenrik 2y agoSuch an excellent paper.
- frogulis 2y agoThe "attrishing" in your comment made me go looking, and Wiktionary [0] says the verb form "attrit(e)" exists and is likely a quite old backformation that has fallen out of common use. [0] https://en.m.wiktionary.org/wiki/attrit https://en.m.wiktionary.org/wiki/attrit
- troad 2y agoI wouldn't quite say attrite has fallen out of common use, though it is by its nature rarely encountered. I certainly use it, and it's fairly common in certain fields (e.g. discussions of language attrition, ironically).
- Mikhail_Edoshin 2y agoShouldn't it be a technical treasure then?
- Xmd5a 2y agoTechnical debt isn't just a matter of lost knowledge.
- mmcnl 2y agoDo this metaphors really help anyone? To me it only obfuscates the situation. It doesn't give me any clarity. Honestly "technical debt" doesn't mean much to me and I've seen the words mostly being used as a shielding mechanism by developers who want to avoid discussing difficult topics.
- quectophoton 2y ago> Do this metaphors really help anyone? To me it only obfuscates the situation. It doesn't give me any clarity. To be fair, leaving aside how fitting or unfitting it is, the metaphor is too kind to cause any reaction at all. If you say "we can take a bit of technical debt to get more work done today, we can always pay it off later", people would nod and move on. The reaction you get would be, at most, on the same level as someone watching TV news about a tragedy on a different continent ("Oh no. Anyway..."). But if you say "we can cook today's meals without washing any pots/pans/spatulas/etc and save time and money that way, we can just keep doing it every day until the first roaches appear", even though the message probably gets across way more clearly, you'd get a warning to watch your language and keep it appropriate, and how dare you compare the company to such a nasty restaurant. "Our technical debt is starting to become too much" doesn't ring the same as "there's too many roaches and they are actually starting to get in the way of our cooking".
- daelon 2y agoThat kitchen metaphor is perfect, actually. I am 100% going to use that the next time I have to explain this concept.
- quectophoton 2y agoIt can go wrong too, though. Like if the other party focuses too much on "human uses dirty pan" and interprets it as "dev uses bad IDE" because both pan and IDE are tools humans use, missing the point. The metaphor was kinda improvised so I'm sure it has other bad parts. The way I thought about it was with the kitchen being the service or codebase, and the utensils being utils/functions/modules/etc. Nothing more. So I bet there's more ways this metaphor can break. Use at your own risk.