How to learn Colemak

A few days ago Javier emailed me asking how to get started learning Colemak. I wrote quite a long reply (uncharacteristically long for me who likes short emails) and i thought it might be worth turning it into a blog post.

Let me assume that you’ve already made the decision to switch to Colemak. If you need convincing, may i refer you to my previous post: Colemak is easy to learn.

This is roughly how it worked for me. Feel free to try it out, let me know how it goes for you, tell me if i need to tweak anything.


Step 1: print out the keyboard layout. No really. Do this! You’ll thank me when your computer locks and you can’t figure out how to type your password!

If you’re on an Apple or TypeMatrix keyboard, you can use one of these that i made:

Colemak keyboard layout

TypeMatrix 2030 Colemak layout

You can also find some generic layout diagrams on

You’ll be tempted to put stickers on your keyboard, or pop the keys off and remap them. Most people discourage this, as do i. The reason is, you’ll be tempted to look at your keyboard, which is counterproductive. You’re trying to train your fingers. So look at the diagram until your fingers know their way. Also, if you move keys around they won’t fit quite right, and the useful bumps for your index fingers will be moved.

Unless you have a TypeMatrix or another hardware keymapper, you’ll need to change some software settings. On Linux and OSX Lion this is easy as the layout comes built-in. On Windows and OSX Snow Leopard you need to install something. Follow instructions from the download page

Day 1

Find a typing tutor that knows Colemak. On Linux i recommend ktouch, and on OSX i like aTypeTrainer4Mac. Other suggestions are on the learn page.

This is aTypeTrainer4Mac. It’s puke green and Comic Sans, but it’s really clever at how it progresses you through the levels at a sensible pace. It also provides nice reports and charts showing your progress.

You’ll need to practise little and often for the next several weeks. Grab five minutes here and there, every chance you get. Consider screencasting yourself, as a way of recording your progress. If you know someone else who is learning, it can be good fun to practise together, taking turns. Don’t do too much at once: when you get tired and feel your mistakes increasing, it’s time for a rest.

Day 2

The nice thing about Colemak is that after the first day of training you should already know the home row, which can be up to 70% of what you’ll type! So get your print-out diagram, and have a go, whenever you need to type an email, or tweet, or whatever. Go very slowly! Focus on using the correct fingers. Try not to hunt and peck. If you make a mistake, delete the whole word and try again.

This will soon become unbearably frustrating, at which point, switch back to your familiar keyboard layout. When you feel ready for another try, take a deep breath, and get your brain into that hyper concentrated mode where you focus really carefully, thinking about every letter before you type it.

For some reason, i found it helped if somebody dictated an email to me, and i typed it. Perhaps because then all i had to think about was typing.

This will keep you going for the next few weeks, along with your training which you should still be doing every moment you get.

Week 2

As you enter your second week you’ll probably be gaining a little bit of confidence. It’s a good time to measure your progress. Sign up for an account at TypeRacer and either practise by yourself or even better, get some other people to race against. A good way is to select “Race your friends” and put the URL on twitter, inviting people to join in. I always like a couple of races, if i have time! :)

The more you type real text, you’ll start to feel new pathways forming in your brain and in your finger movements. It’s an amazing feeling; i’ve never felt neurons moving so tangibly as when i’m learning a new keyboard layout. Common letter patterns like “and”, “the”, “you”, and “ing” become familiar and you start to think of them as a single unit rather than individual letters. It’s as if you give your fingers the “ing” command and they do it!

Week 4

At some point, maybe in your third, fourth or fifth week, you’ll be typing Colemak more and more, and feeling less of a need to revert back to your old keyboard layout. In fact, you’ll probably feel yourself forgetting it altogether. This is the pivot point. There’s no going back now. So this is the moment to switch full time over to Colemak.

You’ll still be slow, or at least you’ll think you are slow. In fact, by now you’ll probably be around 40 words per minute, which is about the average speed for someone who never makes a conscious effort to learn how to type well. Remind yourself that you’re getting better all the time.

If you happen to use Vim, you may want to print out a Colemak Vim cheatsheet. I’ve done a standard layout and a TypeMatrix version:

vi / vim graphical cheat sheet - Colemak version

vi / vim graphical cheat sheet - Colemak TypeMatrix version

Keep up the practise with your typing tutor for as long as you feel the need. Now that you’re full-time Colemak, you’re getting a lot of real-world experience of course, but the tutor can help you to build up the speed.

Week 8

By now, your fingers and your brain should be really comfortable in Colemak. You’ll be able to type without really thinking hard about it. From now on, and for the rest of your life, it’s all about minimising mistakes and increasing accuracy and speed.

For typing, i really embrace the sentiment “Take your time and go fast”. TypeRacer tells you your accuracy as well as words per minute. I’ve found that every mistake costs me about 5 words per minute. Don’t rush, don’t try to go faster than you’re able. You will trip up. If you want to increase your words per minute, focus on minimising your mistakes per minute.

