I was eavesdropping on a conversation by Llewellyn Falco yesterday, that lead me to tweet an insight.
Since we call technical debt with that term, there's a lot of talk around that keeps thinking of the mechanism of how it's born as if it was a deliberate choice, like walking into a bank and taking debt. But that is really not my experience. Technical debt is much more like the infinite amount of small decisions you do on how you eat to either gain weight or not. It's not really deliberate, it's more of an accident. And just like weight, when you gain some technical debt it can be really easy, but the work on losing it will be significant and continuous, and needs to focus on changing the habits for sustainable results. With every relapse, it will get more difficult to find the willpower to stay on it. There's a difference on something being a choice or a consequence of your choices. You can influence both, but the latter is harder.'Technical debt is not like taking a loan, it's more like gaining weight.' Not an active choice.— Maaret Pyhäjärvi (@maaretp) July 6, 2016
As a tester in my team, I've been a beacon to remind the team to stay fit on technical debt, because when we don't, I see the consequences first hand on the surprise bugs that messy code gives us. I see the slowness of adding something seemingly simple. And unlike a lot of managers, I won't be fooled with the "coding is magic and magic just takes time without explanations", because I'm all in with the team.
I speak to the managers about letting the team address technical debt as they recognize it. Recognition comes through learning more about what is and is not good. I provide information that enables making the room for this through continuous positive feedback and evidence that I see while testing that we're on the right route. And I act as someone who keeps reminding that none of us is ever alone with this in a team.