Originally composed in Jan 2013, updated in July 2013.

To update, here's a summary of this morning's Mac experience. It shows the essence of what's wrong with this Mac and why I hate it.

I came to work and plugged it in to my KVM switch (IOGear GCS 1102). Hit a key to turn it on, login prompt appears, login, and it hangs. Get coffee, come back, it's still hung. Log in again, hangs again, and I open the lid while it's hanging. Now the desktop appears and it's ready to use. Alternately, if I unplug the USB (which provides the external keyboard & mouse) while it's hanging, the login prompt appears immediately, then I can plug it back in and still works fine. Just another example of this Mac's random buggy inconsistent behavior.

Now I mouse around with my trackball, remembering that the accleration values are all wrong. It's too slow when slow and too fast when fast, making the pointer hard to control. But this being a Mac, you can adjust tracking speed but not acceleration, so I have to live with it. Of course, acceleration is adjustable with a simple slider on Windows and Linux, just not on Mac.

Next I open an app and need to multi-select a few files. On Windows or Linux, the modifier key is Ctrl for individuals, Shift for ranges, or both. On Mac, the modifier key could be Ctrl, Shift, Option, or Command. It's inconsistent and different in each app, so I can never remember.

After selecting the files, I want to edit one. It's a text file and I pick my favorite text editor, JEdit. Nothing happens. But having used this Mac for a few months now, I know what really happened: it opened JEdit on a different desktop workspace. With no visual indication that anything happened, of course. So now I search through my 5 desktops to find the one where it opened the app. Even when I get the right workspace, the new app window isn't always at the top of the Z-order, so it can be hard to find. And it doesn't just do this with JEdit. The desktop launcher does this with other apps too, including command prompts. This is what Apple considers an intuitive desktop?

And that takes me to the desktop launcher. The most important, common action - launching an app - is inconsistent and fatally flawed. The action you do to launch an app is different, depending on whether the app is already running. If it's not already running, then you simply (left) click on it. But if the app is already running, left clicking on it does nothing. You have to right-click on it, then select an existing window, or pick "new window". What makes this worse is whether the app is already running is not obvious - it could be on a different desktop workspace. Why not have one simple, intuitive action always do the same thing? That is, make a simple click always launch a new window - whether or not the app is already running. If you wanted to select an existing window, you would right-click. What makes this inconsistency fatally flawed is where it launches the window. In a word, randomly. You never know what desktop workspace the new window will appear on. And sometimes, it also transports existing windows from whatever workspace they were on, to the one you're on. So the new window you just created doesn't appear, but instead some other window you didn't want pops up, so it's no longer where you wanted it, and you know the one you wanted is buried somewhere in another workspace. This inconsistent and confusing launcher is the best Apple can do?

Now that I've got the file open, time to edit it. But the Mac keyboard doesn't have Home/End, nor do the Ctrl-Shift-Alt modifiers behave the same way they do in other operating systems. The Mac has chords to simulate these keys: for example Cmd+left arrow acts like Home, moving to the beginning of the current line. But these chords are poorly chosen. For example that same chord: Cmd+left arrow, in a browser, goes to the previous page. What happens if you're editing text in a web page and you hit this keystroke? You guessed: it's random! Sometimes it goes to the start of the line, sometimes it goes to the previous page (and you lose all your edits of course). To make things worse, the way the keys behave is inconsistent, different in every app. You can define Apple key bindings by editing ~/Library/KeyBindings/DefaultKeyBinding.dict, or by installing utilities like DoubleCommand. But not all apps use these settings, so you get inconsistent behavior everywhere. There is no single key mapping you can define that works the same way everywhere. This is what Apple considers an intuitive desktop?

Now I want to use my Linux desktop for a while. I have a KVM switch - a very nice one, a IOGear GCS-1102. I push the button and switch to Linux, get some work done. About 10% of the time, when I switch back to my Mac, the entire desktop UI is frozen. It can't handle the switch; the entire Mac needs to be hard rebooted. Strangely enough, I can ssh into the Mac while it's locked up. So the OS is still running, but the USB drivers have locked up the entire desktop. As far as I can tell, there is no way to reset the USB while it's running - it must be rebooted. I figured out how to make the Mac sleep and wake up from the command prompt, but that doesn't fix the problem. When it comes back up the entire desktop is still locked up. The switch itself handles USB and monitor EDID logic, works perfectly with multiple versions of Windows and Linux. But not with my MacBook Air. This isn't the only KVM switch like this. My prior switch had the same problem, which is why I upgraded to this nicer, more expensive one.

And then there's the dreaded spirally beachball. It pops up intermittently lasting anywhere from 1 to 10 seconds. While it's up, the machine is completely unresponsive. As if that weren't bad enough, it gets worse. If it let you know in advance, you could simply take your hands off the keyboard & mouse and wait several seconds. Welcome to 1992 and Windows 3.1, but whatever. But it doesn't even do that - the computer actually becomes unresponsive about 1 second before it pops up, so you get no warning. And it typically happens when you're in the middle of a drag and drop operation. When this happens, the file/email you were dragging gets dropped in some totally random location, with no indication of where it is. Now you get to spend the next 10 minutes searching all your email folders, desktop or disk drive to find whatever it was you were dragging, while you cross your fingers hoping it didn't land in the trash or some unretrievable location.

Now this covers only the first 30 minutes or so of my work day. It doesn't even come close to capturing all the various productivity killing bugs and quirks of this Mac. What amazes me most is people actually like these computers! They can't all be insane. But it stymies the imagination that anyone would put up with this, let alone actually like it.