If you find yourself forming bad habits, correct them. For years i had a dreadful habit of only ever using the left shift key, no matter which letter i was typing. That habit gave me bad RSI in my left hand. The same thing goes for the Cmd+C / Cmd+V pattern on a mac. I frequently see people making painful contortions with their left hand. You have another Cmd key on the right! Use it!

Unfortunately, the mac keyboard doesn’t give you a Ctrl key on the right. TypeMatrix does, but it has no right Cmd key. Swings and roundabouts, hey!

Other thoughts

While you’re learning, you’ll probably want to put Colemak on your other devices, for additional practice. I believe iPhone and iPad have Colemak available since iOS 5 … can anyone confirm? It’s easy to get Colemak for Android, using AnySoftKeyboard or my preferred one: MultiLing Keyboard.

Colemak and vim: “But what about h/j/k/l?”

I have my phone set to alert me when anyone mentions Colemak on twitter. It’s a fun one to follow, you get new people trying out Colemak at least once a week, and i love to encourage people.

One thing i see a lot is programmers talking about vim, and asking what you do about the h/j/k/l keys. Do you remap them or relearn them?

There is at least one person who has made a colemak-vim remapping plugin (see this discussion in the Colemak forum), but i can’t imagine it working well. If you try to put h/j/k/l back where you’re used to them then you have to find new homes for n, e and i. (h actually stays in the same place) As you may well know, if you’re reading this, n is next search match, e is end of word, and i gets you to insert mode.

So if you move those keys, where would you put them? Almost every letter in vim has some sort of significance, and many of them are chosen for the action they stand for, which is part of the power of vim.

My answer is to relearn them. Maybe it’s easy for me because i was on Dvorak when i learned vim, so i was never attached to the position of h/j/k/l in the first place. Curiously enough, in Colemak h/j/k/l all end up on the same finger: the index finger of the right hand. Some people complain that j and k feel upside down, and they do at first, but then you realise that Apple is busy rewiring our brains with “natural scrolling” (which i think is just awesome, by the way) and before you know it, Colemak and vim feel perfectly wonderful together!

So my advice: print out one of these Colemak/vim cheat sheets and just get used to it!

vi / vim graphical cheat sheet - Colemak version

Look! i’ve even done a typematrix version for all you Colemak people who pair program and need a keyboard with a hard wired Colemak switch!

vi / vim graphical cheat sheet - Colemak TypeMatrix version

Of course, the other great thing to note about Colemak is one of its big advantages over Dvorak: that punctuation characters remain in their QWERTY positions. Which is very useful for vim users! :)

Ask aimee: When/why did you decide to switch to Colemak?

Here is the start of a new series of questions that i get asked on twitter but the answer is too long for a tweet. It’s egocentrically called: “Ask aimee” :)

Ash Moran asks:

@sermoa When/why did you decide switch to Colemak?

To understand the context of this tweet, you need to know that Colemak is a keyboard layout, an alternative to QWERTY which is what most of the English speaking world uses to type.

A history lesson

QWERTY first appeared in about 1873, the result of several years’ work by inventor Christopher Sholes. QWERTY was designed for typewriters. The letters of word ‘typewriter’ are all in the top row. QWERTY separates common letters to reduce key jamming. Interestingly, this separation of common letters also makes it good for small touch screen devices with intelligent word guessing, so it’s not all bad!

Dvorak was designed in 1932 by Professor August Dvorak. Its intention was to improve the comfort of typing through several methods, notably by putting the most common letters on the home row and alternating hands as much as possible (all the vowels are in the left hand).

Colemak was released in 2006 and is the work of Shai Coleman. Colemak was designed with the aid of sophisticated computer software to work out the optimal position of the keys. It also minimises the moving of keys away from QWERTY, making it easier to switch. Actually, only 17 keys are different, and most of those are either in the same hand or on the same finger. Z, X, C and V all remain, as do all of the punctuation characters, which is a major win over Dvorak.

My own history of keyboard layouts

I used to be reasonably fast on QWERTY. I’m a pianist, which i think helps a bit. I reckon i was probably about 70wpm (words per minute) on QWERTY, which is not too bad.

I switched to Dvorak in 2002. Colemak had not even been invented yet! I switched because a friend did. Some nerdy part of me thought it looked like fun, and i always enjoy a challenge! I spend a significant portion of my life typing, so anything that makes it easier or more comfortable is good for me! At my peak i got to 110wpm with Dvorak.

I think i heard about Colemak in 2009. I actually started to learn it back then, but i didn’t stick with it. The primary reason for that is the company i was working for started to favour pair programming at about the same time. Switching keyboard layouts on the OS is not a lot of fun. I had a TypeMatrix keyboard which can send Dvorak keystrokes from the hardware level, so with two programmers and two keyboards there isn’t a problem.

By then i already suspected that Colemak was a superior layout, and although i continued with Dvorak, i recommended Colemak to anyone who asked!

If only i had known then that the TypeMatrix could also support Colemak layout! For some reason they don’t publicise it, but you can get Colemak layout simply by pressing Fn+F5.

