Options Without Meaning

Bad UI design rears its ugly head when you least expect it.
I was testing out an anti-virus program the other day when I noticed a scan option which… gave me pause. Upon closer examination, I realized just how poorly designed this option was (from a UI perspective).

First off, it was a slider control – a rather unusual choice, but not totally unexpected. Remember that a slider control is good for something that has a range of possible options – like volume, power consumption, process priority, playback position (of audio or video), etc.

The default setting was in the middle and was labeled “Automatic Scan.”

automatic scan

I had a hunch that this slider controlled how fast or slow the scan would be (whether it ran at a high priority and scanned quickly, but your computer was basically unusable while it was running, or whether it ran at a very low priority and took forever, but you could keep using your computer without much impact) – but this was only a hunch based on experience I have from using a lot of anti-virus programs. There was no contextual help or explanation of this option, other than the words “Automatic Scan.”

So, I decided to see what other options there were. I slid the control to the right, only to find that it went right to the end – there was no “in between.”

fast scan

When I saw this, I had to stop and ask myself, “what exactly is a fast scan, anyway?” On the surface, it seems like it might be obvious, but in fact it’s not – a fast scan might be:

  • A scan that runs at high-priority, pre-empting all other tasks on your computer to get the scan done quicker; or,
  • A less in-depth scan (i.e., a “quick” scan) that completes quickly, but doesn’t scan as much as a “full” scan does.

Unfortunately, there is no indication which this is – it’s just labeled “Fast scan” and that’s it.

Out of curiosity, I slid the slider to the other end of the scale, where it promptly went all the way to the left side. So, basically this is a slider used to select from 1 of 3 options – hardly the best use for a slider control, don’t you think?

Of course, the option I got when I went to the other side was even worse:

slow scan

OK now honestly, who in their right mind would choose the “slow scan” option?  “Why, yes, I’d LOVE to slow down this already lengthy scan process even more – my time isn’t valuable AT ALL!”

Once again, there’s no indication as to what a “slow” scan means, or how it is different from any of the other options. And being named “slow scan” makes it extraordinarily unlikely that anyone in their right mind is ever going to use this option (why would they?).

The scan options for this anti-virus program (I won’t say which one, though you can probably figure it out) are a classic case of poor UI design.

  • A slider control is a bad choice for something that has just 3 discrete states. A drop-down box would have worked just as well (and would have left room for some more descriptive labels) – even 3 radio buttons (which are arguably the right control for choosing between discrete options) could have been squeezed into the same space given to this control.
  • The labels used for the options are ambiguous and give no hint as to their actual effect. It is possible to interpret the slow/fast scan labels in two different ways, both of which are opposites of one another.
  • It’s not clear from the labels whether fast scan/slow scan differentiate between priority levels (i.e., same scan, just running at different execution priority levels) or between scan types (i.e., quick surface scan vs. longer in-depth scan).
  • Regardless of what the options actually do, the options themselves are largely unnecessary. There’s no real need to change the priority or type of scan – after all, most users won’t be running the scan manually, they’ll let the anti-virus program scan their computer automatically at some scheduled time when they’re not around. And even if they do run a scan manually, they don’t need these kinds of options, because the scan itself has a “pause” button that can be used if you need to do something else with your computer.

When designing user interfaces, it’s tempting to give the user an option to control everything. However, it is always worth taking a moment to evaluate any new option and try to see if it is really necessary. Unnecessary controls just clutter up a UI and detract from its ease of use by bewildering users with choices they aren’t equipped to understand, let alone make informed decisions about.

Skype, I Like Your Style

So, I started using Skype recently (for videoconferencing). It’s a good program, and I like it – though I do just use it for Skype-to-Skype calls with a few people.

However, while browsing through the settings, I came across this little gem:

skype-chat-sampleThe sample chat that Skype uses is an exchange from two characters in George Orwell’s 1984.

That is just awesome on so many levels. Well done, Skype – I like your style!

Is the MDI model dead?

This is a question that has been floating around in my head for a while now: Is the MDI windowing model dead?

I think the answer is: maybe yes, and maybe no.

It’s certainly true that the “traditional” MDI (multiple document interface) model has fallen out of favor, for a lot of reasons – not the least of which is it looks kind of dated. But other, very good reasons are:

  1. For many users, the idea of “windows within windows” is confusing. Microsoft Excel is one major application that even today still uses this “classic” MDI model, and I cannot tell you the number of times I’ve had to talk people through how to manipulate their windows. Mostly, people don’t understand “windows within windows” and when the MDI child window isn’t maximized to its parent window’s size, it can be dragged all around – often accidentally towards the edge of the parent window, where it hides the close box and other window controls – like scroll bars – and people don’t know how to get it back.
  2. The reasons for having “windows within windows” were born in a different time – as far back as Windows 3.1, at least. Back then, it made sense to have a “parent” window that could control all of it’s “child” windows, because you didn’t have things that we have now – like the taskbar – for switching easily between windows. Times have changed – with bigger screens (and in some cases, multiple monitors) there’s just no real “need” to confine windows to a single, larger, parent window – it just adds unecessary complexity.
  3. Taking a step back from a pure Windows-centric view, the “classic” MDI model also doesn’t work in everyone’s favorite medium for new applications – the web.
Example of the Problems with the MDI Model
Example of the Problems with the MDI Model

So, for these (and probably other) reasons, the “traditional” MDI model is effectively dead (with rare exceptions like Excel).

Or is it?

It didn’t occur to me at first, but when you think about it, the MDI model is still with us today – we just don’t recognize it. It’s a “new” model, that can be used in both windowing environments and on the web. In fact, chances are you’re using it right now to read this article – I’m talking of course about tabs.

Think about it – tabs allow you to have multiple documents open – the only distinction being that they’re not really “windows” in the classic sense (they can’t be resized independently, nor do they have all the traditional window controls), but in essence they are windows. So really, the MDI model lives on, but now it’s a “tabbed” MDI model instead.

Example of a Tabbed MDI Application
Example of a Tabbed MDI Application

Tabs take away all of the negative aspects of the traditional MDI model, but keep the flexibility of multiple documents (or pages or whatever) within the same application. In fact, tabs today have become so ubiquitous that it’s easy to not recognize them as being a form of MDI.

That’s not to say that tabs don’t have their problems – because they do. For example, if you try to create a tabbed MDI application, but you also want implement one of the new “ribbon” style toolbars, you’ll end up with tabs in your ribbon and tabs in your windows – which can be confusing as well.

Still, the tabbed MDI model does address a lot of the shortcomings that the traditional MDI model had – and although the traditional model has pretty much gone the way of the Dodo, the tabbed MDI model has been firmly implanted in the toolkits of application developers worldwide, and I think it will be here to stay with us for quite some time.