3 ms·
The one side of technical debt that the term doesn't capture is the quality of life issues involved. It's just misery and pain to work in an org with high level
by ballenf 5y ago
The one side of technical debt that the term doesn't capture is the quality of life issues involved. It's just misery and pain to work in an org with high levels of debt, even if everyone involved is comfortable with timelines necessary to accommodate it.
It's like having a factory with poor lighting or unmaintained equipment that breaks down a lot. There are metaphors that capture that aspect of technical debt better, imo.
- sirwhinesalot 5y agoThat's "paying the interest". Lets say you rush a component of your software out. Every time you make a change it causes massive headaches and issues. Lets say this decreases developer productivity by 5%. Then any new feature that touches that component increases this "interest". You're now losing 6%, 7%, etc. Only on interest. The longer this goes on and the more debt you accrue the worse it gets. Getting debt to have something now that you fully intend to pay back is not a problem. Constantly increasing your debt till you go bankrupt (total rewrite) is though. Problem is management is blind to tech debt. It doesn't show up in their calculations, it's just that thing the devs always complain about but somehow the product still gets delivered, just with more "irrelevant" complaints each time until half the team has quit.
- denton-scratch 5y agoThat makes it sound like technical debt is a financial matter, that it's reasonable to bargain about. It isn't - it's crappy code that is a pain to work with, that will make devs quit, and will cause bugs. I've worked on a project with 200 devs, and one year of rushed history. The entire project was technical debt, which was never "paid off". When I said it needed refactoring, I was told to refactor it myself. After two weeks' work, my effort failed, I got dinged, and my reputation suffered. We didn't have CI, or a test-suite, not even a decent RCS. I didn't have a chance. I should have kept my mouth shut.
- sirwhinesalot 5y agoCode being a pain to work with, causing devs to quit and constantly causing bugs is costing massive amounts of money in lost productivity. Every hour the Senior Engineer wastes putting out fires is $100+ down the drain. Management simply refuses to include these costs in their calculations. We should start keeping track of this time expenditure very accurately and repeatedly show it to higher management: this is how much tech dept has cost this project this month. Unfortunately, they still won't listen. We're just whiny little babies in their eyes.