Skip to content
By: Bojidar Marinov Published: Last updated:

Reflections On Two Years Of Using Colemak

I finally found time to pick up a new project; looking at the calendar, it was Christmas Eve, 2021. It was on one of those occasions that I had enough time to do something, yet definitely lacked the time for anything big. Yeaaah.

So, I decided to start a new hobby—for the new year. And what better than switching to a different keyboard layout—such as the elegant Colemak-CAW layout?

_A diagram of the Colemak-CAW/ANSI layout, as generated by Note the ARST-NEIO home row arrangement
A diagram of the Colemak-CAW/ANSI layout, as generated by Note the ARST-NEIO home row arrangement

Around that time, I had read Dan Luu's article on productivity and velocity, and the part about programmers being typists first struck a chord in me. Of course—I was a programmer and a writer, and typing is what I did for most of my productive time; hence finally figuring out all the hype about custom keyboards and layouts would surely improve my productivity!

Well, today, it has been 2 years since the fateful day I decided to switch to Colemak. I suppose this is sufficient time for me to hold some opinion about it—and to have a story to share. So let's start at the very beginning, how I decided to try a different keyboard layout, how I picked the one I ended up using, what the experience of switching was like, and finally, what are some things I enjoyed and disliked about the whole process.

(Click to skip to the takeaways)

Defining the problem

I had already heard of alternative keyboard layouts. Back when I was working with Godot, a few capable French game developers introduced me to AZERTY. And, of course, everybody's heard at least something about Dvorak. Plus, I've been switching back and forth between Bulgarian and English keyboard layouts every time I've used a computer.

But rather than wanting to try out a keyboard layout just for the fun of it, I actually had a deeper issue I wanted to solve. Both of my hands were hurting after was using the computer—and I was using a computer for pretty much everything: coding, writing, talking with friends. While the best long-term solution is to reduce screentime and give myself more time to rest, I wanted to see if I can optimize the way I use a computer so it doesn't results in as much pain.

So, I went ahead and read through a bunch of articles about computer ergonomics ending with (roughly) the following list of points:

I couldn't really fiddle with my posture as I was away from my main workstation for the holidays, and investigating ergonomic mice right away wasn't too exciting, so I did natural and obvious (/s) thing of trying a more ergonomic keyboard layout. Plus, if I was to be learning touch typing anyway, I could just switch the keyboard layout and be no worse off for it—right?

Picking a layout

At first, I went for Dvorak, but I disliked where it places punctuation and how it insists on keeping vowels separate, so I ruled it out after tried it for a few minutes. I then happened upon Colemak and loved its idea of pairing ergonomics with familiarity by changing only a few problematic keys and keeping the quintessential Ctrl+Z/X/C the same. I browsed some more, but ended up ruling the rest of the contestant out on the grounds that they were too niche to be widely supported, and I wanted something vaguely popular for my first alternative layout. (Though, Carplax looked rather interesting.)

The rest of that day went by in installing and configuring Colemak on my machine, and firing up a keyboard teaching tool. On recommendation from the Colemak forums, I tried Amphetype, and in my experience it was the best simple app for the job, so I stuck with it. As it didn't have a keyboard overlay showing what they layout looks like, I just pinned a image viewer on top of it; yet on the next day I decided to go the extra mile and rearrange all the keys of the cheap USB keyboard I was using to fit the layout. I thought I intended to look at the keyboard if I forget the location of a key; but I ended up learning touch-typing without looking anyway, so, other than an excuse to ruin massively improve the keyboard, this didn't really lead to much else.

What the poor, poor keyboard ended up looking like after I was done with it

During initial testing, I felt that the default Colemak D and H keys were too hard to stretch to, so after a bit of deliberation, I switched over to the Curl/DH, Angle, and Wide mods, collectively affectionately known as the Colemak-CAW layout, along with the rest of DreymaR's edition—and, to be honest, I'm not sure I would have stuck with Colemak if it wasn't for his amazing work, both in terms of keyboard tweaks and platform support.

Sadly, in using the Angle/Wide mod, I lost the nice property of Colemak that the Z/X/C keys stay the same (they shift a key left), but well, you win some, you lose some -- in time, I grew quite accustomed to that.

At that point, I decided, in the foolishness of unbiased youth, there are still a lot of holidays up ahead, plus the start of January is a bit dead anyway, I can just switch my typing over to Colemak-CAW, and drop QWERTY entirely. That way, I would be forced to learn the new layout, and, well, any typing I did outside of practice would be free practice in itself!

I'm not sure I was quite ready for what followed.

Learning the layout

