The original QWERTY keyboard layout is inefficient. It was developed in 1873 – originally for typewriters, but as newer technology was manufactured, it stuck as the layout of choice.. It’s been over a century and we’re still using it. This is because switching is really hard. It’s essentially the same as a piano player trying to play a piano in which every single key has been switched.
I like the Colemak layout. It’s a practical layout comparatively to the “fastest”1 keyboard layout, Dvorak. There are seventeen keys moved from QWERTY to Colemak (versus Dvorak in which, from what I can tell, every key is changed), so it’s not a complete change, but still pretty comprehensive.
The more keys that can remain on the home row, the better. While Dvorak seems to have the upper hand, I’ll defer to the 80/20 rule–if we can get a large portion of the benefits of a new keyboard layout by doing a less intensive transition to Colemak, that’s a win in my book.
Switching is hard! If you’d like to retain a reasonable amount of your typing speed, switching cold turkey to Colemak can be brutal, and dare I say, traumatic. Everyday typing becomes an infuriating experience!
Enter Tarmak. Tarmak is an ingenious system devised in the Colemak forums, which acts as a “transitional” layout system from QWERTY to Colemak. Here’s a nice GIF from the introductory forum post that sums it up well:
You shouldn’t expect to be at maximum typing speed immediately – after about two months, I still had some inaccuracies day-to-day. When should you switch? Here’s a nice answer from the Colemak forum:
I think focusing on accuracy is very important when considering when to level up. From my experience I suggest the aim should be between 95-100% combined with a speed of >25WPM. Having a greater speed initially helps, as performance will very likely decrease when adding more keys from the colemak layout.
If you’re looking for typing tests to score your WPM (words per minute), there’s lots of online options. I used GNU Typist–if you’re on Mac or Linux, it’s easy to install and navigate around, even as you learn a new layout. Because it was in the command-line, it was easy to hop in and do focused typing practice every day, while still continuing my normal coding patterns. Of course, just being on the computer at all is good practice!
The forum includes various downloads for most operating systems. I used this Github project that adds Tarmak options in the native OS X keyboard layouts. I was happy to see that once I finished Tarmak, Mac OS X had Colemak built-in. You can find all the various layouts in “Input Sources” under the Keyboard section of System Preferences.
One thing you may want to consider is how to transition between multiple machines. I have a work laptop and a personal laptop, and it was important to keep those machines synced on the same Tarmak transitional layout. I handled this by scheduling a calendar event where I would open both machines and change the layouts at the same time–of course, you’re welcome to implement whatever system works best for you.
Unfortunately, iOS doesn’t have Colemak support for day-to-day typing, but does have it for Bluetooth keyboards. I find that I type fine on my phone still, but interestingly enough, I revert back to Colemak sometimes when I’m not looking.
Overall, the move to Colemak seems to be a win so far – my wrists feel a bit better, and it’s another item checked on my ergonomic to-do list.