I have written about if before: updating programs on your computer – if you’re not using a Linux distribution, that is – is a total and utter mess. On Windows and Mac OS X, there are roughly four ways of updating applications. The application notifies of new updates, and then downloads them when you click ‘yes’, the application updates from within the application itself, or the application requires a special update program running in the background. These are all quite annoying, since they interfere with your workflow (as opposed to, say, running “apt-get upgrade” every morning). The fourth method is the official vendor channel, Windows/Microsoft Update in Windows and Software Update in Mac OS X. Paul Ellis argues that to alleviate the mess, Microsoft should open up Microsoft Update for everyone else – and similar arguments are made concerning Apple’s Software Update.
Why not open this up for any program on your system? This could be another feature to help differentiate Windows Vista or Windows 7 from the competition (OS X or Windows XP). This would also address one of the pain-points to “boxed” software that web applications don’t have.
While the idea seems quite logical and practical, there are a number of serious problems with this proposal. The biggest problem has to deal with infrastructure and the technology to support it: how on earth is this going to work? Ellis argues against a system where Microsoft hosts 3rd party files (like Linux distributions do), so we would need a system where 3rd party vendors and developers notify Microsoft of an update or a new version, and Microsoft would then have to notify all the users that installed this application. Not only would this cause a massive tangle of red tape, it would also cause major delays for getting updates out the door – not something you’d want when the update in question fixes a major security hole.
Another issue is that of sheer size. The pool of 3rd party applications for Windows is large, really, really large. There are a lot of applications and utilities out there that are written and maintained by small groups of people, or maybe even by just one individual, maybe even in their free time, for fun – how would Microsoft ever get all these applications to update via Microsoft update? The end result would be that 99% of the Windows applications still wouldn’t work with Microsoft Update.
Effectively, you would be creating a fifth method of updating applications, instead of consolidating the others: 3rd party applications that are updated via Microsoft Update. You would not make the updating process less complex at all – you would only make it even less pleasant.
Until everyone sits down and really starts discussing about changes in the way we currently manage our software, we will be stuck with the mess we have today.