Should semantic versioning be avoided?

I was researching versioning which I’ve written about in a previous article. I came across a curious notion about the use of semantic versioning. There seemed some valid reasoning behind it, but ultimately I’m not sure it matters.

Semantic versioning is detailed here It is an attempt to create a standard versioning system. It proposes that version numbers and the way they change convey meaning about the underlying code and what has been modified from one version to the next.

The idea I came across during my research, was that if you apply a major number change the users are expecting lots of new bells and whistles. A major increment from say, 2.3.4 to 3.0.0, suggests a new interface or a raft of new functionality. However, to developers it could also indicate a rebuild of the API or a restructuring of the underlying database.

Those users are going to be very disappointed when they find that after this major upgrade everything looks exactly the same. Through their disappointment they don’t even notice that the new database structure is loading reports 1.8 seconds faster!

Having considered this, I have a theory that the mobile marketplace, particularly Apple and Google are very much to blame. When Apple release iOS 15 or Google come up with Android Humbug they really do the hard sell on new features to create a sales buzz. I believe there is a knock on effect that may impact all software releases. Many more people are aware that a new version means jazzy new features. In SaaS software however, this isn’t always the case.

There is one easy solution though – keep expectations low and never change the major release number. Version 1.452.8530 has a few new tweaks (oh, and a whole new interface. Shhhh!!).

Leave a Reply

Your email address will not be published. Required fields are marked *