Keyboard Rabbithole

2023-01-06 • 7 min read • Tags: Comp

Timeline

Date Event
2008 Winter ??? I learn about keyboard ergonomics at a Ruby meetup
2009 Summer ??? I buy a TypeMatrix 2030 keyboard and start training with BÉPO
2009 Autumn ??? I give up
2018-11-07 I buy an ErgoDox and start training with Colemak Mod-DH
2019-02 I give up again
Bépo TypeMatrix layout
BÉPO TypeMatrix layout
,--------------------------------------------------.           ,--------------------------------------------------.
|   Esc  |  1 ! | 2 "  | 3 ·  | 4 $  | 5 %  |  º \ |           | ¡ ¿  |  6 & | 7 /  |  8 ( | 9 )  | 0 =  | Backsp |
|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
|   TAB  |   Q  |   W  |   F  |   P  |   G  | Home |           | End  |   J  |   L  |   U  |   Y  |  Ñ   |  ' ?   |
|--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
|  CAPS  |   A  |   R  |   S  |   T  |   V  |------|           |------|   M  |   N  |   E  |   I  |  O   |  ENT   |
|--------+------+------+------+------+------|  <>  |           |  -_  |------+------+------+------+------+--------|
| Shift  |   Z  |   X  |   C  |   D  |   B  |      |           |      |   K  |   H  |  , ; |  . : |  UP  | Shift  |
`--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
  | Del  | PgUp |Ctl/PD|Alt/[ |Cmd/] |                                       |Cmd/{ |Alt/} | LEFT | DOWN | RIGHT|
  `----------------------------------'                                       `----------------------------------'
                                      ,--------------.       ,--------------.
                                      | Num  | Mouse |       | Qwer | Ctrl  |
                               ,------|------|-------|       |------+-------+------.
                               |      |      | FN    |       |SPaste|       |      |
                               |LShift|Backsp|-------|       |------|  ENT  |Space |
                               |      |      | IDEA  |       | T-pre|       |      |
                               `---------------------'       `---------------------'

                                 Example of an ErgoDox with Colemak Mod-DH layout.

Enlightment

I left the friendly Ruby meetup that evening of 2008 with a couple of good learnings:

  • Modern keyboards are outdated. This is something I couldn’t pinpoint but knew intuitively from all typing errors I do all day. Modern keyboards inherit from typewriters. The speaker explained that the QWERTY layout (patented in 1878) had been developed to slow typists down so that the metal hammers of keys do not jam. This popular belief is now subject to discussion. Whatever the motivations behind the development of the QWERTY layout, modern keyboards have a couple of incapacitating properties:
    • staggered (offset rows)
    • often-used keys are placed farther apart
  • Solutions exist:
    • orthogonal keyboards, like the TypeMatrix
    • friendly layouts like Dvorak (patented in 1936!) or BÉPO in french

Anger

I hate how QWERTY puts strain on the left hand. Check the following words for example, they mainly (when not solely) consist of letters on the left side of the QWERTY keyboard, which makes them really hard to type: start catch crash artifact created greatest waterfall several was were theater faster threat affected read at rest watch waste staggered. Since a young age I’m used to type “start” with both hands!

I hate arrow keys which I use constantly and are far away from the home row, the row in the middle where fingers rest. And why are PageUp and PageDown in different positions on different laptop keyboards? How I love emacs’ Ctrl-N / Ctrl-P!

I said it.

Assiduous attempts

First off, very early in my career, because of emerging pains or discomfort, aka repetitive strain injuries (RSI), I changed 2 things:

  1. Use a wrist rest.
  2. Switch the position of my mouse to the left of the keyboard. I’m right-handed. The numeric keypad on the right imposes a very wide angle when rotating my arm to grab the mouse. This would eventually cause pain in my shoulder.

When I encountered new keyboard layouts in 2008, I was:

  • very comfortable with QWERTY keyboards, typing fluently albeit not touch-typing
  • a somewhat experienced software engineer and heavy user of keyboards shortcuts
  • writing in multiple human languages. For some time I was virtually switching keyboards multiple times a day thanks to setxkbmap us,fr -option grp:ctrls_toggle. Nowadays I primarily type in english and use the compose key (setxkbmap -option compose:lwin) for languages other than english, which is definitely not ideal either.

The TypeMatrix/BÉPO experience didn’t last long. It felt very comfortable learning it. But I was interrupted in my learning and somehow never got back to it.

For the ErgoDox I wanted THE definitive setup. So I took great care to select the right layout for me. Ironically one design decision behind Colemak that resonated with me was to remain close to QWERTY still.

Actually I started learning plain Colemak but quickly switched to Colemak Mod-DH. Like many others I experienced the discomfort of the lateral movements for D and H. Eventually, even after about two months of enthusiastic daily practice — I even used my setup at work for a couple of weeks, I couldn’t reach 40 words-per-minutes (wpm) 😬.

A few words about the ErgoDox and mechanical keyboards. I can’t remember where or how I heard about the ErgoDox the first time. I think I was seduced by the great ergonomic design, the split board (each hand with its own keyboard) and more keys under the thumbs. But the greatest thing about mechanical keyboards is that you can program them! And they will be able to do much more than conventional keyboards: multiple layers, program each key possibly with multiple behaviors (short/long press), etc.

So of course I spent some time not only setting up my ErgoDox with Colemak Mod-DH, but finding the best arrangements — the best keyboard — for me.

Lesson learned

One size does not fit all. It’s like shoes.

My experience showed me it’s hard to change everything at the same time. My second attempt with the Colemak Mod-DH failed because I was cumulating difficulties:

  1. Switching layout. It was not just one language I needed to re-learn typing, but three! Plus all the terminal/shell commands or technical terms, plus programmer typing (punctuation and keyboard shortcuts). That’s a lot.
  2. Switching to a new and sophisticated keyboard.

Hope

My own private layout

During the ErgoDox/Colemak Mod-DH experiment, I realized Colemak wasn’t completely for me. I mean it was a huge improvement compared to QWERTY, but I couldn’t reach the point where typing felt natural and easy again.

My main complain was the group of letters A-R-S-T on the home row left hand not allowing for enough hand alternation. “START” is still typed with one hand.

Starting from Colemak, I shuffled letters around, and using this layout analyzer, I came up with this layout:

Q W F P B J Y O H ;
A U S T G K N E I R '
Z X C D V M L , . /

It might still prove imbalanced when I think about french words like “mentir”, “retirer”, “lentement” or “noir” which would mostly solicit the right hand…

I might also switch I and R to have ER adjacent.

That was in 2019. I still have to test it 😁.

The Planck keyboard

Planck mechanical keyboard
fig. Planck mechanical keyboard

From 2017 to 2018 I witnessed a colleague using a Preonic in QWERTY, but it didn’t look like a huge improvement, over say the TypeMatrix, at the time. I think I didn’t get the layer concept.

The Planck goes to the bottom of compactness: they say all keys are no more than two keys away from the home row! All characters invisible on the keyboard (digits, Fn keys, punctuation so on) are reachable via layers which you activate with special modifier keys, like “Upper” or “Lower”, similar to Shift.

Roadmap

Date Event
2023 ??? Adopt Planck QWERTY
2024 ??? Switch to my own layout

People who have switched to other keyboards/layouts testified that they need to carry their keyboard everywhere. This is a bummer when using laptops away from your desk, like on the coach. Hopefully the Planck is a good compromise.

Also I don’t know what impact is going to have the potentially added distance between the keyboard and the mouse or touchpad.

I’m nevertheless excited to attempt improving my situation.