2019-04-29-avoiding-foreclosure-on-your-technical-debt.html.md.erb 3.47 KB
Newer Older
Suri Patel 's avatar
Suri Patel committed
1
---
2
title: "How to avoid foreclosure on your technical debt"
Suri Patel 's avatar
Suri Patel committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16
author: John Jeremiah
author_gitlab: johnjeremiah
author_twitter: j_jeremiah
categories: insights
image_title: '/images/blogimages/just-commit-blog-cover.png'
description: "There’s no need to be embarrassed  we all have technical debt. Here’s how you pay it off."
tags: DevOps, workflow
cta_button_text: 'Just commit'
cta_button_link: '/just-commit/reduce-cycle-time/'
twitter_text: "We all have technical debt. #JustCommit to paying it off"
featured: yes # reviewer should set
postType: content marketing
---

17 18 19
How much debt can you afford? We all live with some form of debt, whether it’s a student loan, a car loan, a mortgage, or a credit card balance. Debt doesn’t have to be a bad thing. It can be a tool that gives us leverage and flexibility to make large purchases. But there are limits to how much debt is reasonable and that’s where people get into trouble. If they take on too much debt, bad things can happen. 

What does this have to do with GitLab? Everything.
Suri Patel 's avatar
Suri Patel committed
20 21 22

## What is technical debt?

23
According to [Martin Fowler’s excellent summary on technical debt](https://martinfowler.com/bliki/TechnicalDebt.html), it seems that [Ward Cunningham coined the term](https://www.youtube.com/watch?v=pqeJFYwnkjE) around 1993 as a metaphor to describe a typical pattern that occurs on software projects. Technical debt is a pattern in which a development team does not have enough time, information, or capacity to refine and refactor their code, so their architecture, implementation, and testing may be incomplete. The challenge with technical debt is similar to financial debt in that it doesn’t magically go away. Unless it is managed and paid down, technical debt will grow over time, just like the balance on your credit card bill.
Suri Patel 's avatar
Suri Patel committed
24 25 26

## How to reduce technical debt

27
You may feel overwhelmed but there is a reason to be optimistic. The power of rapid, continuous delivery combined with small, incremental changes can help you manage your technical debt and avoid “foreclosure.” Here are three things you can do today to get your “technical finances” in order:
Suri Patel 's avatar
Suri Patel committed
28

29
1. **Find your technical debt and document it.**  It’s hard to pay off all your bills if you don’t know what they are. Begin this process by creating a list of issues that capture your specific technical “bills.” Assign them `technical debt` and `priority` labels. You probably won’t be able to pay them all off at one time, but now you know where to start.
Suri Patel 's avatar
Suri Patel committed
30

Suri Patel 's avatar
Suri Patel committed
31
1. **Embrace small changes.**  At GitLab, we embrace [Minimum Viable Change (MVC)](/handbook/values/#minimum-viable-change-mvc). The goal of MVC is to make small, incremental improvements. Your goal is to pay down your debt one micro payment at a time.  
Suri Patel 's avatar
Suri Patel committed
32

Suri Patel 's avatar
Suri Patel committed
33
1. **Let continuous delivery automate your payments.**  You can’t automate the improvements, but you can leverage CI/CD automation to streamline the process of testing, validating, and deploying code changes for you. Continuous delivery removes the friction and bottlenecks between your developers and the “bank.”  
Suri Patel 's avatar
Suri Patel committed
34

35
Technical debt is a reality in almost every software product in the world. The point about technical debt isn’t how to avoid it, but how to _manage_ it so that you’re not in a situation where you are forced to foreclose on your project because the technical debt is out of control. The tools are readily available. The question is: Are you ready to start managing your technical debt? [Just commit](/just-commit/reduce-cycle-time) to your future.