On Software versioning and us

Femo
4 min readOct 13, 2021

If you work in the development and shipping of code or the world of software, Semantic Versioning will be a familiar concept to you.

The idea basically is to keep track of changes such that with the army of teams building varying components of the same product, we don’t lose track of what has been done, when it was done and what needs to be done next.

It’s part of the continuous development, continuous improvement framework where feedback goes on endlessly and developers continue to improve on the product with feedback from testers and ultimately, the customer or end user.

The best way to explain this is your phones running updates regularly on apps or the entire phone itself. Someone may have discovered a flaw or bug or security vulnerability or for lack of something more adverse, a better way to use the app and as such, these minor improvements have been made.

Sometimes, we don’t even notice these code changes that are pushed. All that we know is that overnight, our phones updated their software. Everything still looks the same to us. We may not realise that a bug that could cause much harm to our information was just written out of our phones. We may not realise that more functionality in the back-end may have been added to make that app work better.

You may also notice that Facebook or Twitter or similar has made changes sometimes too or how that favourite go-to app has moved things around.

The point is through all of this, there is continuous work being carried out to make the app, the product or the service better than it was last week or last month or last year.

Versioning also helps to track all these changes such that if someone wakes up someday to re-invent a known wheel or to work on the same idea again, changes can easily be tracked and the one that sounded like a great idea two hours ago may be clearly seen as redundant and not having a use simply because someone else had thought about it earlier and fixed it.

In short, it saves the company a lot of money on man-hours wastage or going over the same issues again. It improves productivity and allows for the conversation around collaboration to be rich and fertile.

Now, let me get to the point of this conversation.

For the most part, in our lives, careers, relationships, marriages, families, faith, causes and much more, many of us simply do not thinking ‘versioning’ as part of our human existence.

Do you ever sit sometimes to take stock on your life and ask why you keep repeating the same mistakes or ending up with the same kind of toxic friends or ending up in the same kind of jobs that don’t go anywhere or the same kinds of issues even when you can locations or habits?

Do you ever pause to ask important questions that track changes in your life, analyse your results and make a plan to making small incremental changes to move your life in a better or different direction?

Some of us journal daily but how many of us actually go back to revisit these journals? Do we really take stock and measure when expectations are met, when answers come to questions, when red flags show up or when patterns of misfortune or misstep show up?

Do we stop to ask why we do what we do when some triggers show up? Do we ask why our finances struggle and plug holes in our pockets?

With all these scenarios, it’s easy to think upon the adverse or negative but similarly, do we look at the positives and find ways, for lack of a better analogy, to bottle it and sell it to others? Maybe, you’re not even wired that way but do you think of ways to reproduce such progress and success in other aspects of your life?

The code of your life shows that while you’re doing well on the faith front and doing well on the career front, there are bugs in your marriage and parenting. Do you ever stop to figure out why those other code artefacts work and these others don’t work?

Importantly, do you make these changes? Do you track the changes and see if it was the same type you made four years earlier, that didn’t work or will you revert, repeat and rinse the same solution that didn’t work until eventually like that blue screen of death we see on Windows machines, that part of your life crashes?

To end this, I am seated here tracking a build session at work and having my phone update the software (and hence why all these thoughts are flying around) and I wonder if your life needs revamping totally, if you need to make incremental changes for the better or maybe your just need to revisit a version of a change you made before that didn’t work to see if you can tweak it to make it work this time around.

It’s never too late to be a better version of yourself; so be encouraged to do something about it today.

--

--

Femo

I am Femi Aboluwarin a.k.a Femo. I live in London. I work around computers all day and when I'm not, I'm making music or musing about life all around me.