At first, I distinctly remember being frustrated after just a few minutes of typing. None of the keys were where I hoped to find them, so every single letter required . For a while, this actually pushed me away from using my computer at all. As I felt I started using my phone more just because of its familiar interface, I switched its keyboard (on recommendation again from DreymaR's website) to MessagEase and thus made it just as unfamiliar as the computer.

It was suffocating. Blinding. As if I could no longer communicate. Words that were a breeze to write before were now a guesswork of a mystical tap-dance. I switched words involving rare consonants for ones I knew better. I slowly turned gloomier… frustrated that for all my time spent thinking and using keyboards, I still required so embarrassingly much practice to learn just one permutation of the familiar keyboard layout. Yet also, determined that I won't let a petty keyboard layout stand between me and the world and shut me up for good.

Honestly, looking back, that was the most pivotal part of the experience for me, both in terms of the emotions it had me going through, and in terms of giving me a glimpse of a world in which people are constantly struggling to convey their thoughts and ideas to their computers -- and that was invaluable. If anything, I want a world where people understand computers and control and operate them effectively—and this experience brought me face to face with the opposite, a world of trying to be understood and failing to get even the simplest words across.

Either way, a few days later, my WPM (words-per-minute) was climbing steadily with the continued practice. Soon, I could finally write the quick brown fox sentence entirely blind, without having to look at either the keyboard or the monitor while I'm typing—and I felt rather accomplished. In my own little world of being able to type again.

I realized that progress hadn't been as great as I'd hoped for, however, once I returned back to work at the start of January. My typing was slow enough that I had to apologize to colleagues for replying so briefly in chat—though thankfully, they were quite accepting. And if that wasn't enough, coding wend even slower as I still had to relearn editor shortcuts and punctuation keys.

Yet, I kept practicing, kept coding, and—by a miracle called consistent repetition and learning—ended up finally surpassing my initial QWERTY WPM (that I never measured, so, you'll have to take my word for it) with a touch-typing novel keyboard layout—all in the course of a few months!

I'd finally become a keyboard adept and not just a keyboard enthusiast.


Meanwhile, I slowly worked through the rest of the points of the ergonomics list -- adjusting my desk and chair to be the exact height comfortable for me (using handy diagrams from around the internet), getting a more ergonomic mouse (sadly, losing the fully-wired nature of my setup), and switching to a numpad-less mechanical keyboard so wouldn't reach as far for the mouse (I didn't rearrange that keyboard's keys, as that felt unnecessary -- so the layout is also a security measure now, as everybody I know just refuses to use my computer outright).

The only thing I haven't yet gotten to is reducing my mouse usage further; since XKB didn't like the Extend layer, and using even more keyboard shortcuts than I do would likely have me switching to a modal/Vi-editor (and I don't feel ready to change the way I communicate with my computer yet again). Another thing I'm meticulously postponing is getting some sort of split keyboard for additional ergonomics -- but those seem to cost an arm more than my current setup, so they will have to wait for now. And finally, I should have probably kept practicing in Amphetype even past ~70 WPM, but there will be time for that too.


A few quick bite-sized takeaways from my experience of learning Colemak-CAW:

The upsides of using Colemak

Having used Colemak-CAW for two years now, there are plenty of things that I absolutely love about it, and many a friend have gotten a rant out of me just asking about keyboards.

The downsides of using a different layout

That being said, there are downsides to using a niche layout. I was prepared to deal with some of them, but still ended up surprised at how widespread some issues were.

Reflections and thoughts for the future

I feel like using a different layout has given me more appreciation for the work and thought that goes into making keyboard layouts work well. Plus, I no longer treat supporting different input layouts methods just an "other people's problem"—who am I to know if the person next to me might have only one good way of input characters on a computer, which might not be QWERTY?

Furthermore, switching layouts has given me a better appreciation for keyboard geeks making custom layouts and custom keyboards—and the joy that comes from that. So far, I've successfully avoided falling down the rabbit hole, but I can confirm that merely experimenting with switching one's layout is enough to inspire a taste for more, an urge to try another, even more convoluted input method. Like—imagine—what if I could type words by just wriggling my fingers to actuate a few sensors? I would be able to type anywhere!—record my thoughts at any time! I'd be unstoppable! Mhahaha! Err, no idea what got into me just there. 🙃

With all of that in mind, I do still quite like Colemak-CAW, and I would gladly keep using it for the next 2, 4, 8, or even 16 years.
Yet, moving forward I would love to improve my Colemak-CAW experience. So far, I always found myself too busy to contribute, but perhaps the time has finally come to fix the Curl/DH mod for the Bulgarian layout (done), to open issues and/or suggest patches with GTK and Electron, to raise support tickets with Canva, to get the Extend layer working, and perhaps to even tweak the shortcuts of the apps I use instead of sticking with just the QWERTY-inspired ones.
On top of that, I am not convinced that Colemak-CAW on a standard ANSI keyboard is the best keyboard layout there is (it's not, it's much better on ISO keyboards 😂), and I would love to play around with tweaking it further... perhaps, when I have a few more years of experience to draw on.

Still, how about you? Have you used a non-standard layout yet? If not, are you more likely to try one now that you've read about my experience with it? If yes, which one, and what are your overall thoughts of it?