What is Technical Debt?

What is Technical Debt?

There's a saying we like to kick around the office, "always write code like the person maintaining it after you is a homicidal psychopath that knows where you live.

Basically, it means write clean code

There are many reasons writing clean code is important, but Technical Debt is probably at the top of that list. While Technical Debt is a topic that is not widely known outside of the software development industry, it's one that can have far reaching effects. 

What is Technical Debt? 

Technical Debt is a term used to explain development work that is put off and then eventually has a negative effect on applications. It's small things that are wrong with an application, but not wrong enough to stop it from performing or from passing the Functional Requirements. (You might be wondering why these small things get put off in the first place, don't worry, we'll get to that.)

A great analogy for Technical Debt is to think of your kitchen and how slowly over time, it becomes dirty. The kitchen works, you can still cook in it, but the dirtier it gets, the more nasty the environment becomes. 

How does Technical Debt occur? 

Because we build 'custom' web applications, almost everything we do is new. There isn't anything wrong with how we've developed something, but inevitably a better way to do what we did comes along. It's the double-edged sword of technology. 

Why is Technical Debt put off? 

Simply put, resources; Technical Debt is usually pushed down the priority list because there is always something else that requires more immediate attention. And sometimes, it's not that Technical Debt is put off, it's simply too hard to keep up with.

Let's say you start with five items on a to-do list and those five are a high priority, by the time you've ticked everything off of the list, you've undoubtedly created new debt somewhere. It's like weeding your garden; you can weed all day but as soon as you turn around there's more weeds growing. 

Why does Technical Debt matter?

Eventually, these small things will catch up and slow down operations, costing money and dragging down productivity. That's why we encourage clients to have a solid support and enhancement plan in place; it's imperative to the long term longevity of your application. 

With support and enhancement, any unused hours on those contracts go towards the reduction of Technical Debt . For example, one of our clients has a platform that's scale demands continue to increase, but if we continued to increase the scale without chipping away at the debt, the application would not work as efficiently as it should. So now with their support and enhancement plan, we dedicate two to three weeks a year, solely on reducing their technical debt. 

Think about that kitchen, the cleaner it is, the better it is to cook in. 



Recommended! Well explained and funny! , "always write code like the person maintaining it after you is a homicidal psychopath that knows where you live." :-)

To view or add a comment, sign in

More articles by Bob Baird

  • Build or Buy? How to Solve Business Problems with the Right Software

    That business problem or goal that’s giving you heartburn lately? Chances are its solution hinge on technology:…

  • 5 Steps to Refine Your Processes

    In most businesses, certain processes are repeatable - everyday it's the same tasks and the same check list being…

  • Why We Love Our Office Dogs

    Once a year America celebrates Take Your Dog to Work Day, but at Inverse-Square dogs in the office are business as…

    2 Comments
  • 3 Steps to Improve Your Processes and Increase Efficiency

    Imagine your business processes streamlined, no more paper forms, no more repetitive and mindless data entry. Imagine…

  • 5 Tips to Increase Process Efficiency

    If you really want your business to grow, first off, you need to ask yourself, "will our processes support the growth?"…

    1 Comment
  • 3 Reasons Not to Hate Change Request Forms

    I'm not really sure how it happened; I swore off formal process control documents when I left corporate life fifteen…

  • Choosing a Host for Your Application

    Once the team of developers at Inverse-Square have built a custom web application for an organization, that app has to…

  • Custom Software Development FAQs

    Since Inverse-Square was founded we've worked hard to perfect our craft for the benefit of our clients. To ensure…

  • 5 Reasons Why Free Spreadsheets Aren't Actually Free

    Did you know that almost one in five businesses have suffered financial losses due to errors in their spreadsheets?…

  • Project Completion is Only the Beginning

    A common pitfall in software development is putting more focus on the 'end' of the project rather than on the…

Others also viewed

Explore content categories