Re:Garbage collect your technical debt (2021)
by 0xDEAFBEAD on Sunday June 09, 2024 @04:44AM
(#40622934)
Also, as you alluded to, if you're changing related code which will require manual testing, then that decreases testing costs, if they're shared across the refactor and the new code.
Re:Garbage collect your technical debt (2021)
by physicles on Sunday June 09, 2024 @05:55AM
(#40623248)
Yeah I’ve got about five ideas for refactors that will make my life noticeably better. I’ve been pondering some of them for more than a year, slowly improving the design, but I’m still waiting for the right time when the ROI is higher.
Re:Garbage collect your technical debt (2021)
by yarekt on Sunday June 09, 2024 @07:00AM
(#40623603)
Interesting, I think this is part of what the article is alluding to: what happens with tech debt is more to do with the team’s process rather than with the tech debt itself. Some teams are stuck in a process that makes them unable to tackle the problems even if they want to due to that process.
Of course you could just say “change the process” but it’s also obvious that there are many other factors and pressures that are non trivial
Of course, if the total effort of doing the refactor plus building the feature on top of the refactor is less than building the feature on top of the debt, you should always do the refactor first. That's pretty much a no-brainer.
Another idea I've thought about is informally keeping track of possible refactors, maybe give them an informal prioritization, and taking a glance at your list before each task. Maybe there's some value in letting a refactor stew in your brain a little bit before actually putting it in to action. And continually maintaining a rough refactoring plan could help prevent your codebase from entering a state where it's actually unrecoverable.