One year with Colemak

written by Ruud van Asseldonk

About a year ago I switched to Colemak. At the time I was experiencing a slight strain in my hands. I had bought a new keyboard already, but the strains persisted. I had heard about Colemak before, and a few months later a post about the keyboard layout made it to the front page of Hacker News. I decided to give it a try.

Afraid to be completely inproductive for some time, I did not want to make the switch cold-turkey. I practiced Colemak in the evenings, and typed Qwerty during the day. After little more than a week, I got to a point where I started to make lots of mistakes typing Qwerty, but I could not type proper Colemak either. This was something I had not anticipated: I expected to learn Colemak in addition to Qwerty, not instead of it! Apparently my muscle memory can store only one keyboard layout. Maybe this is different for different people, but it was not something I expected. I decided to go through: Colemak full-time it was.

At first I wasn’t very fast, but within a few days I could type at a reasonable speed again. Within a few weeks, I think reached a speed again where words per minute was not the bottleneck any more. After a few months, I think I could type as fast as I could type Qwerty, maybe even faster. I did not measure my typing speed before making the switch, so unfortunately I have no hard data.

What you gain

Aside from a layout that is optimised for typing instead of not jamming typewriters, what does Colemak get you? For starters, it is a multilingual layout, and it puts useful punctuation right at your fingertips. Dutch requires accents and diaereses for some words, so the most common keyboard layout is US-international with dead keys. e after " becomes ë, e after ' becomes é, etc. This means that you often need to type a space after a backtick or quote to prevent it from combining with the next character. Especially when programming, the quotes are far more frequent than accented characters, which is unfortunate.

In Colemak, the most common characters are not behind dead keys. A quote is simply a quote. The ë is behind a dead key (AltGr + d, e), but the é is not (AltGr + e). Colemak uses AltGr for extra characters, and it makes a lot of sense. AltGr + - becomes an en-dash, and Shift + AltGr + - becomes an em-dash. These are characters that I use more often than e.g. the percent sign, so it is nice to have direct key combinations for them. Also, correct quotes can be typed directly: AltGr + ( for , AltGr + ) for . Add shift to make it a double quote.

I do not know for sure whether I can type Colemak significantly faster than Qwerty. For most things I type, speed is not the bottleneck anyway. I do know that Colemak is a lot easier on the fingers, for Dutch as well as English and code.

The disadvantages

The main disadvantage of Colemak has nothing to do with Colemak: it is Qwerty. Qwerty is still pervasive, and you do not always get to choose your keyboard layout. Need to quickly look something up at the nearest computer? It will likely have a Qwerty keyboard. Want to help someone out? She will probably use a Qwerty layout. Sometimes you do get to choose the layout. At my university for example, I could set the layout to Colemak. I still need to use Qwerty to log in, but my passwords are either muscle memory or too hard to remember, so that is not an issue. Also, Colemak is not supported out of the box on Windows, so it might be more difficult there if you do not control the machine.

An other aspect of the pervasiveness of Qwerty appears in key bindings. Qwerty is assumed everywhere. Want to walk around in a shooter? wsad suddenly became a very awkward way of navigating. hjkl in Vim? These are not all on the home row any more. Of course, all of this can be remapped. For the shooter it is easy, but for many applications it is a balance between a sane layout and sane meaning. I did not re-map any keys in Vim (except mapping caps lock to escape, but I did that with Qwerty as well).

Was it worth it?

In the end, I think it was worth the switch. Colemak is a much nicer layout to type, and it is especially nice to have keys for the correct dashes and quotes. When you need to work with a Qwerty keyboard, you can always fall back to non-blind typing. For me that is more than an order of magnitude slower, but it is rare enough. I will continue to use Colemak for the foreseeable future.

More words

Writing a path tracer in Rust, part 1

As a learning exercise, I am going to port my spectral path tracer Luculentus from C++ to Rust. Read full post