Switching to Colemak

I switched to Colemak in February 2011, after Tom Brand discovered the TypeMatrix supports it. Again, i was influenced to learn it because Tom was learning and i felt i would get left behind! But it was this keyboard layout analyzer that convinced me for sure. I pasted in some code, some emails i’d written, and some tweets, and in every case not only was Colemak superior to Dvorak, but it was also pretty close to the optimal layout if i had a custom keyboard designed just for me. That was my compelling reason to switch.

It has now been 5 months and i’m up to about 80wpm on Colemak. I want to get faster, i want to make fewer mistakes, but i am extremely happy with my decision to switch. Right from the first month i could feel that Colemak was more comfortable. I felt totally grounded in the home row. All my punctuation keys were back where they should be. I noticed faults in the Dvorak layout that i’d never noticed before.

I am now loudly and proudly #teamcolemak :D

News from TypeMatrix

I’ve just had an email reply from TypeMatrix. Two things really excite me:

1. They are intending to get Colemak skins printed very soon, and when they do they’ll be advertising it on their site.

2. They are trying to get their keyboards into schools to get them in front of children from an early age. The intention being that they’ll give kids the skins and let them choose between Qwerty, Colemak or Dvorak as they wish.

What a fantastic idea! If anyone has any ideas for participating in the experiment, i suggest you contact TypeMatrix!

Colemak keyboard layout

At eden lately there has been a surge of interest in the Colemak keyboard layout and TypeMatrix keyboards.

Colemak is an alternative keyboard layout to Qwerty, which as legend has it put the keys in a non-optimal position to slow people down on old typewriters in order to reduce jamming.

The diagonal arrangement of keys on most keyboards also harks back to the typewriter era. TypeMatrix avoids this historical baggage by arranging the keys in columns, and providing a hardware switch to both Colemak and Dvorak layouts.

TypeMatrix 2030 Colemak layout

My typing history

I switched to Dvorak almost ten years ago because i wanted a keyboard layout which was designed to be more efficient and comfortable to use than Qwerty. I became pretty fast on Dvorak: my typeracer average score was 97 words per minute.

For a few years i have suspected that Colemak is even better than Dvorak, and i would have switched sooner had i known that my TypeMatrix keyboard supports Colemak. You see, for pair programming, it’s really useful to have a keyboard with your chosen keyboard layout built in, otherwise you have to constantly change the settings on the operating system.

At the end of January, Tom Brand found out that TypeMatrix also enables Colemak. For some reason, they don’t advertise this fact anywhere! For the record, you press Fn+F5 and hey presto you’re in Colemak mode!

The deciding factor for me was this keyboard layout analyzer which allows you to type in your own text and see all sorts of statistics for different layouts. I tried it out with emails i have written, code samples and tweets, and in every case Colemak was significantly better for me than Dvorak (and of course, far better than Qwerty).

Learning Colemak

 #colemak typing practice at lunchtime with @tom_b025 on our ... on Twitpic

So at the beginning of February i started learning Colemak. I have been using aTypeTrainer4Mac which has a horrible user interface, but actually works really well in encouraging you with your progress, moving up through the levels at an appropriate pace.

In the middle of February i had a holiday during which i did a lot of Colemak practice, and used Colemak almost exclusively, so that when i came back to eden i was ready to pair program with Colemak.

I am still quite slow going, and have to apologise for all my mistakes, but for the last two weeks i have been getting better all the time. It is starting to come more naturally to me now, patterns are getting stored in my brain, and it feels really comfortable.

Colemak compared to Dvorak

 my lovely new "colemak" keyboard skin! thanks to @... on Twitpic

Only now that i’ve switched to Colemak can i realise the flaws of Dvorak. The L was a strain, and i did not like the second finger stretches to Y and F. It turns out the G and J are much more sensible characters to put there.

It’s great to have the X, C and V back to where they were on Qwerty, as well as the comma and full stop, and all the symbol characters. Not that i need to look anyway: my new TypeMatrix skin has none of those keys marked!

My best typeracer Colemak speed so far has been 44 words per minute. Not a patch on my previous Dvorak speed, but i will keep practising and hope one day to break 100 words per minute.

On teaching kids Colemak

I was recently asked whether Colemak/TypeMatrix would be good for school children to learn. Whilst i hate to think that the baggage of the past continues to be passed on to another generation, the truth is that we still live in a Qwerty world.

TypeMatrix keyboards are expensive, and Colemak isn’t easily available on all computers (unlike Dvorak). TypeMatrix does not yet make a Colemak skin, and the skins they do make look cluttered because of the overlap with the function keys. I enormously prefer the blank layout, but i can’t imagine many kids getting on too well with that!

I don’t know what the answer is just yet. I’d like to see more people realise the benefits of Colemak as a superior keyboard layout and make the switch. I would also like to see more Colemak keyboards made that don’t require downloading any software or switching any settings.

Maybe as a society we can begin to wean ourselves off the hangups of obsolete 19th century typing equipment and get used to a 21st century solution!