Google   web blog

Monday, June 12, 2006

Upgrading Applications

Vast majority of successful pieces of software have more than one version. I can’t think about any one-version application which achieved success, but probably there is one or even a couple of them. That’s for sure a margin, but even then potential is being squandered. If first version is a success think what can be achieved with another – improved, more mature, based on customers’ feedback.

You want to be successful so you will have the second version – probably a major one, but minor ones count also. Even if only one feature was adjusted, even if only one bit was changed, your users now work on the old version. You need to upgrade the software to deliver new functionalities/bug-fixes/whatever you’ve done to at least some of installations your product has. You need to upgrade unless you don’t care about you current customer, but then I’d give a second thought to your business model.

Upgrade process constraints differ depending on particular system you consider. When having big ERP system upgrade, which covers deep changes in database structures, adding whole new modules etc it’s quite like an implementation process then. Many interdependencies won’t allow you to make it fast and easy. It happens. However, there are bunch of applications that aren’t so complex. Neither are their upgrades.

A couple days ago I found that Pandora has been upgraded. The first thing I noticed was additional little feature which allows seeing full name of an artist and an album name without a click. Earlier there was only the artist name and it was so only unless it was short enough to be properly displayed. To see more you had to click and open another browser window (or rather a tab lately) with this information. It was a tiny awkwardness, but still something that definitely should be polished. And they fixed it without any action from me. I know it’s easy with the web application. On the other hand sometimes it’s not so easy to decide that your application should be web-based.

OK, what about client applications? Similar path was chosen by Google Talk guys. One beautiful day pictures of my contacts appeared. It just happened. I know that behind the scenes there was a new version, which had been downloaded, installed and restarted. I know that, but I don’t care about that. All I care about is that new functionalities were delivered to me and I didn’t have to invest any second to whole process.

Conclusions are:
• Think about upgrades from the very beginning of your application lifetime. After releasing first version it is too late.
• Just give users new features. Don’t wait until they visit your downloads page. They won’t.
• Make the upgrade process as easy as possible. Don’t count on your users’ willingness.

0 comments: