Recently, the Mozilla team changed the upcoming Firefox 1.1 release to version 1.5 instead. This got me thinking about version numbers in general, and how silly they are. I have gotten trapped in this kind of thing before, so I'm no less guilty than the next guy. Here's what I think is wrong with version numbers:
Actual Numbers are Too Vague As they are, version numbers are a little too vague. How is 1.0.3 different than 184.108.40.206? Well, we put in a teeny-tiny change that didn't warrant the 0.0.1 number bump. So why didn't you name it 220.127.116.11.0.0.1 if the change was so tiny? Well, it wasn't that tiny. Sheesh.
Leading Zeroes This is one place where I have been caught before. Typically, a leading zero (as in 0.8 or 0.9.1) indicates that the software is in a test or "pre-release" phase, and that is just fine. But there are far too many abuses of this numbering scheme. Firefox extensions like ForecastFox or Web Developer (both of which use leading zeroes as of this writing) are far too mature and stable to warrant the leading zero. Go to a 1.x release already, dammit!
Version Numbers Too Long The maximum length of any version number should only ever be 3 positions long: "X.Y.Z." That's it. If you want some sort of date stamp for nightly builds, have that as a separate item; not as a part of the version number. I should not have to see versions like 1.03.45.1200.129393.120202 any more. And non-sensical stuff, like Adblock's version of "0.5 d2 nightly 39" should be outlawed from the planet. Please, use numerals only.
Arbitrary Number Change Decisions This kind of stuff irritates me, but I'm also guilty as charged. The Firefox team feels like the changes they've made are "worth more" than a 0.1 version number bump. I heartily agree. But this 0.5 version bump is a joke. Just bump the major version number! Go directly to 2.0 - do not pass Go and do not collect $200. What's so bad about that? The next release, if it's just as big, can be 3.0. And then we can go to 4.0 if necessary. Everyone is so scared of their version number becoming too "large". Think about it: how many programs out there are version 12.0 or version 29.3? Not many. Once we reach double digits, we feel like we have to come up with a fancy name (like "XP" or "2005" or whatever else). The AutoCAD folks had it right years ago. "Buy AutoCAD 14.0 today," they would advertise. Now it's simply AutoCAD 2006. How cheap. What happened to AutoCAD 20.0? That's just as "cool" sounding.