Sunday, July 10, 2011

The browser version race

The browser wars is a good thing, since you have the browsers competing for the market share by offering improvements and new features. The truly winner of the browser wars is the browser user.

However, there’s another war in course, which I read about a couple weeks ago, and they named it the version race, or the version wars. It seems that providing new features and improvements on the browsers is not enough anymore: one must provide a freshness of a “new browser”, and this is being achieved by increasing the major version number each new release. As a programmer myself, I found it really annoying.

Version numbers have their significance, and it’s being lost now. Let me explain one of the most common interpretations: for example, let’s take the “1.7.4” version number. Here, the “4” is the release number, and it should be increased each time the developer publishes some correction, bug fixing or some minor feature which doesn’t break compatibility with the current version.

The “7” is the minor version number, which is increased each time you have a significant new feature, maybe with some minor compatibility break (usually corrected by the program itself), but despite the improvement, you’re still on the same major version.

And the “1” is the major version number, which is increased every time you have a big change on the program, often with a significant part of the source code being entirely rewritten. It’s almost like a new program under the same name.

I remember when Google Chrome browser was launched in 2008, and everybody was amazed with its fast evolution, with a galloping major version number increasing. Then at some point, with so many major version numbers (and minimal improvements), people simply didn’t care about it anymore. In the future, when Chrome really have something new to show… it will be just another version number, because they wasted the whole arsenal of numbers already.

The worst: Mozilla entered the version race with Firefox 5 in June of 2011, which should have been versioned just as “4.1”.

An alternative to this is join the Microsoft boat, which likes to use years as version numbers, like “Office 2010” – although internally they follow the regular version number convention. This year-versioning is good, because it gives you a clear sense of time, you quickly associate the program with “how old” it is. Maybe a month/year versioning for the browsers, since there are several versions within a year. But what about “Chrome 7”? What do you associate it to nowadays?

Version race leaves a blurry track behind the software evolution. Stop the version race.

No comments: