Swithing to Mac - one year after

This has been a long time coming, but here it is: My "Switching to Mac story".
I've been working on this for almost a full year. It started with three optimistic blog posts about the things I learned while unlearning Windows, and then reality struck me: I thought Mac supposed to be almost like Linux, supported. It is not.
Here is a nice summary of the differences between Mac and PC: Top Ten Things They Don’t Tell You About Switching. Below are just my additions.

The keyboard:

  • it is backlit
  • weird layout (ctrl/fn keys are switched and there is no setting anywhere to get them back)
  • missing keys (page up/down, home/end, print screen) comes to mind.
  • I can hear what some of you are thinking: It's just a matter of taste. Well, a normal (not laptop) Apple keyboard has ctrl in it's correct position, so it's obviously not a usabilty thing or a design thing but rather a "we don't care"-thing.


  • many small companies offer all kinds of small programs for mac
  • every program looks different
  • few of them is anywhere near usable without a mouse or touchpad. Placing all menus on top of the screen makes this even worse.
  • often you'll find functions hidden away behind a gear icon that may hide anything. No visual clue until you click on it. Same goes for the strange button at the top rigt of every window that will hide something.
  • Don't expect free and open source software that runs on both Windows and Linux to be available on Mac. Some programs, like Gimp, runs somehow, but looks really ugly as they are running in some kind of X11 terminal.
  • Even on programs that are available, you can expect to wait a little longer before new releases are available, and you'll also have to expect a few extra bugs. Of course this is not Apples fault, but you might like to keep it in mind anyway as you might be going to suffer from it.
Will I ever buy another Mac? Not likely. Not until they fix the keyboards and keybindings.
A few things comes to mind as for why I'd prefer a Mac over a standard pc running Linux, though:
  • iTunes (best way to buy music in Norway, where I live)
  • MagSafe power
  • Good screen
  • Less likely to break down while at a customer site

Appendix: The hopeless keyboard addicts guide to the Mac keyboard:

I was about to make a table here, detailing how to get at least home/end and pageup/down in the most used programs. But then some programs even differ inside of the program (like, "home" and "end" are mapped to different key combos depending on if you are located in the address bar of you browser or in a text area. This is especially funny when you've almost finished some writing on a blog, a company intranet etc, you want to select one line of text to move it around, and you forget that the key combo that means mark to start of line in one application means go to previous page in the browser. This particular one has hit me twice.)
Here are a few hints anyway:
  • ctrl+a go to start of line. Works in almost every program, including terminal, but doesn't work together with shift.
  • ctrl+e go to end of line. Works in almost every program, including terminal, but doesn't work together with shift.
  • cmd + arrows/fn + arrows - may or may not works for either home/end. Depends on mood of programmer, moon phase when program was written or some other, unknown parameter. If one doesn't work, try another, they rarely do anything really wrong except triggering the web browser back action.
  • cmd+shift+4 - screenshot, choose area. Press space to select a whole window.


The real reason why we don't use silverlight or flash

I think I speak on behalf of a lot of people if a say:

A lot of silverlight & flash fans are missing the point: We know about flash. It's not that we somehow do not "get" silverlight. We program Java, PHP, Python, -list goes on and for many of us also includes C# and actionscript. We do use a lot of different frameworks. Learning new stuff is part of our daily grind (and to be honest, we mostly love it.)

We also do struggle with fonts that might or might not be available, css rendered differently in IE etc. We just don't want to add dependencies to
  • big,
  • cpu-hogging,
  • closed source plugins
  • that might or might not be supported on our future favourite operating system
to our nicely crafted and cross browser compatible web sites. Hey, -we might not even be allowed by the customer to do that, and even if we were, I think most of us would explain the customer/boss in question why they should be careful to do that.