Can Software Updates Be Made Simpler?

Posted by jeff Friday, November 21, 2008 15:00:00 GMT

Generally speaking, I like Apple’s Software Update mechanism more than I liked Microsoft’s Windows Update. It generally seems less intrusive, runs faster, and has a simpler UI (disclaimer: I’m more familiar with WinXP than Vista; if the Vista experience has made it a lot better, be sure to comment to this post).

However, it still takes a lot more clicks than it should, especially for iTunes updates. iTunes seems to update itself more often than any other piece of software I own, and every time there’s an update I have to click once or twice to get past the License Agreement nonsense in addition to the clicks needed to just get the update installed. For minor “point” releases, I wish it wouldn’t ask me about the license agreement every single time:

Agreeing to the terms and conditions of, say, version 8.0.0, should imply that I agree for 8.1 through 8.9. Or heck, through 125.2. Does anybody read these things anymore anyway? Just give me a way to view the license agreement from the Help menu or something if I’m really worried about it.

Software updates should be, ideally, invisible; and when they can’t be, they should be simple to apply. I think Apple has done a good job with making them simple to apply. But many of them could be invisible. Windows Update had an option to automatically download and install (and even reboot if necessary) updates at 2AM. The next morning, updates are applied, and you’re none the wiser. Unfortunately this was a little scary, because there wasn’t a way to select which updates are authorized for automatic installation. It was all or nothing.

I want an option in iTunes where I can say, “Yes, yes, install whatever you want, whenever you want – just don’t bother me, kthx.”

I guess I want something more akin to the experience I have with software like Adium and Skitch. You’re told that there’s an update available, and you have to agree to install the update. After watching the progress bar (can’t anybody think of anything a little more entertaining than a solid bar filling up with the standard color? How about a clown juggling 3 balls, then 4, then 5? Or something?), I get a button that just stays “Install and Relaunch.” Which, unfortunately, is followed by a dialog asking if I want to allow it to touch all my keychain stuff (which I always say yes to). So there’s room for improvement there, too, but overall the experience seems cleaner and faster.

I don’t have all the answers, and I know that client software is supposed to be a dying breed, but I do think it’s time that someone – either Apple, Microsoft, or Linux – figure out a nicer way to install updates.

Speaking of Linux, I’ve never used a Linux Desktop OS. Those of you who have, I’d be interested in hearing about your experiences with operating-system updates as well as client software updates.

Comments

Leave a response

  1. rugal   November 21, 2008 @ 03:34 PM

    i use gentoo as linux distro, and you can simply do a emerge -uD world and it upgrade all the system (but something similar is for alla the distro, it just change the command). Obviously you can do a simple script which update everything by itself without bother you (for gentoo you should btw check the config files, with ubuntu and distro like that i don’t think you’d have this problem)

  2. Ben   November 21, 2008 @ 05:00 PM

    I’m just starting out into Ubuntu linux. The way it manages installed software is great (in my limited experience). Occasioanlly (every day, I guess?) it checks to see if updates are released to any of the stuff you have. If so, it puts a little icon in the taskbar. You can ignore it if you’re busy and don’t want to restart just now (unlike Windows’ “I will reboot in 2 minutes to update unless you stop me” which might appear behind other windows or not at all if you’re in something full screen like a DVD).

    When you click on it, it shows you what it wants to update and you can check/uncheck stuff. Then you hit go, it does a progress bar and you’re done. I’m really liking it so far. And, in fact, this package management is one of the things that I’m liking about it.

  3. Keeto   November 21, 2008 @ 07:00 PM

    In XP, when the system finishes downloading the updates to be installed, it asks the user if they would like to reboot—which for me is understandable, since some of their updates need to be installed before shutdown. But what is unacceptable for me is the fact that even though you click “Restart Later,” the system still pops-up a message every now and then asking you to restart and even having the guts of displaying a countdown timer that tells you it will automatically reboot if you don’t do anything. I know that impatience is a common virtue for man, but it’s a computer! How pushy can it get? And what part of “later” doesn’t it understand?

    OS X, on the other hand, gets most of it right—but I do agree that the SLAs should go. Most of us never really read the SLAs (I know it’s never a joy) and it’s pretty rare for them to change from update to update, so maybe it’ll be better if they just informed the users when the SLAs actually change. And besides, the link to the SLAs are always there at the bottom of the Software Update main screen, so if someone wants to read them (huh?) then it’s never really hard to find, right?

    One thing I am thankful for, though, is the Sparkle framework. This is an example of the biggest difference between the Windows and the Mac software development communities. In my opinion, Mac developers strive more for subscribing to standards-whether de facto or de jure. Just like following the HIG religiously, most Mac developers support de facto standards like Growl and Sparkle, making the whole experience better for the user. Sparkle, of course, is an updates framework which is used by many mac apps, including Adium and Skitch, and as you have noticed, it’s really, really better than having multiple (and highly variegated) update methods. Notify, download, install and relaunch-painless updates that don’t interfere with your work.

  4. ctwise   November 21, 2008 @ 08:20 PM

    My only issue with Software Update is the screenshot you display above. To me, it’s not immediately obvious that the screenshot shows the result of a successful install. There is the green check mark and the small text saying “iTunes: installed’. But you have an unchecked “Install” checkbox next to iTunes. The very first time I ever used Software Update I wondered if the install had failed. To my mind the final screen should show much more clearly that an update has been applied.

  5. Kishor Gurtu   November 22, 2008 @ 08:11 AM

    Google Chrome update rocks. It just updates transparently.

  6. Adam Wiggins   November 23, 2008 @ 01:35 AM

    Ubuntu’s graphical updater is similar in style to the one for Mac OS X, except far fewer clicks – really just two, one to say “start” and another to dismiss the results page. Also, it doesn’t pop up an intrusive dialog, but rather puts a small icon in your toolbar that you can click on to invoke the update page.

    Even so, I prefer to stick this in my root crontab:

    30 3 * * * apt-get update && apt-get -y upgrade

    Thus my system is always up to date and I never have to click anything.

  7. dan quotes   December 02, 2008 @ 04:16 AM

    I honestly loved Chrome, however, I still feel more comfortable with firefox. I do not know why!

    Kishor Gurtu, It is interesting that you love chrom, and you are using IE :)

    Thanks Dan

  8. Shawn Oster   December 05, 2008 @ 06:07 AM

    Vista is more streamlined than XP since Windows Update is baked right into the OS. Vista actually has the option you’re looking for, which is “Install updates automatically” and then you set a time for it to do its business. I never see a dialog.

  9. jtbandes   December 07, 2008 @ 08:00 AM

    That “Install and Relaunch” system and button you’re seeing is provided by Sparkle, which is a nice and simple Cocoa update framework. The Keychain approval dialog you mentioned is (I believe) only appearing because the application is not code signed; I’m not completely positive on this, but I think Leopard remembers the signatures (or something) of the application, and if it has a proper signature and gets updated, you don’t see the dialog. I could be wrong.