Editorials

Technical Debt

It’s pretty hard to run a business without accruing some form of technical debt. Technical debt is easily described as that shortcut you took to solve some software problem with the thought that you’d come back and fix it sometime in the future. This is a very common, and in my opinion, a very appropriate action. It is like paying for something with a credit card today, knowing you will pay it off by the end of the month.

Just like any other debt, technical debt accrues interest. The longer you carry it, the more expensive it will be to pay it off. If carried too long, it can break your back completely; businesses have been known to go under with technical debt as a prime contributor.

You can take the approach of paying a minimum amount to resolving technical debt on a regular basis. Again, the credit card example demonstrates the cost for this technique. Not addressing technical debt works just like paying a minimum amount on credit card debt; it costs considerably more than paying down the debt as quickly as possible.

The cost of technical debt is expressed by performance degredation, or increasing time/cost to add new features. It may even cost you more money in the long run because your system may be difficult to understand.

There are times when technical debt makes sense. In my experience, it does not make sense to carry technical debt for a long time. The longer you carry it, the more it costs to pay it back.

How have you seen technical debt used, for good or bad reasons, or with good or bad results? Share you experience here or by email to btaylor@sswug.org.

Cheers,

Ben