october 13, 2023

{ learning a new keyboard layout }

tags: hardware, off topic

Wanting to take a short break from my coding projects, I decided I'd learn a new keyboard layout. I've used exclusively QWERTY as long as I've been using computers, but decided I would give Colemak a try. Here's how it's going -- and how badly my typing speed has suffered.

Understanding Keyboard Layouts

The default keyboard layout on English language computers is QWERTY, so named because the first five letter keys on the top left of the keyboard are Q, W, E, R, T, and Y.

The fact that we use this keyboard on computers is a holdover from typewriters. The QWERTY keyboard was a great choice for typewriters because it actually prevents you from typing too quickly. A lot of the most common letters require a reach. This slows you down as you type.

On a typewriter, this is useful. Each keystroke has to raise a typebar that strikes the paper and has to fall back into place before the next typebar can raise. Go too quickly and the typebars will get jammed. For instance, my typing speed on my typewriter is something like 40 wpm (those keys are really heavy, okay?) and as soon as I start going any faster, I jam the keys.

Obviously this isn't a problem on a computer keyboard. I type at 80 wpm on my computer and the only thing preventing me from going faster is my lack of typing skills and propensity for typos. My keyboard and computer will easily support typing at inhuman speeds.

QWERTY vs Dvorak vs Colemak

QWERTY has been in widespread use since the late 1870s. During the last 150 or so years, several alternatives have been designed to overcome some of the shortcomings of QWERTY, such as:

  • Only 32% of typing uses the home row.
  • A lot of common letter combos and words use the same finger or hand.
  • Many words require hurdling over the home row.

All of this leads to more time, effort, and errors. Try typing "minimum." It uses two fingers and they have to keep jumping over the home row. How often have I spelled that wrong?

Another challenge for many people - but admittedly not me - is that most typing is done on the left hand on QWERTY.

August Dvorak patented his keyboard in 1936, aiming to fix these problems. It moves 70% of the typing to the home row, aims to alternate hands when typing common words, and reduces reach to more common letters. Here's what it looks like today:


In 2006, Shai Cole developed the Colemak keyboard. He wanted a keyboard that wasn't as difficult to learn for QWERTY typists as Dvorak but still has the same benefits. Colemak moves 14 keys from the QWERTY arrangement and leaves almost all of the punctuation keys the same (Dvorak moves almost every key). The current version looks like this:


With this arrangement, 74% of typing happens on the home row.

Getting Started - How to Learn Colemak Typing

I decided to learn Colemak over Dvorak. My main reasons were that about half my typing time is programming which requires a lot of punctuation and I didn't really like the layout of the punctuation on Dvorak. Similarly, I use a lot of keyboard shortcuts and read Dvorak wasn't great for those. There is programmer Dvorak, but by the time I figured that out, I'd already spent 30 minuter learning Colemak.

To get started, I just downloaded and installed Colemak for Windows. For Mac and Linux, it comes preinstalled. I have the version with the CapsLock key, but the official version remaps CapsLock to be another Backspace/Delete key. I'm thinking I might install that version instead because I really do not need CapsLock. I'm also debating remapping CapsLock to be the Windows Delete key because I use that frequently enough to make the current reach annoying.

For practicing, people recommended putting up a picture of the Colemak keyboard and looking at that while you type rather than switching your key caps around or putting labels on your keyboard. As with QWERTY, you shouldn't look at the keys and if the keys aren't right, then you'll never be tempted to.

So now it's been three days of using Colemak. Here's how it's gone:

Day 1

The Colemak website has this handy reminder on their installation page, which is good to note because I totally didn't think about it:

Warning about passwords: If you have any passwords in your computer, either change them (e.g. with a password of numbers only), or learn them in the new layout!

Firefox is very slow to register what keyboard I'm using. It does eventually catch up, but I did several minutes of troubleshooting at first. Chrome works much better for frequent switching between keyboards.

At first impression, it feels very weighted toward the right hand. Four of my five vowels are on that side as well as many common letters. It was even unbalanced enough that I did some research on "Is Colemak good for left handed people?" Looking at the heat map, it is actually pretty balanced. That black key is the "e" and that moves from left to right, but everything else is well spaced.

qwerty_freq.jpg QWERTY

colemak_freq.jpg Colemak

I've determined after typing some in QWERTY that QWERTY is so unbalanced that a more balanced keyboard seems wrong. I also realized that I don't mind having fewer letters to type with my left hand. Because I'm left handed, I rely on that hand for keys like the space bar. Remapping CapsLock to Backspace will also likely help that feeling.

I did about 30 minutes of typing practice at Monkeytype. By the end, my I was up to 15 wpm!

Day 2

After some morning typing practice, I nudged up to 16 wpm. It is interesting how quick some of the letters remapped in my mind. I am sure it helps that about half of the letters stayed the same, but already I am reaching for the right spots with some of those that have moved. Others just do not seem to sink in.

It is strange having to think about where letters are on the keyboard. When touch typing on QWERTY, it's completely muscle memory. I would probably do worse if I thought about where each key was. But I can tell I'm already building the muscle memory for Colemak. I am also steadily building a headache.

I tried to leave my keyboard on Colemak all day at work. The extent of my typing was about 30 Slack messages and a few Google searches, so I got some practice without feeling overwhelmed.

I also wrote most of this blog post in Colemak. It took many, many hours. A few paragraphs into the "Getting Started" section, I switched back. It's frustrating not being able to type as fast as I think!

Before bed, I did a few more typing exercises and got up to 20 wpm.

Day 3

I'm up to 25 wpm. The novelty has worn off and now this is just frustrating.

Also frustrating is that sometimes the keyboard will just switch on me? I'll be typing and the keyboard will change from QWERTY to Colemak or vice versa. It's making for a discombobulating experience. Specifically in Firefox, I also have two "p" keys. I'm guessing it's either a Windows 10 problem or an issue with the installation. But honestly, my typing is so bad right now that this isn't making it that much worse.

Moving Forward

There were two main schools of thought for switching from QWERTY to Colemak. The first was to go "cold turkey" and switch over completely. My guess is that you will have a couple of miserable days but ultimately pick it up very quickly.

The other approach, which the Colemak website recommends in their learning guide is to practice 10 minutes each day until you reach 2/3 of your QWERTY typing speed and then switching over.

I would like to take the first approach, but considering I did not even make it halfway through this blog post, we shall see!