Hyper major versions

In software, badly-named versions cause me headaches. Java should be renamed at every major version to release it from its legacy. All major systems should adopt the code-name convention used by many operating systems ("Mountain Lion") and realized most effectively by Ubuntu ("Raring Ringtail").

Another versioning grief I have is with what I call hyperactive major versioning or HMV, the convention popularized by Chrome and then adopted by Mozilla's Firefox and Thunderbird products. This is the approach where every few weeks (four to eight roughly) you get another major version.

HMV is why we're up to Firefox 17/Aurora 18 now. It's why Thunderbird tells me it's version 17 even though it looks and functions essentially identical to Thunderbird 5.

I can see the surface appeal of this: it demonstrates a continuous and rapid release cycle to users. It compounds the feeling of guilt that developers want to instill in users when they use an old version for time beyond the warranted lifespan. It might help avoid the IE6 Problem wherein braindead businesses continued to justify the use of IE6 way beyond its zombie-virus infection because "it's only 1, maybe 2 versions behind."

But IE6 was a special case of a product going dormant for years. HMV doesn't really address that.

The trouble with hyperactive major versioning is that it dilutes search. It compounds the search problems you already endure as a result of using numbers for major versions.

An example

I use Thunderbird for e-mail, and I recently became frustrated by its silly conversation summary list that appears in the message panel when you select multiple messages:

I had an IMAP folder flooded with hundreds of extremely large (10+ MB) emails. I simply wanted to select them all to delete them. But it turns out that the conversation list needs to fetch the entirety of each message in your selection range in order to show you that brief preview in gray text. Seriously.

Selecting hundreds of 10 MB e-mails was like telling Thunderbird you don't need to do any work for the next hour or so.

Googlematic to the rescue, right?

So I asked Google about Disabling Thunderbird conversation list and one of the results was

Thunderbird 3.0 - New Features and Changes - MozillaZine

Argh! Thunderbird 3? Well, maybe this feature was added in version 3. Trouble is, they also have some feature that renders conversations into a tree in the list panel. Here we also had terminology confusion: what exactly is the name of that conversations list shown above?

I eventually did find the answer (it's a preference named mail.operate_on_msgs_in_collapsed_threads by the way).

But when I want to find information about more recent versions of Thunderbird, what am I supposed to ask Google?

Disable conversation list in Thunderbird versions 12 through 17 ?

Oops, it looks like the proper syntax is version 12..17. I'm fairly technical and I've never looked for this syntax before.

The problem

Hyperactive major versioning actively combats the community's ability to build up a corpus of support documentation. People may even stop referring to the version number in their ad hoc documentation because they know the version is ephemeral. Does someone contributing to the community's knowledge of Thunderbird configuration quirks want their work cast aside as potentially irrelevant in a few weeks? "Oh, that's for Thunderbird 16, which is so yesterday." I exaggerate, but you get the idea.

HMV attacks the legacy cruft problem I spoke of earlier in the wrong way.

The solution

I propose reducing the version number to a secondary role and adopting named major versions.

For example, imagine Ubuntu adopted rapid versioning. The Raring Ringtail series may span versions 13 through 15, so a general version would be "Raring Ringtail" and a specific version would be "Raring Ringtail 14."

There's no perfect solution here because rapid versioning is designed to shake off the past and propel users forward. That is a good thing assuming it works. (Though I'd argue that automatic and painless updates are more likely to reach that goal.)

HMV also means essentially no one knows which version of Thunderbird introduced any given feature. It was somewhere in the past year, but does that mean it was version 6, 10, 13, 17...? Do I care any more?

Forget it, I'll just leave the version number off.
About this blog