Software & health deterioration

There is an analogy between software and health.

Today, I returned to trail running after a month of recovering from an illness. How was it? Not as bad as I thought. My performance decreased by several percent, but months of hard training helped me keep my baseline on a decent level.

Both software and health deteriorate. If you don't invest regularly, they become worse over time.

1) Software becomes more complex, and its entropy grows with an accumulation of small inconsistencies, code duplication, outdated libraries, and deprecated components. Like our health, where entropy is reflected by cognitive decline, aging, and reduced neuroplasticity.

2) It's tough to have a steep change. You cannot become a scientist or athlete overnight, as well as it's nearly impossible to break down monolith, increase testing coverage from 0 to 70%, or shift from a fixed release cycle to continuous delivery within a month.
It took me several months to pay my health debt and return to shape after having problems with my spine.

3) But it's also true that, in most cases, your long-term investment won't disappear immediately. If your code is well tested and documented, your product is already a distributed system, and automations cover most of the delivery process - you won't lose it easily, even if you "move fast and break things".

I didn't destroy the effects of hundreds of hours of exercise, even if I barely trained and ate unhealthy in the last few weeks.

Without investment, software and health deteriorate.
Fortunately, deterioration is a function of the current state.
The better baseline we have, the easier it is to come back to shape.

If you lead technology, keep investing in it long-term. Even small steps, executed consistently, will help you recover quickly from the turbulences you face in your journey.