It turns out that one of the most important and frequent tasks is to access files, and the interfaces for doing so differ dramatically between operating systems - and in this case, OS X is the clear loser - at least for my use. These two screenshots show the best configurations of the same folder on OS X and Win7 (XP is similar to Win7 in the essential issues, so I won't discuss that).
The biggest differences are that:
- Win7 shows many more files at once (within a directory) - which means you can do more scanning with your eye, and less with your hands. This is a huge performance win for most searching tasks. There is no view on OS X as dense as this.
- Win7 groups folders separately from files (OS X combines folders and files, ordering them alphabetically). Both seem like reasonable approaches theoretically. But once you actually start using it, you quickly realize that navigating among folders and selecting among files are cognitively fairly different tasks - and you typically are doing one or the other. When I am navigating folders, I want to do that. Then, when I am in the right folder, I want to find the file. This decision coupled with the first issue above means that when I navigate folders on OS X, I spend much, much, much longer scrolling through long lists of files in order to get to where I want.
- OS X makes common tasks slow and uncommon tasks fast. The most common thing you do with a file is to open it, so there ought to be a single finger, single click way of doing this. On Windows, pressing Enter does the job. But on OS X, it requires two fingers and two clicks to press Command-O. A much less frequent task is to rename a file. Windows, very reasonable, assigns this to the out-of-the-way F2 key. OS X, bizarrely, uses Enter, the single easiest key to press for this uncommon task. WTF?!?
- OS X forces you to move your hands between alpha and arrow keys. On Windows, you can navigate the folder hierarchy entirely with your fingers on the alpha keys (i.e., "home row" for touch typists). You press enter on a folder to open the folder and see it's contents and backspace to go up a level. On OS X, you are obligated to move your fingers from the alpha keys to (to type a folder name) to the arrow keys to enter the folder, then back to the alpha keys to type the next folder name, etc. Of course, you could avoid this on OS X by only using the arrow keys - but because of the decision to combine folders and files, that means you must press the down arrow many, many, many times to get to the folder you want before pressing the right arrow to open it. Sigh...
- OS X has no concept of focus - only selection. This means you can not use the keyboard to easily control which files are selected. This one is so weird, it took me a while to convince myself it was real. If you have OS X, follow along at home. In Finder with a file or folder selected, hold down the shift key and press the down arrow key two times. You will now have 3 items selected. If you overshot and don't want the bottom item selected, you naturally will press Shift-Up to unselect the 3rd item you just selected. But incredibly, what happens is that the 4th item above the other 3 gets selected. This is because there is no concept in the Finder of the currently focused object. This crucial bit of state isn't kept, and so Finder can't support the most basic interaction techniques.
- OS X doesn't remember column widths. HCI 101 teaches "remember what the user does". If it is important enough for a user to do something, then the user interface ought to remember that and use that preference reasonably in the future. But on OS X, if you resize one of the columns, that information is lost as soon as you navigate to a different folder. So if you are moving around a bunch of folders with long filenames, you have to resize the column every single one. This gets pretty darn tiring after about the fifth time.