I switched from Windows to Mac this past October, and overall my experience has been incredibly good. My new MacBook Pro is great-looking, light, blazing fast, and reliable. OSX seems quite good, overall, and its sleek, refined interface generally makes my old Windows XP operating system feel like driving a Ford Pinto.
My biggest frustration during the switch, however, has been Apple’s conventions, or lack thereof, for keyboard operability. I fully expected to learn new shortcut keys when I switched to the Mac. I never expected to find the conventions would be so limited and inconsistent that they were frustrating, if not impossible, to actually learn.
Why Shortcut Keys Matter
Shortcut keys save time and increase usability. By contrast, using a mouse slows you down, because it’s a relatively inefficient and clumsy way of interacting with your computer.
When you think about it, using a mouse is really pretty awful. After reaching over for the mouse with your hand, you have to find the cursor (which gets increasingly harder as monitors get bigger and using multiple monitors becomes more common), move the cursor across your screen (also harder on larger monitors), interact with the monitor’s crude spatial representations of physical objects, and fiddle with (in my case) the Mighty Mouse’s awkward non-buttons.
Soon, many of us learn to live with these inefficiencies, but they never go away entirely. For anyone who is a relatively fast typist, each time you must use the mouse you interrupt your workflow and lose a few seconds of productivity.
Also, sometimes a mouse will stop working. When this happens, if your operating system does not have a convention for efficiently interacting with the file menus, dialog boxes, and text editing commands, then you are dead in the water.
In Windows, I could perform 90% of my daily computer tasks without a mouse. In OSX, I would say that’s 70% at best. This is a travesty for an operating system that prides itself on usability, convenience, and efficiency.
Problem 1: Dialog Boxes
Any time you start to close a document with unsaved edits, you see a dialog box that says “Save this document? Don’t Save | Cancel | Save” and the “Save” will be highlighted. If your answer is “Don’t Save,” you might expect you could respond by typing “D” or “N” (for No, the Windows XP convention) or by navigating to the relevant button with the arrow keys (another sensible Windows convention) and then hitting Return. But you’d be wrong.
The only way to interact with this dialog is through a fairly esoteric convention of typing Return for Yes, Spacebar for No, and Esc for Cancel. (How many new users will ever discover that the Spacebar represents a “No”?) [Correction: See update 2 below.] But, fair enough — I eventually read about and memorized the convention.
The problem is, there are other programs, such as Photoshop, where that same convention does not work. As far as I can tell, there is no way to respond to this dialog box in Photoshop, except to reach for the mouse.
For some keyboard operations, I’ve found Keyboard Maestro to be very helpful … much better than the incredibly limited Keyboard Shortcuts functionality in the System Preferences, which only lets you map shortcuts onto static file menu items. But even Keyboard Maestro cannot touch the dialog box problems, because it’s so context-dependent.
Why does Apple not enforce basic consistency for operations like this? For routine dialog boxes and elementary interactions with the file system, like saving and opening files, the keyboard conventions should all be consistent across all applications.
Another problem with dialog boxes [Solution found: See Update 3 below.] occurs when you go to save a document for the first time. In the save dialog box that opens, there is no way to navigate the hierarchy of folders on your computer, using your keyboard, to find the exact folder you want.
You can choose among the recent folders shown, but you cannot, in any way I have been able to discover, actually navigate up and down the hierarchy of your filesystem to the folder of your choice. (In Windows XP you can do this using your tab and arrow keys.)
Problem 2: File Menus
Is there any way in OSX to interact with the file menus (i.e., the File, Edit, View, etc. options listed across the top of each application) using your keyboard? If so, I have not found it. In Windows, you can simply press your Alt key and then use your arrow keys or type the letter corresponding to the menu you want to activate.
Interacting with your file menu in this fashion is crucial if your mouse breaks. It can also save you time for certain routine tasks where typing a couple keystrokes is quicker than reaching for a mouse and having to interact spatially with your monitor.
[Update: See update 4 below. Apparently CTRL+F2 will activate the file menu on some keyboards. But on a laptop or compact wireless keyboard you have to use CTRL+FN+F2.]
Problem 3: Text Editing
If you are like most full-time computer users, you may spend half your day editing text in some form — whether e-mails, documents, or programming code. You may or may not know this, but you can often speed up your workflow considerably by using your keyboard, rather than your mouse, to perform routine tasks such as selecting the text that you need to move or delete.
Before I explain how the Mac is handicapped in this regard, I need to review some of the basics of manipulating text with your keyboard.
The first step is learning to efficiently position the cursor anywhere inside a block of text. Everyone knows how to use cursor keys to move one space at a time, but you can also combine the arrow keys with the Option key to move one word at a time (left and right) or one paragraph at a time (up and down) instead of one space or line at a time. This can make things much faster.
Once you’ve positioned your cursor where you want it, you can select the text by holding down the Shift key and using the same combinations of arrows (to move one space or line at a time) and the Option key (to move one word or paragraph at a time) that you used to position your cursor. You can then copy, cut, and paste, using the familiar shortcuts of CMD+C, CMD+X, and CMD-V, respectively.
All these operations have a corresponding shortcut in the Windows operating environment, as well, and using these techniques can save you a ton of mouse-time if you just spend a few minutes learning and practicing them. What makes things harder on the Mac is the greater inconsistency — in my experience, at least — across programs.
For example, in Apple Mail I can select an entire paragraph by positioning my cursor at the beginning of a paragraph and typing Shift + Option + Down Arrow. The same shortcut does not work, however, in my second-most-used text editor, which is TextMate.
Even more frustrating, however, is the way that Apple Mail handles cutting & pasting paragraphs. If I cut a full paragraph (including the extra carriage return that follows, so there won’t be two paragraph breaks left in its place) and paste it elsewhere on the page, for some reason Apple Mail inserts an extra paragraph break at the end — which invariably has to be deleted, since the correct paragraph spacing was already present in my original cut.
No other text editor I’ve used has this limitation. The Apple Mail convention doubles the number of keystrokes required to paste a paragraph in the correct position, and does so for no reason that I can discern. Since I spend 3+ hours each day responding to e-mails, this is a particularly irritating inconvenience.
“Aren’t We Quibbling, Here?”
If your reaction to these complaints is that I seem to be quibbling, then all I can say is: You haven’t learned how to interact efficiently with your computer. With the exception of certain esoteric software (such as Photoshop), whatever you can do with your keyboard and mouse, I can do 30% quicker with just my keyboard.
I’m one of those people who interacts so quickly with my computer that you can’t tell what I’m doing most of the time, as you watch over my shoulder. I work that way because it allows me to be more productive. And I expect my new, three-times-pricier Mac to make me more productive in this regard, rather than less.
It’s great that Macs are so user-friendly for new computer users. But Mac attracts a lot of experts as well, and I didn’t switch from XP to OSX to be slowed down and frustrated by inconsistent and nonsensical keyboard operations.
Towards a Comprehensive Solution
As Apple wraps up their development of Snow Leopard, my #1 request would be for them to focus on keyboard operability. It helps the usability of all programs, impacts the potential efficiency of every user’s work, and, well, if all you did was meet the convenience of the eight (!) year old Windows XP, then the many programmers and other advanced users undertaking The Switch would be far less frustrated with your operating system.
To do this, have someone on the Snow Leopard development team who types 90+ wpm spend a week interacting with their computer using only their keyboard. Tell them to turn off their mouse and learn to interact with the OSX environment without it — and make notes of how they do it. (Once the kinks in the keyboard operability have been ironed out, these notes would make an incredible document for advanced OSX users.) He or she will quickly learn the frustrating limitations of your system, including many other keyboard limitations that I haven’t spelled out in this article.
Also, since such a significant portion of your users are now using laptops or the compact wireless keyboard (which uses the laptop layout), someone should make sure that all the final shortcuts work on more than just the full-size keyboard, with its extra buttons.
Some of the problems I’ve described above would no doubt require creating — and strictly enforcing — coherent standards for your third-party software developers when it comes to interacting with dialog boxes, file menus, and text editing interfaces.
All of these are rudimentary commands for an operating system — and the sooner you have a consistent convention across all major applications, the sooner users can begin enjoying the true productive potential OSX.
UPDATES
1. Thanks to Mike Shapiro for pointing me to this outstanding guide to shortcut keys. It’s the best I’ve seen. I don’t think it addresses any of the problems I outline above, though, because most of them deal with inconsistencies across programs.
2. Monte Melugin points out that “In dialog boxes, the spacebar does not select the No action — it selects the highlighted action that appears whenever full keyboard access is enabled. You press tab to move through the actions and press spacebar to activate the action. The action that has a solid highlight is the action that will be selected when you hit return.” Good to know. (Doesn’t fix the dialog box problem in Photoshop, though; its dialog is unresponsive to the tab key.) He also recommends turning on Full Keyboard Access in the system preferences, which I too have found handy (though it didn’t fix any of the problems I outline above).
3. Mike Shapiro just explained how to tab through dialog boxes to save a file wherever I want: “So I just tried this with TextEdit and it seems to work. From the Save As dialogue box, tab until you’re highlighting the sidebar, which lists volumes as well as any folders you’ve dragged into the sidebar. Cursor up/down through these. When you’ve found the right volume/folder, tab until you can maneuver through the file hierarchy in the main part of the dialogue box. Voila.” This works, and the missing step, for me, was choosing a volume on the left rather than trying to tab directly to the list of files as you do in Windows. Great to know.
4. Monte Melugin points out that CTRL+F2 will activate the File menu on some keyboards. On a laptop or compact wireless keyboard you have to use CTRL+FN+F2. Good to know.