Major product upgrades – is your current version good enough?

Releasing new products is hard. Releasing major upgrades can be harder, but for different reasons. On the one hand, you want to persuade your current customers to upgrade; on the other you don’t want to strongarm them, bleed them for cash or leave them resenting you. From your perspective, supporting older versions of products is time consuming, but from your customers’ perspective there are often diminishing return to upgrades.

The more mature a product is, the harder, the riskier and the more expensive it is for customers to justify an n+1 product upgrade. And from your perspective, your n+1 version product has stiff competition: your version n.

This is truer for some products than others. It’s relatively easy for you to try out, and then upgrade to, the next version of SQL Compare, say. It’s a third party tool that you can evaluate with little impact, and uninstall if necessary. If you judge the benefits outweigh the few minutes of evaluation time and the upgrade cost of a couple of hundred dollars then you buy it. If you don’t, then you don’t. Easy.

That’s not true for other products though. The hardest are mature, server-based, enterprise-wide, critical systems. If you’re a SQL Server customer, for example, then you’ve got a difficult decision ahead of you. Should you upgrade to SQL Server 2008 when it’s released? The upgrade costs could be enormous, so the benefits need to be huge. You’ll need to retest your current applications, evaluate the software and plan a roll-out. And that’s before you even consider the direct costs of upgrading. At up to $25,000 per processor those can be significant.

Two and half years after the release of SQL Server 2005, our stats show that only around 50% of people have upgraded from SQL Server 2000, a platform that is now eight years old. So what will the adoption of SQL Server 2008 look like?

According to SQL Server Magazine, somewhere between 10 and 15% of people will move to SQL Server 2008 within about a year of its release. Somewhere between 60 and 70% have no plans to move to SQL Server 2008. Back in 2006, the top reason for not upgrading to SQL Server 2005 was because there was no compelling business reason to upgrade. If that was true for the SQL Server 2005 upgrade back then, it’s doubly true for the move to SQL Server 2008 now.

There’s another reason I think uptake will be low. A lot of us have been stung by the latest versions of Microsoft Office and Windows Vista. In Sketching User Experiences, Bill Buxton uses the example of the typewriter keyboard. Say you’re a keyboard manufacturer and you find a way of re-arranging the keys of the standard keyboard. Usability tests show it’s easier for beginners to get to grip with, and it ultimately leads to a 10% increase in typing speeds, both in novices and experts. You still wouldn’t release the new keyboard: the several billion people who are comfortable with the current, inefficient, keyboard would find it irritating, confusing and slow to use. They would never upgrade. I put Office 2007 and Vista into this category, with their arbitrary new ways of doing standard tasks.

Although SQL Server 2008 has no equivalent to the productivity-destroying ribbon bar in Office 2007, I do think that Microsoft’s recent history with product upgrades will make people wary and skeptical. It certainly won’t push them to upgrade quickly.

On balance, people will upgrade to SQL Server 2008 very slowly. Clearly, that isn’t in Microsoft’s interests though: they, logically, will be trying to persuade people to move from previous versions. In particular, they’ll be trying to persuade people to leapfrog SQL Server 2005 and move straight from SQL Server 2000 to SQL Server 2008.

One strategy they might use is to withdraw active support for SQL Server 2005. SQL Server 2005’s second service pack was released about a year ago. Microsoft currently have no plans to release more service packs for SQL Server 2005. This  might make short-term sense for them, but it’s not the right thing to do for their customers. If I’m right, and the uptake of SQL Server 2008 is slow, then Microsoft should be looking after customers who are unwilling, or unable, to upgrade immediately. People are going to be using SQL Server 2005 for another five years at least, and they need to be supported.

I think Microsoft are persuadable – there’s a poll running on the Microsoft connect site where they’re gauging feedback. If you use SQL Server and don’t have plans to upgrade immediately to SQL Server 2008 then I urge you to make your voice heard and push for SQL Server 2005 service pack 3. Here’s the link:

Microsoft will eventually do the right thing. They’ll have to. Either they’ll do it now, or they will backtrack and do it later, much like they’ve had to extend Window XP’s life. They don’t even have to write a single line of code or test a single function for now. All they need to do is commit to doing it, some time in the future, to keep their customers happy.

Go on Microsoft – keep us happy.