At the end of 2011, I was having some cramping in my wrist, and decided right then and there that I was going to change keyboard layouts, and this time (I had tried the dvorak layout some time ago) I was gonna stick with it.

Picking one was tricky… I went with Colemak, but sometimes I wonder about using workman. If you want to read up on lots of different keyboard layouts, or if you would like to admire some great charts and graphs (yeah, who doesn't!?), visit the carplx project.

The first chart there says a lot about all-around "score", and obviously QWERTY does terribly. Not just the worst, but by a huge factor. So switching to any other layout is going to help out a lot with hand and wrist fatigue.

Getting the layout installed is very easy, it's just a matter of placing the layout file in the correct folder. If you want to go "all the way" and map the caps lock key to backspace you'll need to use something like keymap or doublecommand.

Much better instructions than I could write are here: http://colemak.com/wiki/index.php?title=Mac

So you've got it installed, now it's time to practice. For this there are tons of options, I used aTypeTrainer4Mac. It has difficulty levels to practice home keys, then more keys, then all keys, then keys with mixed case… and all that is nice, but it gets silly at harder difficulties when you'll be asked to type a bunch of nonsense with random capitalization.

Instead, you can use the Text > Import a Text File menu, and open an RTF (it only supports RTF, not plain text, oddly enough. So copy/paste anything into TextEdit and save it as RTF). Practice with some text that makes sense to you. If you're a programmer use source code, if you're a writer use something you wrote yourself.

Using source/writing that you wrote has two benefits.

  1. It'll be familiar content, which means you can devote more of your concentration to thinking about where the keys are instead of what's coming up next,

and

  1. it will be content that you are likely to type again — I'm talking about things like word and variable name choices. If you code in python, you will get lots of pratice writing def, self. PHP => function, $this. Ruby => def, do, end, that kind of thing.

OK, but now comes the hardest part: stick with it.

Stick with it!

This also means that you have to pick an opportune time to make the switch. It's not gonna happen overnight!

If you're in the middle of a huge project with a deadline fast approaching, now is a bad time. But at the start of a new project there is usually more time spent doing "this and that", and devoting time to learning a new keyboard layout can be squeezed in.

Just don't give up. After a week or so you will start to get used to it. After two weeks you'll pick up speed. After that, you can start boasting about how "QWERTY feels so weird now!" (it will). I'm barely at the two month mark, and at this point I can hardly use a QWERTY keyboard†.

Typing Japanese using Colemak

I hit a funny "aw crap" moment when I went to write an email in Japanese. I switched to the kotoeri input, and everything came out all messed up — it was still using QWERTY!

I thought I was gonna have to install some crazy Japanese/Colemak hybrid keyboard layout, but it turns out that in Kotoeri preferences, you can assign Colemak as the "Romaji Keyboard Layout". Looks like this:

Kotoeri Preferences

First, select the Hiragana keyboard. Now select it again!! I mean, click on the menu and the Kotoeri Preferences option will be there. If you're on the Colemak layout, it won't be an option, and don't go looking for it in System Preferences, either.

Kotoeri Preferences

This was a big deal, this Japanese keyboard in Colemak thing. It was tricky to find the forum post that outlined this specific feature, so that compelled me to write this post.

† Not joking, I am super slow on a QWERTY keyboard, with one exception. I can still type on my phone, no problem. This strikes me as very odd, that I have to hunt and peck on my girlfriend's computer, but on my phone I don't even notice. Weird.