Tag : development

2 posts

A simple strategy for managing technical debt

Author: James Higgs

Yesterday, I tried to explain the concept of technical debt. Today, I’ll try to suggest a practical way to track and deal with debt in your project.

As with debt in the real world, the trick with technical debt is to track your liabilities and make sure you have a plan for addressing them. Allowing debts to build up without thinking about what you’re doing is a terrible way to run your personal finances and your software development project.

So long as you are making informed and deliberate decisions about when to incur debt and when to pay it down, you do not necessarily need a plan to eliminate your debt entirely. Rather, you should aim to keep it at a sustainable level so that you’re able to add new features to your product relatively easily and without too many side-effects.

Read this post

The Four Grades of Technical Debt

Author: James Higgs

Almost all communication between developers and non-technical colleagues or clients is done through a set of metaphors. Some of them (the construction metaphor, for example) are actively harmful, but others are potentially very useful.

The idea of technical debt is one of these but, as with any metaphor, it’s important to understand where the limits of its applicability are. For these metaphors to be useful, they need to be used accurately.

There’s a pronounced tendency within the agency world to appropriate technical terms and then to use them incorrectly (‘operating system’ is the trope du jour), presumably in order to appear more technically knowledgeable but, to anyone who knows what these things really mean, the effect is just to reveal the metaphor abuser as a bullshitter.

Abused in this way, useful terms gradually become stripped of their meaning and replacements have to be found. I worry that this is happening with the term ‘technical debt’. Hopefully, this post will help to clarify its meaning.

Read this post