Multitasking in Mac OS X and UI intrusiveness

Posted by Pierre Igot in: Macintosh
May 28th, 2003 • 1:13 am

I was downloading a big file (Acrobat Reader 6) over my pokey modem connection, and reading an already-loaded Washington Post column in a Safari window tab. Then I decided to load a football news site while I was reading the column. I knew that it would at least take time because of the big Acrobat Reader download taking place at the same time, and that it might not even work at all, but I figured I’d try.

So I opened my LaunchBar and typed the first few letters pointing to the news site and hit return.

This caused Safari to open a new (untitled) tab in the current window and to start attempting to load the site in question. No problem so far. This is the expected behavior.

I switched back to the Washington Post column that I was reading in another tab in this window by using the cmd-shift-left keyboard shortcut, and continued reading.

Then all of a sudden Safari automatically switched to the new tab where it was attempting to load the news site, and displayed the following dialog sheet:

A picture named SafariTab.jpg

There are several problems with this. First of all, while the entire Safari interface is brushed-metal, the dialog sheet still uses the striped background used in non-metallic Mac OS X interfaces. This doesn’t make sense. If you are going to be using a brushed-metal interface, use it all the way. This mix of stuff is unsightly, and unintuitive. (Does this striped dialog sheet really look like it’s just come out of the brushed-metal window’s title bar? I don’t think so…)

Then there is the fact that the error message itself is wrong. It’s not that “the server could not be found”. It’s that I am downloading a big file and Safari is not able to distribute the limited bandwidth that I have more evenly so that I can still download web sites while downloading a big file. Not exactly the same problem!

The main problem, however, is the actual behavior of Safari, which is symptomatic of a more general problem in Mac OS X: background process intrusiveness.

The most blatant manifestation of this problem is the dreaded “high bouncing” Dock icons. When an application that is running in the background hits a snag, instead of signalling the problem in a non-intrusive manner (by changing the color of its Dock icon’s background, for example), it starts bouncing like crazy in the Dock and making all other applications (including the process currently in the foreground, i.e. the one you’re trying to use) utterly unresponsive, which effectively forces you to switch to the application in question right away to try and stop that CPU-intensive non-sense.

The problem I’ve just described in Safari is of the same nature, but within a single application. Safari is able to handle multiple windows with multiple tabs in them at the same time. This means that its own interface is organized around a foreground/background dichotomy: there is one currently active tab in the currently active window, and all the rest is in the background, sitting idle or running background processes such as loading the contents of a web page.

What Safari did with this automatic switch to the other tab and alert sheet is that it assumed that the failure of that background process was a priority for me and was more important to me than finishing to read this Washington Post column. Well, its assumption was wrong. I knew that the downloading process for this particular tab in the background might fail, and I didn’t need anything more than a “background notification”. Instead, Safari decide to intrude and force me to switch my attention to the background process.

It is such assumptions and such intrusiveness that make daily computing in Mac OS X more painful than it should be.

Of course, I can probably imagine scenarios in which the failure of the web page downloading in that particular tab would have been of a higher priority that what was going on in the foreground at the time of the failure — but are such scenarios really the most likely ones? Did Apple really think about this and weigh the pros and cons of using such a high level of intrusiveness by default?

In the same way that I’d like Apple to replace the “high bouncing” behavior in the Dock with something far less intrusive, such as a different background color for the affected Dock icon, I would like Apple to replace this default behavior in Safari with something far less intrusive, such as: 1) no automatic switching to a different tab in case of a downloading failure; 2) a non-intrusive visual change in the affected tab, such as a different color for the tab itself, for example, that would indicate that something is wrong with it, without forcing me to deal with the problem right away.

Of course, all this affects me more acutely because I am on a slow Internet connection and such failures are probably far more common for me than they are for someone with a high-speed Internet connection. But it’s a matter of principle too.

Right now, I’m seeing a pattern in Mac OS X and in Apple’s applications that I really don’t like: something akin to systematic UI intrusiveness when background processes fail. There’s the high bouncing icon issue. There’s this issue in Safari. There’s the extremely annoying modal dialog boxes in Mail. That’s far too many very telling examples.

Apple wants us to adopt Mac OS X because it’s an advanced, multithreading, multitasking system. Fine. But then please design Mac OS X so that it handles multiple tasks more gracefully! I am definitely a multitasker and I hate having to wait for a process to finish before I can switch to something else. Mac OS X lets me switch. It shouldn’t force me to switch back whenever there is an error or failure!

(Of course, to make matters worse, while I was writing this item and Acrobat Reader 6 was still being downloaded by Safari in the background, Safari got stuck and froze before the download was over. I had no choice but to force-quit Safari — and lose the 12 MB or so out of 20 that I had already downloaded, since Safari does not have a “Resume Download” feature that works reliably as far as I know. Grrr…)

Comments are closed.

Leave a Reply

Comments are closed.