- Hidden Bits by Antonio Leiva
- Posts
- When a Minor 'Bug' Reveals Bigger Issues
When a Minor 'Bug' Reveals Bigger Issues
Programming and Health
Like everyone else, I imagine, I suffer from several conditions that I will likely have to deal with for my entire life.
I have spondylolisthesis (a displaced vertebra) that causes me occasional lower back pain, and periodontitis that causes my gums to become inflamed. Both are of genetic origin, from what I've been told.
Additionally, I suffer from Irritable Bowel Syndrome, and every now and then, my belly swells up, causing much discomfort and gas.
My latest bout of lower back pain has quite literally changed my life, making me much more aware of my current situation. Not only health-wise but also personally, and it's a process I'm currently going through.
The thing is, I've started to work intensely on all of it, and apart from the lower back pain, which, although much improved, seems like it will be a long-term issue, I had everything else under control.
What happened? A few days ago, I caught a cold or the flu, which might seem normal and without further implications. But this small "bug" has brought all my issues to light.
Suddenly, my back hurts more, my perfect gums are once again inflamed, and my stomach is having a party.
This made me draw a striking parallel between this and software development.
Normally, when we write code, we're aware that we have latent issues there, which we keep under control and seem not to affect anything, but any minor bug or new feature can bring them to the forefront and cause a lot of trouble.
These issues might stem from a part that's not robust enough (like my gums) or an architecture that's not stable enough (like my spine), and instead of spending the time it requires, we hide it, making it work with the current code.
But it will come a new flu that will turn everything upside down again, causing you to lose hours and hours patching up something that's not right.
I could tell you that the solution is to refactor your code so these problems don't resurface, but let's be realistic.
Just as my body has underlying software (genes) issues that are very hard to change, legacy code is often very hard to refactor.
Sometimes, we might need to seek a middle-ground solution so that those flus cause the least impact possible, either by creating more stable structures around them or by creating tests that allow us to quickly detect when these issues arise.
And most importantly, by knowing your weak points (and those of your code), you can direct your efforts to keep them at bay and minimize potential issues.
As for me, I do core exercises every day, follow a Low FODMAP diet when my gut acts up, and have a half-hour nightly oral hygiene ritual.
And you? What do you do with your bugs?
Reply