# Is the concept of versions out of date?

I recently noticed some copy stating that something was compatable with "Firefoz 3.6, IE 8 and Google Chrome". I realized I don't know what version my copy of chrome is, yet it's always up to date. Meanwhile I'm painfully aware of which version of Firefox and Internet Explorer I have. Then I realized how much better everything would be if I weren't. I have better things to do.

Google Chrome keeps up to date automatically and, being a web browser, it almost always has an internet connection when in use, so it updates itself all the time. It also does this almost silently; no user interaction is required to install updates, except Chrome must be closed for updates to install. If the user doesn't close Chrome for a while after an update is applied, a little notification tells you that you can update Chrome by restarting the browser. Some consider even that to be too much interaction.

Obviously I can check my exact version number for support/debugging reasons; technically versions are just as real as they ever were. The difference is that the version number only "exists" for technical reasons; versions should not be a barrier to normally interacting with the product.

It's important to note that automatic updating systems that require user input are often extremely annoying and thus often ignored, so I don't consider this the best solution. I'm talking about silent (as feasible), automatic updates.

In the era of Web Apps this seems to be getting more and more comment; after all with a web app the burden of updating is on the website, not you. Mobile operating systems like iOS and their apps seem to be leaning toward automatic updates as well; the Android store now allows you to automatically update applications by default, only asking permission to update an app when the app requires different "permissions" to use things like GPS ect.

Versions are an artifact of development; why should the user be burdened with them? One of the most painful parts about using some software (like a new operating system) is doing updates, depending on the level of user interaction involved.

Should normal users have to care about version numbers in the age of always-on Internet connectivity and Web Apps?

-
"I recently noticed some copy stating that a site was compatable with "Firefoz 3.6, IE 8 and Google Chrome". That's a very 1990s web design fashion ! –  PhillipW Dec 2 '11 at 17:36
It wasn't a "site" it was a service or plugin or something, I couldn't remember what i was though. The point was just "huh, they don't even care about which version of Chrome" –  Ben Brocka Dec 2 '11 at 17:43

I definitely wouldn't phrase it as Versions are an artifact of development since in this age of having real source control, a version number that includes a source control ID is critically important for debugging any customer issue.

The importance of marketing a version number really depends on the revenue model of the product.

For products that are one-time purchases, like Microsoft Office, the only way they can keep generating revenue in the future is to offer a new version that you would have to purchase. The marketing of the version number is critically important to their business model.

But for products that are free or ad-supported or is subscription based, etc, the marketing of the version number is not as important — the "product" is. Chances are, in those modes, the product is most likely being updated and improved constantly — compiled, tested and released often.

-
I'm a dev so I certainly understand having the version listed somewhere is critical, but users shouldn't be aware of versions unless someone asks them to check that version. Products that market by version are certainly different, I neglected to consider them. I'm not sure I find their model superior to a subscription model though. –  Ben Brocka Dec 2 '11 at 15:36
Sometimes versions still matter, though. For example, enterprise networks often require a new version be vetted before it can be used by users. Google Apps require a minimum version to run. It's conceivable that some apps won't work on some corporate networks. This is usually more of an artificial limitation (e.g. imposed by overzealous network admins) than any real limitation, but such things do still exist today. Until we can convince network administrators that developers have network security's best interests at heart... –  phyrfox Sep 14 '14 at 8:40

I'd have to answer: yes in theory, but in practice, no.

Due to corporate firewalls preventing automatic updates, old but still supported versions of Windows Server still used in enterprises and general user reluctance to accept updates the concept of version numbers is still very much with us.

It could be turned around too - what about the tech-savvy users who purposely use the Developer Builds or Beta Releases of browsers that are released? Certainly for browsers like Firefox this renders some add-ons incompatible. Should we be developing to cater to these users too? This would mean not only including 'backward compatibility' but also 'future-proofing' the development. You can't cater to everyone everywhere sadly. It really depends on the audience you're targeting. Perhaps in the future we will have only one standard but we can't rely on users being able to have the most up-to-date browsers. Even if they wanted to be on IE9 that's not possible for a lot of users.

