Quarter Life Crisis

The world according to Sven-S. Porst

« BubblesMainReunification Day »

X.5 Software Update

1286 words on

Software Update Icon Mac OS X is a form of software. As such it is buggy. And while they usually deny that fact, Apple publish updates for it nonetheless. OS X even ships with its own software update utility that checks - even automatically checks - for new updates on the internet and installs them for you.

In general the installer and software update utilities on Mac OS X work reasonably well, although a few things could probably be said about things like the transparency they offer (NOT). Those who like poking around may enjoy looking at files like /var/log/install.log or the contents of the /Library/Receipts/ folder. In Mac OS X.5 it contains a huge SQLite database in the db/ subfolder as well as all the BOM files in the boms/ subfolder.

The boms/ folder is particularly useful together with the lsbom command. To find out which package installed the file foo, letting a terminal window run something like
find /Library/Receipts/boms -name "*.bom" -print0 | xargs -t -n 1 -0 lsbom -p F | grep "^lsbom\|foo"
can be rather helpful. But I digress.

There are two things which always strike me as odd about OS X’s software update feature: The first is it’s speed. Or rather the lack thereof. While there are all these neatly organised files and databases on the system and Apple usually have no problem serving files quickly, for some reason the Software Update application tends to need ages to determine whether or not new updates are available. Which is both odd and a bit inconvenient. It means you may get to see the following window longer than you wanted to:

Software Update progress indication.

This also gives you the first opportunity to wonder about the strange user interface Apple designed for the Software Update feature. Why a sheet for the progress indicator? Where does the spacing of the progress indicator come from? And don’t get me started on the fact that Apple reasonably localise ‘update’ as ‘Aktualisierung’ for their German software - except for the places where they use the word ‘Update’ or ‘neue Software’, that is. in Englisch is also what I consider dumb use of German (usually seen when stupid/lazy journalists translate English press releases) which made it to Apple’s German GUI here. But the the real insult is that they offer a link to non-localised legalese, I suppose.

Once the wait is over you get a reasonable list of the updates that are available and can read extra remarks on the selected one. Apple being Apple, said remark is void of information in the best case and void of information with a generous dash of marketing diarrhea in worse cases.

Mac OS X.5 Software update window listing the available updates

Depending on the requirements of the updates that are listed, the machine may or may not need to restart after the installation has finished. I tend to find the actual effect of this hard to predict. Occasionally the machine asks you to log out immediately and will only run the installer after the user has logged out. In other cases Software Update will install the new software and tell you the machine needs to restart after it did its job.

X.5 Software Update says it needs to restart the machine now

In that case you can simply ignore that window for days, or you can force quit the Software Update application, or - which happens to me quite regularly even when I intend to restart - you can use the Restart button and the launch a new application while the system is busy quitting existing applications. This will simply cancel your logout process and you got rid of the restart nag.

I tend to find this a bit worrying. My intuition is that the vast majority of software should be installable without a restart being required. However, bad planning on the part of the programmers or the danger of confusing the user may result in situations where restarting the machine is a simple way to ensure that no running applications keep using an old version of a library. Currently the system doesn’t make this distinction clearly enough. Rather, it gives us updates which absolutely force you to restart (by logging you out before starting to run), updates which tell you you need to restart (but don’t force you and, in my experience, don’t cause problems when you don’t) and the good updates which don’t mention the word restart at all. It’d be good if the second kind of updates vanished - preferably by turning them into the third kind.

After telling the machine to run the updates, you usually have to enter an administrator password. That’s a good opportunity to sneak in a screenshot illustrating a few interesting design decisions / bugs in OS X: First the absolutely abysmal support for custom keyboard layouts in password fields (which always switches me back to the German keyboard layout, seen as the flag in the title bar from my custom one and is buggy in about a million other ways as well). Second The password window always using the Aqua blue selection colour for text rather than my preferred shade of orange. This hints that the window is not owned by me and is not using my preferences. Which - apart from the visual distraction - makes me wonder whether that’s a good design decision security-wise.

Authentication window in Mac OS X.5

Once that’s done the updating can begin. As soon as you are installing more than a single update in one go, the progress bar displayed can serve as a really bad example for progress bars. It simply gives no indication about how par the update proceeded so far. It doesn’t even monotonously increase but jumps back and forth during the run. A note that the update ‘will be finished in a few minutes’ would be more useful I think.

X.5 Software Update progress indicator

After the updating has finished things are really strange as well. The old big software update window appears again, and the sheet pops out telling you it’s checking for new updates. As far as I can tell that is because X.5 Software Update mechanism isn’t sophisticated enough to predict whether or not the system will qualify for further updates after the first round of updates has been installed. Not extra painful, but not particularly elegant either.

In particular I find the window management of the GUI embarrassing. There could be a single window which guides you through all of this and possibly smoothly resize to and appropriate shape. Instead there are different windows which are switched around harshly and there is an additional sheet for progress indication while checks for new updates are taking place. To me that seems unnecessarily complicated and distracting. If no new updates appear after that check, you are dumped back into the main Software Update window. As the window’s main button is inactive now, you’ll have to figure out that there’s nothing more to do and that you have to hit the window’s close button.

As a consequence I think Software Update would be improved consideraby if it came in a single window which handles all the tasks smoothly and without opening extra windows (save the authentication one), sheets or even modal windows. It will also offer clear and correct information about its status in a consistently localised way.

Mo

Getting this right doesn’t look like an overly complex task to me and I wonder why Apple don’t do this properly. Updating the machine can be a risky thing to do. With more and more ex-Windows users using the Mac, there may even be plenty of users these days who are weary and scared of running updates at all. Both for their benefit and my snobism (mainly the latter, though) it would seem advantageous to make the experience of Software Update a totally straightforward and pleasing one.

October 1, 2008, 19:51

Tagged as mac os x, os x, software, X.5.

Add your comment

« BubblesMainReunification Day »

Comments on

Photos

Categories

Me

This page

Out & About

pinboard Links

♪♬♪

Received data seems to be invalid. The wanted file does probably not exist or the guys at last.fm changed something.

People

Ego-Linking