After this introduction, now it's back to the original article from January:

The Mac I'm using to write these words is a MacBook Air running MacOS 10.8.2 with 8 GB RAM, 4 core CPU and 500 MB SSD. I haven't used a Mac computer since High School (Apple II). However, if an iPad counts as a "computer", then I did use one for about a year. It was an iPad 1 that Disney gave me when it first came out. I talked about it here.

I have a love/hate relationship with this MacBook Air...

Stuff I Like:

  • Unix OS: the main reason I got this Mac is to avoid rebooting all the time. My prior laptop was dual boot Linux/Windows. I used Linux for dev and rebooted to Windows for Outlook and other office apps. With this Mac I can dev in Unix and have office apps running at the same time. I love having a real unix OS command line with actual Microsoft Office apps.
  • Performance: this Mac has good performance in CPU, RAM and disk. It's faster than my old Thinkpad, which was a couple years old. That said, performance is comparable to any new generic laptop with comparable CPU, RAM and SSD running Linux or Windows.
  • Battery: the battery is excellent. This is another of the main reasons I got this Mac. I get 7 hours of light use, less if I'm doing lots of I/O or CPU. It generally lasts an entire x-country flight, including a stopover. I've never had a laptop with such long battery life.
  • Footprint: it is small and light. I've never had a computer with this performance and battery life in such a small size. This is another of the main reasons I got this Mac.
  • Quality: it seems mostly well built. The screen and its hinge, the o-ring is a nice touch, the overall feel is good. Of course, the incredibly bad keyboard is one huge exception.
  • Stuff I Hate:

  • Keyboard Feel: this Mac has a cheap chicklet keyboard, one of the worst I have ever used. It has terrible response and frequently (about once per sentence) misses letters. It is worse than the keyboard on an average Dell laptop. My preferred keyboard is a buckling spring, on which I type 100 WPM with 99% accuracy.
  • Keyboard Layout: the keyboard is missing "Home", "End", "Delete" and other important keys. This is a major productivity killer for people like me who do most things from the keyboard. There are chords to get these keys but they are inconsistent from one app to the next.
  • Navigation: on a Mac you must do certain things with the mouse/trackball that you can do from the keyboard on Windows and Linux. I hate having to take my hands off the keyboard to use the pointing device, because the moment I do that it kills my productivity.
  • App/Window Switching: this is a variation on Navigation but deserves its own item. On Linux, Alt-Tab switches between windows (not just apps) and you can adjust whether it shows windows in your current workspace, or across all workspaces. On a Mac, it only switches between apps, and always goes across all workspaces. If an app has multiple windows, it flips to the app's main window, then you must take your hands off the keyboard and use the pointing device to select the window you want from the app's "Window" menu. Thus, something that takes 1 second on Linux, takes about 10 seconds on a Mac. And it makes it harder to switch between 2 particular windows, because when you switch to the app, it pops up, covering the window you were on, before you can switch to the app sub-window you really wanted.
  • Bugginess: this Mac is the buggiest computer I have used in years. The bugs are seemingly random, from the screen occasionally freaking out when I plug in external monitors, to the system occasionally shutting down or rebooting itself when it's suspended, to grabbing the edge of a window, dragging and having the entire window move instead of resize, to the entire screen going black when I display certain emails, to brief hangs in the middle of a file or email drag operation that drops my dragged object into some random place, so I have to spend the next 5 minutes looking for it. This is what Windows was like 15 years ago.
  • Poor Ergonomics: the Mac has several forms of this. Perhaps most importantly, the system fonts are not adjustable in size! My vision is slightly better than 20/20, I fly airplanes without glasses, and these fonts are still too small for my taste. You'd have to be nearsighted to like the default fonts on this 13" Macbook Air, or if you weren't, you'd quickly become so. Yet they're not adjustable! If somebody told me there was no way to adjust the system font sizes on a Mac I would have thought he was joking. I found a utility called TinkerTool that lets you set the font sizes among other things, but it's not a real system setting so it is applied inconsistently. How could a company that supposedly cares about ergonomics allow such a serious oversight?
  • The Finder: is simply the worst file manager I have seen since I can't remember. It makes the simplest actions, such as copying and moving files, so cumbersome. You have to create multiple windows, arrange them on the screen so they don't overlap too much, so you can drag & drop stuff back and forth. No tabs, no easy way to cut and paste, no easy way to copy a file's name or path as text, when you do copy/paste it works inconsistently (sometimes the file name only, sometimes the full path). In this case, it was TotalFinder to the rescue. Yet another case of Apple's fundamental lapses in usability creating opportunities for an independent developer. Has anyone at Apple seen a file manager like Nautilus or Thunar in the past 10 years? They are far more intuitive and productive.
  • Font Rendering: this Mac has some of the worst font rendering I've seen in years. It looks OK with the built-in system fonts, but whenever you use any other font or adjust to any other size, it looks terrible. It's blurry, curves are not smooth and stroke width is bulgy and inconsistent, reminds me of fonts on my old TRS-80. Linux and Windows do a much better job of font rendering, not only on the built-in system fonts, but download just about anything from FontSquirrel and it looks good on Windows & Linux - not so on MacOS. This exacerbates the non-adjustable system font sizes mentioned above.
  • Limited Ports: this Mac has only a single lightning connector. Thus I can run an external monitor, or a hard wire LAN, but not both. It has only 2 USB ports. It has no HDMI, VGA or other standard outputs.