DEV Community

Cover image for Defining Technical Debt

Defining Technical Debt

Matt Eland on December 23, 2019

I was looking for a definition of technical debt for a talk I’ll be giving next month when I discovered something that shocked me: I couldn’t find ...
Collapse
 
mitchpommers profile image
Mitch Pomery (he/him)

Have you read the Taxonomy of Tech Debt? I love its definition for tech debt: "code or data that future developers will pay a cost for".

If there are no future developers, there's no tech debt, likewise, if there is a lot of future developers, each small piece is multiplied!

technology.riotgames.com/news/taxo...

Collapse
 
integerman profile image
Matt Eland

I stumbled across this in some targeted research a few months back, but it wasn't on my topic at the time and I never went back to fully read it. Thanks for pointing me to it again.

Collapse
 
eadephill profile image
Phillip Eade

Technical debt is an interesting topic, it is something that all devs experience whether they realize it or not but actually putting into words what it is and isn't can be tricky.

Your finance metaphor really hit the nose on the head, I have dealt with developers who would take three times as long as the other developers because they were so worried about technical debt but I have also met devs who would do the complete opposite and write their code in a way that would make it almost impossible to change their code. It is all about balance and finding the time to go back and fix those pesky TODOs.

Collapse
 
dan1ve profile image
Daniel Veihelmann • Edited

Thanks for this post, Matt!
What I like about the debt metaphor is that it puts a pricetag on subpar code, which is something that non-techincal managers will understand.

What I don't like about the metaphor is that it often connotes

  • that you can actually specify how much debt you have (some tools even assign $ values...),
  • that quality problems are interchangeable (fixing something in component A won't improve component B)
Collapse
 
coly010 profile image
Colum Ferry

Found this extremely useful especially as it relates to systems I work on and discussions/disagreements I've had in the past.

Thank you for the article!

Collapse
 
ngarbezza profile image
Nahuel Garbezza

Nice article! I use to find the classic "loan" metaphor kind of limiting, and it's good to see alternatives