Obsolete! When the next version of operating system comes out, the previous one is deemed unwanted. This happens in a number of industries including automobiles, fashion, and entertainment devices (games and video players).
The question becomes “How often and for how much?”. In Microsoft’s case, the length of time is based on a number of factors including competition, hardware changes, and new software models. As a vague estimate of time for the various modern releases of Windows, let’s go to the list:
1985 Windows 1.0
1987 Windows 2.0
1990 Windows 3.0
1992 Windows 3.1
1993 Windows NT 3.1
1995 Windows 95
1995 Windows NT 3.51
1996 Windows NT 4.0
1998 Windows 98
2000 Windows Me
2000 Windows 2000
2001 Windows XP
2003 Windows 2003
2007 Windows Vista
2008 Windows 2008
I found this excellent chart of Windows operating systems on Wikipedia:
What’s interesting about this chart is not only how many releases there have been but also how many Windows operating systems which are considered obsolete. Currently only XP, 2003, and Vista would be considered modern. Vista will eclipse XP as acceptance grows and more people buy PCs with Vista installed.
The real question is “Do these operating systems need to become obsolete?”. Technically, the answer is probably no. Marketing wise, the answer is yes. Most people want the latest and greatest. Usually these very same people don’t realize the costs of doing so.
Currently there is some push back in the enterprise market to accept Vista. Many customers have said that they want to wait for Vista until things settle down and are happy to stick with XP until that happens. Sometimes being an early adopter has its benefits but sometimes (most of the time) there are some unexpected costs. In Vista’s case, it has a higher than normal hardware requirements. It also has many new models of doing work (security and graphics for example) that will take customers awhile to get used to. It is far more likely than amateur home consumers will accept it because they do not know the history or even care.
The point of this post is to point out that operating systems no longer need to become obsolete. With the advent of virtual machines, it is now possible to pair an operating system with a VM and continue to run that operating system on other platforms without trouble. In theory, this would put pressure on Microsoft to find ways of discouraging this kind of practice but actually the opposite looks to be true. There have been many documented cases of Microsoft encouraging customers to use VMs to run older operating systems like NT 4.0 .
Sometimes it seems like companies upgrade for the sake of upgrading. There seems to be some kind of lemming like effect that means that companies just follow each other over the cliff with regards to doing massive upgrades. The carrot to upgrade must be big enough to attract many but I also suspect that it just becomes a cultural decision more so than a feature or benefit decision.
The Office suite seems this way to me. Most people would probably be happy with the functionality of Office 97. I can confess that I have kept a copy of Office 2000 alive for our home use and since I only use fairly basic operations, I don’t think we need to upgrade. Most businesses would upgrade regardless.
Part of the reason why is fear. If you have an old copy of software, in theory it is more likely to be attacked. This is true of motor cars as well. Thieves have learned how to break into old cars (given time to know how) much like hackers could know the weaknesses of older software. Around Brisbane it is common to hear about teenagers stealing cars that are at least 15 years old. They are stealing cars often older than they are so they can have a bit of a joy ride. I suppose the same is partial true for the hackers as well.
If the company providing the software refuses to fix security issues or fixes in general, then the software could indeed be doomed. It would only take one or two major unfixed flaws to shutdown a major operating system release. This is probably the core secret of why operating systems become obsolete.
Every software company has the concept of end-of-life when it comes to products. Typically this means that the product will not longer be supported or sold. Sales usually stop before support but there are probably no rules for that.
Going back to Windows, I wanted to share some observations over the last 20 years.
Windows was created as an answer to another company providing a UI for DOS. Windows was originally seen as an extender to DOS and was first created in 1985. The ensuing years brought interim releases in 1987 and 1988, but it was not until Windows 3.0 in 1990 that Windows really caught on. At the time, Windows was still largely 16-bit but did have code that understood what it meant to be 32-bit.
Instead of diving into the history from my perspective, I’ll just jump to this history from an obsolete point of view. If you would like to read more about Windows history, check out the large Wikipedia article.
The 16-bitness died with the introduction of Windows XP. The entire family line from Windows 1.0 up to Windows Me were essentially merged into the NT code base.
Roughly, that puts the lifespan of that family of Windows to 15 years (1985-2000). If you look at DOS, it lived a similar lifespan of 15 years (from 1981 to 1995). Notice a possible trend yet? It means that the NT based has a lifespan as well. Given that NT was first released in 1993 and first became popular in 1995, that puts its potential life to around 2010 based on this simplistic formula. Based on the heavy investment and focus of Microsoft, it is clear that this will not be true. However, everything must have an end. It’s the nature of software.
It is clear that each release has a limited lifespan. I would estimate that the average range is about 6 years. At one point it was obvious that Microsoft wanted to go faster than this but the industry is not ready for such quick churn between major releases. Perhaps the good news is that new releases are that much more hard to produce which injects complexity and time to the release schedule. Obviously the gap between 2001 and 2007 was longer than Microsoft expected for the transition between XP and Vista.
Is there a conclusion to all this talk? Perhaps not. I have been dying to write about the relationship between releases and becoming obsolete. I’m usually an advocate for things not becoming obsolete.
Here’s the concluding point: Shouldn’t the industry try to write software that could live for twenty years or more? Shouldn’t there be a way to actually invest money in a solution instead of just dumping money into completely new releases? Can’t there be a way to support software for as long as someone wants to use and pay for a service?
Customers should be allowed to run as long as they are willing to pay a service. In fact, the model of software should shift from a sale of a product to a sale of a service that continues as long as the customer wants it. Any upgrades would be included but also any fixes for their operating environment would be taken care of. In a way, it is the reverse of anti-virus but with the same result. The customer is paying for the software working smoothly for as long as they want. The bugs were written by programmers unlike how viruses are written by hackers but the desire for long term support is still there.