Programming - - By Matthew Magain

Throw your Mac out the Window!

Off the back of my esteemed colleague’s recap of why he loves his Mac so much, I thought I’d offer a competing view.

OK, so I’m not actually advocating that you throw your Mac out the window. The thing’s not completely biodegradable yet, and you could always use it as a monitor stand. Besides, there might be somebody walking by (unless that somebody is Steve Jobs, and then, by all means — give it the old heave-ho).

But I do think, in light of all the praise that is heaped on OS X for being time-saving, intuitive and just plain pretty, it’s worth exploring some of the aspects of the user interface that the Mac gets plain wrong. My biggest gripe is with an element of the interface that is pretty darned fundamental — keyboard shortcuts.

Disclaimer: I am both a Mac and a PC user, and have been for a long time. Here’s my beef.

On Windows, keyboard shortcuts within an application:

  1. provide complete coverage
  2. are easily discoverable
  3. are intuitive
  4. are consistent, and
  5. generally don’t step on each other’s toes

My experience with OS X has led me to the conclusion that keyboard shortcuts in Mac apps are none of the above. Let me illustrate my point by looking at common commands in some popular applications.

Let’s first look at Adobe Photoshop.

On my PC, executing the Image > Image Size command is pretty quick (just three keys):

ALTCTRLI

A similar shortcut is also available on the Mac:

CmdOptionI

So far, we have a pretty level playing field. Personally, though, I’m not a fan of having to hold down three keys at once, and prefer an alternative way to execute this command from the keyboard, which I’ll get to in a moment.

So what if I wanted to make use of one of the other items on the Image menu? For example, the Crop function (a command that I use regularly when preparing screen shots for our books).

If we take a look at the dropdown menu, you’ll see that on both platforms, there is no designated keyboard shortcut listed. In this scenario, we’re left to the mercy of the operating system to step up and make things easier for us.A comparison of Photoshop's Image dropdown menu, as viewed in Windows and on a Mac

Windows comes to the party by allowing the user to hold down the ALT key. Doing so highlights the keys that can be pressed to trigger each menu item:

ALTI, P

That P is a little misleading the first time round, as one would intuitively think that the Crop menu item would be executed by a C. However, as the C key has already been claimed by another option on the same menu, this is a reasonably elegant compromise. Because the key is underlined when we hold down ALT, we can tell at a glance what the shortcut is, and execute it, all in the one motion.

Not so for OS X.

On a Mac you have four options:

  1. use the OS-provided keystrokes to navigate the menu (CtrlF2, I, Enter, C, C, Enter)
  2. apply your own keyboard shortcuts at the OS-level
  3. record a macro to perform this function (massive overkill for such a simple function)
  4. use the mouse

None of these are particularly palatable, given the number of menu items that fall into this category. Option number 1 is exacerbated for me, as I own a MacBook that requires me to type FnCtrlF2 due to the laptop’s compact keyboard. There’s just no way that someone can be expected to type FnCtrlF2 quickly with one hand.

Which brings me to my next bugbear: conflicts. Take Photoshop and OS X’s built-in document search, Spotlight. Both applications make use of the CmdSpace combination: for Spotlight, CmdSpace is the keystroke to search your desktop for emails, pictures and documents. In Photoshop, it’s the command to zoom in on your document. In fact, this is the command to zoom in for every Adobe program!

I can’t begin to tell you how annoyed I have become at having the Spotlight search bar appear every time I’ve wanted to zoom in on a Photoshop image, an Illustrator graphic or a PDF in Reader. Sure, sometimes it works (if you remember to hold down Space and then press Cmd, you can avoid this annoying conflict) and you can remap these keystrokes, but why on earth haven’t Adobe and Apple resolved them yet as the default option?

Which brings me to consistency.

Some of the applications that I use the most on my Mac are Java applications. For native Cocoa applications, cursor navigation using Cmd– and Option– with the arrow keys is completely different from cursor navigation inside a Java app. The fact that this fundamental mode of navigation a document or highlighting text is not consistent simply baffles me, and I curse every time I launch a Java application at having to reprogram my mode of thinking just to select text or move up and down the page. I don’t know whether this is OS X’s fault, Sun’s fault or the individual application developer’s fault, but the fact is that it is an issue for every Java application that I use on the Mac.

Yes, there’s no doubt OS X is pretty. It’s stable. It’s all that. Except if you rely on the keyboard to be more productive — something that is absolutely crucial for a power user like myself.

Keyboard shortcuts can make an application more accessible to disabled users, and more usable to able-bodied users. And in these stakes, Windows rubs the Mac’s nose in the dirt, using only a couple of deft keystrokes, and not even Quicksilver can save it.

Join the discussion “Mac vs. PC and the Future of the Web” in the SitePoint Forums