Or, why doesn’t the Red Gate “Check for updates” service automatically download and install software updates?
Disclaimer: everything in this post represents my view only and does not necessarily coincide with the viewpoint of Red Gate Software Ltd. On the other hand I’m not trying to be deliberately contrary, I’m just saying don’t take this as the official company line.
So why am I writing about this? Well somebody recently asked me about it and to be honest the entire topic makes me quite grumpy, so I thought, what the heck, I may as well post an opinion. Maybe somebody will have something intelligent to say on the topic.
“Check for Updates” first appeared in a Red Gate product around two years ago, or maybe a little longer, and when it was first mooted we did indeed consider an automated solution. I mean it sounds great. Users just get a little notification and then the update is downloaded and installed and they never even have to visit your website. It’s a technocrat’s wet dream… or is it? You see three years ago I was all for this, I was one of the people who was saying, “Hey, look we can just automate this whole process and make it really easy for our users, and won’t it be great?” And I was disappointed at what I saw as the limited scope and vision of the proposed “update service”, which we now have. I mean all it does is tell you when an update is available and take you to the corresponding web page when you click on the link for the update. And you even have to click on the menu item yourself: it won’t even check automatically and give you a nice little flashing notification or anything. I mean, how much of a token effort is that?
Well let me tell you, three years of InstallShield, Paint Shop Pro, Quicktime, iTunes, and Steam update notifications later, not to mention Real Player (or whatever it’s called these days), and all the others, it’s very clear to me that we soooo did the right thing. I think I’ve now managed to disable most of them, but these things all pop up their own update reminders with their own home-rolled update solutions. Of course, I now don’t get any updates, which is also really a part of the problem.
Here’s an example. You’re in the middle of writing some code in Visual Studio, in the zone as it were, and suddenly up pops the most unnecessarily large dialog box in the history of computing telling you that updates are available for Quicktime and iTunes. So I’m having a chat with my colleague Andras this morning about case-sensitivity and binary collations in SQL Server over at his desk, and he’s showing me around some code in SQL Compare, and up pops that chuffing dialog, which he said something very rude to and then dismissed with a contemptuous click of the mouse.
I felt like writing a letter along the lines of, “Dear Apple, Whilst I think you make cool computers, and the iPod is very funky, there are no words in the English language to express how much I never care that a Quicktime update is available…”
Not only do these things have their own special way of rolling out updates, but whereas with Windows you can install SUS so you only download updates once and then push them out to client machines on your network, with Installshield et al each and every client goes and downloads the updates individually, and if you’ve got a hundreds or thousands of clients what’s that going to do to your bandwidth and internet connectivity? (For obvious reasons, this is probably less of an issue with Steam.)
In short, it sucks.
Really badly.
And I’m not anxious to contribute to this problem.
Honestly, all third party software update services need to be dumped in room 101: seriously, pick any two word phrase in the English language where the second word is “off”, followed by an exclamation mark, and apply it to yourselves. Really, you all suck.
I also don’t think we’re anxious to roll our own full blown Windows Update style technology that doesn’t suck, and that we’ll then have to support and patch, and assign valuable (and expensive) development resources to, when Microsoft already have a perfectly good solution.
Which brings me on to my next point, which is that nowadays I believe it’s possible for ISVs to roll out updates using Windows Update, which sounds a whole lot more sensible to me:
- You only get one montly update notification as part of the standard Windows Update functionality, unless of course you’ve configured it to check more or less often.
- You can use SUS so you only download each update once.
- Windows Update works really quite well and sucks a whole lot less than everybody else’s solutions.
- You don’t have 53 different “agent” applications of varying degrees of half-arsedness sitting in your system tray or running on startup, that poll their respective vendors for updates, and sometimes display their popup notifications simultaneously above the system tray.
One downside is that you have to trust that Microsoft won’t do something nefarious with your application, like, for example, reverse engineer it, after you make it available via Windows Update. Frankly though, if they wanted to do that they could just download it from your website in the first place. Or just buy a licensed copy. It’s not like they don’t have the money.
On a more serious note I think these issues might put it out of reach for a lot of companies, which I think is a shame:
- I can’t help thinking you probably have to jump through a lot of hoops to get updates for your application accepted for distribution via Windows Update. Probably too many hoops to make it viable for small to medium ISVs due to the overhead in terms of staff time required. Maybe there need to be different levels of certification.
- It might cost a lot, and again this might put it out of reach for small to medium ISVs. On the other hand given the amount of software that’s out there, expecting Microsoft not to charge for it at all seems more than a little unreasonable.
I’ll admit I’m being somewhat idealistic here, but wouldn’t it be great if there were some way to keep all your software up to date using a single mechanism rather than having a different method for every vendor? And whilst it’s not often that I play the Microsoft fanboy, why not Windows Update? As I’ve already said: it works, and whilst there are many ways in which I’m sure it isn’t perfect, it seems a lot less imperfect, and a lot better thought out, than everybody else’s solutions.
Maybe there is something else out there: I could probably live with Windows Update and one other update service, but not half a dozen. Or ten. Or more.
There, I feel calm and rational again now. 🙂
Load comments