Dalton Willard

April 28, 2023

Debt, Technically

There's a software development concept called "technical debt" that has good applications to life in general.

The basic idea is that, when you solve a coding problem with a temporary quick fix, you're really just kicking the can down the road for your future self.

Except that's a bad metaphor, because a can doesn't change much when you kick it. Code isn't monolithic — it's a system of interconnected subroutines. When you take a shortcut in one place, that creates a weakness that can cascade into everything else.

So taking on technical debt is more like rolling a snowball down a hill. An annoying little snowball of a problem that accrues interest on its way down, butterfly-effecting itself into an insurmountable avalanche of interconnected quandaries.

The point isn't to completely avoid technical debt. Sometimes you have to solve a problem right now, however you can, to avoid disaster. But just like financial debt, you want to keep the principal under control, lest you be killed by runaway interest payments.

And that's what my life has felt like lately. It's been a crazy past few years, with some crazy problems. Sometimes I had time to work out a good long-term resolution to an issue. But sometimes I just had to do whatever I could to keep things working. Temporary quick fixes, with an unknown future expiration date.

Well, time is up on more and more of those fixes each day. And as much as I want to patch over the problems and keep moving, I think I'm going to be better off if I stop, reassess, and find some more permanent fixes for life's problems. I've paid off the interest long enough, it's time to deal with the principal.

And, more importantly, it's time to stop running up so much technical debt as I move forward.