-
Reluctance of accepting updates is part of the reason I think "versionless" software is so effective. It's complicated, it's annoying, it's slow--take it out of the equation. Leave extended release versions for slow businesses, most server packages do this already. –  Ben Brocka Dec 2 '11 at 15:38

When you provide an auto-updated product, you must be sure to keep 100% backwards compatibility. In this way your product behaves as a service and users do not need to be aware of versions.

However, if your product changes radically the way it is used, it is not convenient to push this change to the user without prior info

-
I completely agree. The service can require "Firefoz 3.6, IE 8 and Google Chrome", with Chrome without version because Chrome is very young... But in a few years, I guess that "Chrome X"-compatible components may not be compatible with the up-to-date version. If they radically change features, I guess they'll to add a version OR change the product's name –  Julien N Dec 7 '11 at 17:16

Why a user should care about versions:

• interoperability with other products (plugins, operating systems, etc.)
• knowing that they are update to date using secure internet tools

Why a user shouldn't care about versions:

• they just want to get their work done

Why a software company should care about versions:

• marketing
• support
• development

Why a software company shouldn't care about versions:

• N/A (They really do need to care)

How things are changing:

• many desktop apps are now auto-checking for updates and can be updated with one-click
• software distribution networks (Steam, The App store, The Mac App Store, Android Marketplace, etc.) can now alert and auto-update software for you.
-

In the ever-increasing world of apps on multiple operating systems and/or OS branches, version info is crucial.

-

Back in the not so distant future, some slaves didn't even have names, real names, just a nickname or a group name. Names didn't made much sense in that context, the same reason why farm animals don't either. But the difference here is what you are inferring:

• The software does not need a version because it's always up to date
• The function of the software is more important than everything else
• The software is nameless, versionless, just the frame to use web apps or pages
• The user has no control over this software functionality or features lost

This things are what google thinks about this version thing. Open Source on the contrary, thinks that versions are the best thing ever. It gives the users information, control, and knowledge of what's going on. And that is power. Google wants that power. Another example of this thing is Apple. What do you want? Power for the users or power for the developer?

-
I don't think they're mutually exclusive; in open source the Latest release is always the big one, in production one would only need the non-latest branch for compatibility reasons or preference. That's a development issue though and the apps I'm talking about are for end users, not developers. I certainly wouldn't suggest taking the version numbers off the latest PHP/MySQL releases, but I certainly would off the latest Adobe Flash and Internet Explorer if I could. –  Ben Brocka Dec 2 '11 at 16:40
I forgot to add the licensing factor, freeware don't need a version at all, like for example Chrome, but paid software does, to know exactly what you have and what you'll get. Of course, one thing is "Office XP" or "Office 2003", and another thing is Microsoft Office Word v15.2.45.2 . Do you mean the later? –  alfa64 Dec 2 '11 at 17:55
I do not understand the slavery or farm animal analogies (BTW, lots of farms name their animals) –  DA01 Dec 2 '11 at 18:01
@DA01 :When function is the only important thing, people tend to strip everything else, and sometimes not understanding what you remove is just an excercise of power. –  alfa64 Dec 2 '11 at 19:54
I see where you are going now. Still not sure if it's the right analogy, though, as versioning isn't really naming. –  DA01 Dec 2 '11 at 19:59

It completely depends on the product and target audience.

In many large corporate environments running line of business apps, version numbers are a critical part of the release process. The IT guys want to know that this specific version of that application is supported on these operating systems and without that info you're not getting installed.

Similarly, if you mention that your app will auto-update their clients underneath them then you'll be politely shown the door.

If, on the other hand you're deploying directly onto end-users desktops then you have more latitude to be a bit more 21st century about things.

If the application can share data with other products or versions of itself then versions also become important - if you have the latest version you may not be able to share data with other users who have older versions, so people need a way of identifying exactly what they have.

However it could be argued that those aren't "typical" usage patterns. To answer the question - I don't think end users directly care about version numbers, although they might care that their installed version is "the latest". Just remember that end users might not be your only customer!

-