Hello, Joey! Actually, build numbers address the points you have raised... and they are there to stay just because they are technically impossible to get rid of
My comment and question was about product versions specifically, the way they are today:
- Do we keep doing what we did before post-v10, naming releases like 10.1, 10.5 using our best judgement to decide how to call this or that version? Not only this is a waste of time to come up with every time (and people will always complain the release was too major or too minor for the assigned version number) - but most importantly, having these really slows down the communication. Because 99% of people who ask questions about some functionality or issue only call out this version number, when what usually matters is full build number. Actually, the same issue with vSphere - they tell me they're using vSphere 6.5, but there are 1.5 years of update releases in this vSphere version... and everyone knows that vSphere 6.5 of 2016 is so different from vSphere 6.5 of 2018.
- Do we switch to years, like the majority of software gorillas are doing? For example, Veeam Backup & Replication 2020. The small benefit over the existing approach is saving time from not having to come up with version numbers, and then defending ones later from folks who feel it's wrong or unfair. But the drawback is added confusion when you have more than 1 release per year - you still have to refer to build numbers in this case.
- Or do we do something special that you always wish software vendors did, but few or no one does? This is the kind of feedback I am looking for here.
For example, Ryan mentioned how Google Chrome approach can be a valid one - the comment I really wanted to hear, because I too like their approach a lot. Naturally, it is the closest to my "ideal" release naming, which is build numbers - except you don't have to remember all the build number digits, because the "major version" number is unique for every build that becomes generally available. So effectively, they roll with shortened build numbers.
And because they increment the "major" version number every release no matter how small the release is - this automatically ends every possible argument about actual majority of the given release. This number simply does not translate into one and doesn't represent one, period!
Also, because their "major" versions started to increment so fast, people quickly stopped using those when talking about Google Chrome (while still saying "Internet Explorer 10" for example). Which is how I'd love to see Veeam products referred to as well. The only place where you see Google Chrome version now is in 3rd party system requirements type of documents - or in issue descriptions when certain release breaks something.
Last but not least, I believe this approach maps very well to some update shipping process changes that our R&D would very much like to implement sooner rather than later.