Categories
2023

Introduction to keyboard ergonomics (mostly for people typing +6 hours a day on a keyboard)

Why I think keyboard ergonomics is important

In this post I’ll explain what I do and have been done for many years, to minimize the problems from typing for sometimes many hours on a keyboard – first on the job and later back home, in the evenings/weekends etc.

I’ll go through my own experiences and explain how keyboard ergonomics became more important over the years. I’ll explain some mistakes I didn’t knew was mistakes for many years in the beginning and I’ll tell why it’s a problem, if you type for many hours on a keyboard and begin to feel pain – go through some different keyboard types and explain why I changed keyboard layout. I’ll also make this post an introduction to the concept of automated (software) keyboard layout analysis and introduce some concepts that I and many people normally don’t think about, in the search for a so called “optimal keyboard layout”. Finally I’ll add some links to additional advanced background information that I didn’t feel I had time enough to write about.

Historical background:

When I was a young boy and started using computers I like many others didn’t think about keyboard ergonomics. When I became a teenager, I had begun programming simple things and in my mid-teens I began learning and using assembly/machine code, mainly because the PC I had was too old for many of the games my classmates had on their newer and more modern PC’s. The years up until I was almost 30 years was spent mostly in the education system and I used computers in probably the same way people today use it: For school work, email/internet and video games. But then something happened to me:

I began using Emacs on Linux “professionally”…

As a young engineering student I remember, when I started doing more “advanced” reports for higher-level engineering courses and all those courses needed proper mathematical typesetting. I looked around me and all the brightest people recommended to not use Microsoft Word for such reports. The MS Word alternative – even Open Source – was to learn LaTeX. If you don’t know it, LaTeX is the preferred typesetting system for researchers, mathematicians, scientists, engineers and it was an incredible tool for making nice and great-looking reports with proper mathematical expressions and symbols – although there was a steep learning curve, so it wasn’t for everyone. Also, LaTeX isn’t a WYSIWYG-editor like MS Word and similar editors – so you write articles using plain text-files with a syntax relatively similar to HTML and then run a program to process that text-file and generate a PDF-file.

Because I came with a (also by that time) proficient and experienced Linux-user’s background I thought about what was the best editor to use, for producing my LaTeX-reports. It came down to a choice between either VIM or Emacs – and I remember it took a long while to make up my decision and there were pro’s and con’s for each, see e.g. https://en.wikipedia.org/wiki/Editor_war. I joined the comp.text.tex-newsgroup and bought LaTeX-books and eventually decided to go with Emacs, because it had AUCTeX and preview-latex which looked great as seen below:

The screenshot examples above are from the preview-latex webpage. Although LaTeX-input files are ASCII-only, this combination helped to visualize graphics and equations without compiling the whole document so it was easy to quickly check if something looked correct (like mathematical expressions).

Everything was fine for many years…

In a typical work week I spend around 37 hours doing my primary work and additionally, add maybe give or take in average 15 hours at home, working on my side projects – roughly +50-55 hours a week. It’s a lot of hours, typing on a plastic keyboard. It’s probably been like this for +20 years and it’s a good balance for me because I see when I work more than 55 hours per week, it becomes too much.

For years I didn’t notice working too much with a keyboard (and mouse) could be a problem. When I was around 30 years old, I however began to feel pain or aching in my fingers, my hand or wrists, typically after working too many hours per week in front of a keyboard and computer. I understood I began to feel RSI warning-signs. I’ve read about this many times since then and typically people experience problems with:

  • shoulders
  • elbows
  • forearms and wrists
  • hands and fingers

When I’ve been typing on a keyboard for too many hours (>55-60 hours per week) I know from experience that I’m usually experiencing pain, aching etc in arms, wrists, hands and/or fingers (the last 2 categories) and this is also when I know, that I should soon begin to relax – do something without a computer for some days, e.g. in the weekends. The pain doesn’t come from one day to the other – it gradually becomes worse, if ignored… I don’t remember ever having problems with shoulders or elbows. I’ve read that the most common repetitive overuse injury in the hand is called “tendinitis”, i.e. it is what happens when a tendon becomes inflamed and for me I’ve found that this is when I should go to the gym, watch movies or do something completely without a computer.

Part of the solution

I remember I was a PhD-student – around 12 years ago and I made the decision to switch keyboard layout and go away from the typical QWERTY-layout. I started using Colemak instead of Dvorak which also was a serious candidate (more about that decision below). I switched to avoid RSI-symptoms and therefore improve productivity – I believe it’s more ergonomically correct and healthy. I found a lot of internet discussions where people argued about why a given keyboard layout was or is “optimal”. I also joined internet forums with people discussing keyboard-layouts and overall, Colemak enabled and enables me to still use a normal QWERTY-layout because not all keys are different – only 17 keys are changed when comparing to QWERTY. Furthermore, “Z-X-C” typically used for undo, cut and copy-operations were left. This made it relatively easy to switch between layouts, when I e.g. used other computers than my own.

It was a big decision because it took probably 2-3 months to be comfortable with Colemak and obtain reasonable typing speed/accuracy and things were slow in the beginning (there are free online websites and applications with practice lessons to help make the transition). Colemak was/is also a smaller step to learn than DVORAK is, where pretty much all keys have been swapped. I think in terms of “muscle-memory” the switch between QWERTY and DVORAK is much harder compared to the switch between QWERTY and Colemak.

In the years since I switched I’ve always also only used mechanical keyboards instead of the cheaper plastic membrane counterpart keyboards that are used in many workplaces – but ergonomically horrible (at least for me). Even among experienced software engineers or people typing all day, I see people who don’t understand the difference between a bad and a good keyboard. People tend to stick with cheap plastic membrane keyboards and also recommend these – and probably it’s because we’re all different (if that works for them it’s fine with me). I know from experience it isn’t good for me, long-term – to use a plastic-membrane keyboard, even if they’re called an “ergonomic keyboard” (these often comes with a slightly different layout, but the quality is the same as the cheapest keyboards). When I read internet forum discussions where people discuss this problem, it’s generally also mostly something that people who type on a keyboard for at least 6-8 hours a day, has a qualified opinion about.

But it wasn’t just the keyboard layout and the keyboard – it was also the editor…

Eventually only around 4 years ago I came across a webpage that told me that “Emacs is evil”. While making this post I’ve tried to Google and search for that webpage, but unfortunately I cannot find it so it probably doesn’t exist any longer. I however think that the “Emacs is evil”-website was a big eye-opener for me and it wasn’t the editor itself – it was the default keybindings or key-combinations where modifier keys (e.g. control-key) were needed for a lot of common tasks such as opening/saving files, compile a program/document, change file, search for something (grep) etc.

I always had to type “control”-something (e.g. C-x C-f and C-p+ or C-h+something) too many times per day and that pinky-finger stretching became problematic. In retrospect, I think if it wasn’t for all that Emacs finger-stretching the whole time, I wouldn’t have looked into keyboard ergonomics and at least not at that age. I’ll now quote an almost 10 years old question and a bit of the answer: Question: Does Emacs cause “Emacs pinky”? The answer from http://ergoemacs.org/emacs/emacs_pinky.html is from a page that doesn’t exist anymore but it was quoted while it existed and I’ll repeat the quote below because I think it’s correct and useful:

Emacs makes frequent use of the Control key. On a conventional keyboard, the Control Key is at the lower left corner of the keyboard, usually not very large and is pressed by the pinky finger. For those who use Emacs all day, this will result in Repetitive Strain Injury.

From the (now removed) ergoemacs.org-website

The Emacs-wikipedia also has a small section about “Emacs pinky”: https://en.wikipedia.org/wiki/Emacs#Emacs_pinky – and the website http://wiki.c2.com/?EmacsPinky defines “Emacs pinky” as “hitting Control so much your pinky hurts“. I believe the eye-opening lost “Emacs is evil”-website was created by Xah Lee (based on my memory) who has written a lot about Emacs and also created some packages, e.g. “ErgoEmacs Keybinding: an Ergonomics Based Keyboard Shortcut System“, xah-fly-keys (claiming “this is the most efficient editing system in the universe”) and who previously had http://ergoemacs.org/ (not working anylonger).

It’s a pity the some of these webpages aren’t there anylonger, but at least the gist of the problem is hereby passed on. One thing to add here is also that Xah Lee has a page about ergonomic keyboards which might the useful, if you’re reading this and find it to be of interest. Last, but not least I found it a bit interesting to read Xah Lee’s article about History of Key Shortcuts: Emacs, vim, WASD, Etc. After having read all about the Emacs pinky-issue, I understood that I shouldn’t continue to work as I’ve done earlier. I tried to look for a solution and Xah Lee also has an article about that here: How to Avoid the Emacs Pinky Problem. One of the solutions I could see, was to manually remap my keys, at least modifier keys – another solution was to use “Evil Mode” in Emacs – which is a way to get “vim”-keys working in Emacs.

I went away from using Emacs and changed to VIM/Neovim

The idea of using a solution where some keybindings are taken from another editor and used in Emacs or keybindings are being remapped from the standard layout wasn’t an idea I liked. When I customize keys I don’t want to customize everything – only small changes that deviate from the standard. I decided to switch my main editor to Vim / Neovim, which I believe a really good solution and I haven’t looked back since then. Vim-key emulation is also relatively common and found in e.g. Visual Studio Code and QT Creator where I’ve obviously enabled them, for quick/fast navigation. VIM is wonderful – I feel it’s incredible powerful and it’s one of the reasons I love Linux for.

The sections below are gradually more advanced – probably not for everyone – but it pretty much summarizes my knowledge today in this area.

About the mechanical keyboards I’ve owned

The section below is about the mechanical keyboards I have owned and I’ll explain a bit about why I bought them and what I discovered. If you’re new to the concept of mechanical keyboards, you might not know about the concept of different key-switches – I recommend checking out the links below or googling for related keywords:

I have hands-on experience with the following keyboards:

  1. My first mechanical keyboard was a Das Keyboard – don’t remember the exact model – this was excellent in the way that it didn’t look like a spaceship or something completely untraditionally. So it also looks good in a workplace-setting and nobody comes asking questions about why you have such a “weird keyboard” on your desk.
  2. I later think I bought the Ergodox Ez (not moonlander, it was some years before that) – but this is a kind of keyboard that attracts attention in the office, because it’s a split keyboard and not many have them. The theory about using split keyboards is that it’s more ergonomically because the user can easily adjust the distance, which should reduce should tension etc. I think it’s correct but my main concern isn’t with my shoulders.
  3. I probably then I bought my first Kinesis Advantage 2-keyboard around here – and it’s overall the best keyboard I’ve ever had, although it’s also the most expensive I’ve ever bought and had. It’s a very special keyboard, because it has concave keywells, scooped into a bowl shape. This reduces hand and finger extension and its separate keywell-positions keeps wrists straight and perpendicular to the home row. Like the Typematrix-keyboard, this keyboard also has keys arranged in vertical columns, which supposedly should be more “natural” – and I think it also is.
  4. Next up, I bought the Typematrix 2030 keyboard, because it was different: It was small and portable, so I could bring it around to other places and at the same time – it had straight vertical key columns. I think the straight vertical key columns feature was/is a bit overrated for me and it wasn’t a mechanical keyboard so what I didn’t knew was whether or not the advantage of using vertical columns was a bigger advantage than the disadvantage of using yet another plastic-membrane keyboard. Unfortunately, with my experience it wasn’t worth it – but the experience gained was fine and I don’t have anything bad to say about vertical column layout, I just don’t feel it did much of a difference for me and for me I can see that it’s much more important to use a mechanical keyboard. Furthermore I felt it was a bit annoying if I swapped too much between vertical and staggered/normal columns, reducing my typing speed and/or accuracy (and at that time I had a job where I often had to use other shared computers for e.g. optical/tactile measurement equipment).
  5. After some years – and because I had been (and still is) so happy about ergonomic keyboards from Kinesis (at least Advantage 2), I bought the Kinesis Freestyle Edge RGB – split mechanical gaming keyboard – another split keyboard, like the experience I had with the Ergodox EZ. I found out that once again, it’s not that much that it’s a split keyboard that does it for me – but since it’s a mechanical keyboard (with Cherry MX brown switches) it’s definitely not bad. It just isn’t as good as the Advantage 2-keyboard. This has learned me a lesson: I think what works really really great for me is the concave bowl-shaped keywells with vertical columns and that’s it’s a mechanical keyboard…
  6. My last acquisition was a 2-3 months ago, where I bought the Keychron K8 Pro QMK/VIA Wireless Mechanical Keyboard with Hot-Swappable Gateron G blue switches. This at first looks like a normal keyboard, but there are a few interesting considerations I did this time:
    • I’ve usually before this keyboard bought brown Cherry MX-switches (or their clones), because this is typically a “safe choice” if I e.g. wanted to bring my keyboard to somewhere.
    • This is a “Hot-swappable”-keyboard and I already use Kinesis-Advantage 2 as my primary keyboards. Being hot-swappable means I can replace the switches. Last month I received very cheap Gateron G brown switches too, so in terms of changing switches this is the most customization-friendly keyboard I’ve had.
    • I wouldn’t like to use red switches, due to the missing tactile feedback but it’s a huge plus for me that these Gateron-switches are cheap, so I can easily experiment with different switches and with this keyboard, I’ll have to figure out if it’s worth to buy something else than brown switches the next time…
    • I wanted a (relatively) compact keyboard I could bring with me to e.g. CTF-challenges or other places so I avoid using my laptop-keyboard (which is also typically bad, if used for many hours).
    • It has Bluetooth – but that has no or at least only limited value to me. Instead it’s very interesting that it has QMK / VIA firmware, meaning I can hardware-remap the keys so I don’t need to install software, in order to modify the default/normal QWERTY-layout, to Colemak-layout. This could potentially be a problem in some workplaces – but also the keyboard is priced competitively. Read more about QMK/VIA here.

The typical slanted column grid seen on almost all, especially QWERTY-keyboards are offset and designed that way because of historical reasons. In the early 1870s a guy named Christopher Latham Sholes created the QWERTY-layout for early writing machines. But those machines had each key attached to a lever and therefore each lever needed an offset to prevent the levers from running into each other.

Pretty much all other serious contestants to the QWERTY-layout has been created to do things better than QWERTY. In 1936 the DVORAK-layout was patented by August Dvorak and his brother-in-law, William Dealey, claiming it to be faster and more ergonomic. The “best” keyboard layout is one that requires less finger motion, increases typing speed or is more comfortable than QWERTY. However, DVORAK has not replaced QWERTY yet – and probably never will and it’s probably the same with Colemak – that it’ll never replace QWERTY. It’s not only the keyboard that’s important, it’s also the keyboard layout. It’s interesting that even though QWERTY is bad and there are better alternatives, people stick with the worser for historical reasons… This leads to part 2, which is technically harder to understand – but with some additional technical details.

Introduction to analysis of keyboard layouts

Colemak is a keyboard layout that places the most commonly typed characters on the home row. The hypothesis is that this is more ergonomic because you don’t need to move your fingers as much. According to https://colemak.com/Ergonomic the benefits include:

  • Colemak places the most common English letters on the home row and therefore the home row is used 14% more than Dvorak (and 122% more than QWERTY).
  • Finger-travel distance is reduced: Your fingers move 10% more with Dvorak and 102% more with QWERTY, compared to Colemak.
  • Same-finger typing happens 60% more with Dvorak and 340% more with QWERTY, when compared to Colemak.
  • By grouping the vowels (except ‘A’) on the right hand, it reduces very long sequences of same-hand typing, such as “sweaterdresses” on QWERTY.
  • Reduced long sequences of same-hand typing – see e.g. the “Fraser Street comparison” from : Computers and Automation magazine, November, 1972, pp. 18-25 (Dvorak layout advocacy) which is text made up almost entirely of one-hand words on the QWERTY layout.

According to https://www.news.com.au the benefits include:

  • Colemak allows 74 per cent of your typing to be done on the home row, which outshines Dvorak’s 70 per cent and QWERTY’s 32 per cent.
  • Your fingers move 2.2 times less than using QWERTY, it offers 35 more words from the home row and most of the typing is done on the strongest and fastest fingers.

Software packages for analyzing input texts exist, so we can calculate metrics that we believe has an impact on keyboard ergonomics. Back in 2011 these tools also existed – but I have a hard time finding them now (and remember what I used), so I’ll go with the next-best approach which is what Google helped me find, while producing this:

The article: An Analysis of Keyboard Layouts – explains how to take the “heatmap-keyboard” project with Github-source code here: Keyboard Heatmap – and it’s really simple: The author takes some recent email exchanges and run the analysis on that. I felt I should do something as that, so I went into my Thundebird mail folder:

$ cd ~/.thunderbird/cd9e1phk.default/ImapMail/imap.gmail.com/[Gmail].sbd$ cp 'Sent Mail' ~/Downloads

I copied the ‘Sent Mail’-file to my Downloads-folder – unfortunately this was a 1.7 GB file and it seems to also include attachments… I found a better idea and that is to select e.g. 100 (?) of my latest sent emails in Thunderbird and export them as text, into an mbox-file. This resulted in a data-file that was only 17 MB and had around 240.000 text lines in it. Unfortunately it has/had a lot of HTML-stuff, email headers-stuff, base64 content-encoded lines etc and I decided to take 20.000 text lines for analysis. It was ASCII-text producing the following keyboard heatmap analysis:

Initial “naive” heatmap, from “sent emails” – but except that “E” and “T” are very frequent all the other keys seem to be used with some kind of “average”-frequency.

The good thing about Colemak is that “E” and “T” are positioned in the home row, using both DVORAK and Colemak. But the 20.000 input lines above are bad and the analysis is bad because for instance there’s a huge section with base64-encoded text:

Content-Type: image/png; name="hwhLm8Qqsv7L09Bd.png"
Content-Disposition: inline; filename="hwhLm8Qqsv7L09Bd.png"
Content-Id: <part1.s0nd00ox.Eq3M0TV8@gmail.com>
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAAd4AAAWKCAIAAADZrJNmAAAAA3NCSVQICAjb4U/gAAAgAElE
QVR4Xuy9B5gcxfH+v7uzs3kv51POEkiAhEgmmGSyMWBs44xzzjlnG2f755xtsLFxwmCbZHIS
EighlE5Zupw3p9n5f0b9fea/zyXdnfZOd1Iteo7dnp7u6ndm3q6prq5yRiO9DvkIAoKAICAI
...

The base64-encoded text obviously does not consist of typical letters or letters-combinations that you yourself would type on a keyboard. In this case, the base64-encoded text took up 13500 text lines which is a huge fraction of the total text-file. So this analysis is simply deadwrong. I’m pretty sure the base64-encoding is responsible for the extremely “average” yellow/green’ish-colored heatmap.

I decided to clean up the mbox text file and delete these lines and was left with another input text file – now with 13.000 text-lines. Unfortunately this still had a lot of HTML-code, but that at least is more sane than all the base64-encoded strings. The result is shown for some of most important keyboard layouts below:

I’ve added heatmaps for Workman and Norman layouts, although I have not explained much about them. For this analysis, because we’re using sub-optimal input data, we should ignore the that shift-key is the most frequent key used – (likely due to the many HTML-code lines in the input-file).

The position of the very frequent “E” and “T”-letters on the QWERTY-keyboard makes no sense, in terms of being economical with your finger movement. They should instead preferably be on the home row, in order to reduce finger stress. It’s not possible to use the home-row keys in a reasonable way with QWERTY for most normal input texts written in english. In terms of finger travel distance, QWERTY is generally also among the worst layouts of them all – this is however not directly seen from heatmap…

Using additional keyboard layout statistics such as finger frequency, hand balance, finger bigrams and skipgrams, lateral stretch etc

We have the heatmap-technique for better understanding what is an optimal keyboard layout. But there are also a lot of other statistics to look at, for people who are really into the ergonomics of keyboard layouts. For that we need additional text-analysis tools that were developed and become more popular in the years after when Colemak was (2006).

I’ve tested the a200-script which seem to be created by or related to the website https://monkeytype.com/about which is a typing test website to e.g. measure typing speed and accuracy. It seems by default it uses much better input than what I used above so I’ll leave it with the default input and show the output from 2 datasets. It’s a Python-script that is launched using the “./a200”-shellscript. After removing a lot of (at least for me) unknown keyboard layouts and modifying the column output a bit we get:

Default data set: “Monkeytype-quotes” (around 5800 text lines).
Extra data set: “Discord”-chat data (almost 190 thousand text lines).

One can see the data used in the “wordlists”-subdirectory and although we’re approaching the limit of what I know about these things I’ll try to explain what I’ve learned about the results:

  1. The easiest columns for me to understand is the 3 rightmost ones: “top, home, bottom”. These show that for the analysed input text and for both datasets, with Colemak around 70% of the characters was typed with the home or middle keyboard row. For QWERTY that number was around 32%. It’s interesting to see that around 50% of the letters are on the top row, using the QWERTY-layout – this is not very efficient.
  2. The “LTotal” and “RTotal” columns are a measure of the percentage of letters used, that belongs either the left or the right hand. I’ve been contemplating about why this doesn’t add up to 100% so I looked into the source code and believe it has to do with how the keyboard layouts are defined in the “layouts/”-subdirectory. Each keyboard layout file only tells which letters on each of the 3 rows belong to which hand – so when numbers or symbols, e.g. question or exclamation marks are included in the input data the program is not capable of figuring out what finger that non-letter symbol belongs to, thus the total percentage is only a measure of letters from the input-text. The difference between LTotal and RTotal tells something about the “hand balance” – an equal amount is a perfect split. With this metric I don’t think QWERTY is particularly bad, but the difference between all layouts is low so these columns are not really important here.
  3. Next we have the SFB- (Same finger bigram) and the DSFB- (disjointed SFB) columns. The idea is that we want a layout to avoid awkward typing motions and same-finger movements are often seen as slow and awkward to type. SFBs are basically when you use the same finger to type two different or successive keys, e.g. “ed”, “un”, “ol” etc on a QWERTY-keyboard – or when you type “loft” or “unheard”. The other column, the disjointed SFB is a measure for how often two keys with the same finger, but separated by X letters are pressed. As an example, typing MAY with QWERTY is a same finger skip-1-gram. The table shows that QWERTY scores high for both SFB and DSFB, which is bad. Colemak on the other hand scores good for SFB while there isn’t much difference between layouts in the DSFB-column.
  4. The remaining 4 columns are related to “trigram” or 3-key sequence stats:
    • The “alternate”-column measures the frequency of pressing one key with one hand, then pressing a key with the other hand followed by pressing a key with the original hand again.
    • The “roll”-column is a measure of either when two keys are first pressed with one hand, but not using the same finger – and then a third key with the other hand is pressed – or the opposite way around (press a key with one hand followed by 2 keystrokes with the other hand, not using the same finger). This can also be divided into inward and outward rolls, where e.g. “DF” on a qwerty-keyboard is inward and “FD” is outward.
    • The “redirect”-column is measuring a one-handled trigram, where the direction changes, e.g. “DFS” or “DSF” with QWERTY (first inward, then outward or opposite).
    • The “onehand”-column measures the frequency of one-handed trigram rolls, i.e. when the direction is either inward or outward. This is considered more comfortable than “redirect-trigrams”.

There’s also an option for showing the finger-balance or distribution as seen in the image below.

Finger-balance – using the large “discord”-data. The thumbs are not included: LP = “left pinky”, LR = “left ring”, LM = “left middle”, LI = “left index” – and similar for right hand.

Finger-balance isn’t really an expertise-area of mine, but I’m assuming that the best layout is one that distributes the load more or less evenly among each finger. Furthermore, I think it’s safe to assume that in general we want less load on the weak fingers (LP, RP) compared to the stronger fingers (LM+LI, RI+RM). I don’t think this finger-balance analysis shows so different results that justifies any clear conclusion.

Running additional analyses

Colemak/Dvorak is not always the best – I’ve found some extra links and resources that could be of interest and would just briefly summarize, before making a conclusion:

  1. Another keyboard layout analyzer: This website clearly tells you how they define the calculation of the optimal layout score (as they should, when they present to us what they think is the best layout). In this case, it’s a weighed calculation that factors in the distance your fingers moved (33%), how often you use particular fingers (33%), and how often you switch fingers and hands while typing (34%). This means that if you want – you can make your own program or calculation with your own weights – and come up with your own “optimal layout”, based on your preferences. The front page of this website has Dvorak ranked first and second position – and Colemak as third-highest ranking. You can then click “Disance”, “Finger Usage”, “Row Usage”, “Heat Maps” etc to learn more. Also, in top menu you can choose “Configuration” and the website already seems to know something like >20 layouts – many for the Ergodox.
  2. I also found the Keyboard Layout Analyzer: KLAnext v.0.06 to be interesting: In this case, the optimal layout score is a weighed calculation that factors in the distance your fingers moved (40%), Same Finger Bigrams, (40%) and hand alternation (20%). The website allows one to run different comparisons so I picked something simple as my input data set: “KLA Introduction” and clicked the “Compare Layouts”-button. I haven’t studied exactly which tests are and which data is used, but the result is summarized in something called “effort” (a low effort is better for doing the same task). Of the 12 ranked layouts, QWERTY is the worst with +48% “effort”, Colemak comes in second place with only %2 “effort” and top-ranked is something called “POQTEA-QP” with 0% “effort” (something about right-hand letters). It’s a layoyut I’ve never heard of before, but it seems to be a very new layout from 2021 where Colemak is from 2006 – so it could maybe be great…

It should be fair that I also present another side of the story, although it makes everything a bit more unclear. Using the tests below I found that Colemak was supposedly one of the worser layouts – almost as bad as QWERTY:

  1. Another of these “Keyboard Layout Analyzer” (why are they all called the same) again used different weights: The total distance your fingers travelled (3/16); how often you use stronger fingers (3/16); the direction of finger rolls (3/16); how often you switch fingers (3/16) and hands (2/16) between key presses; balancing fingers and hands usage (1/16); and the effort to type whole words (1/16) – I ran a few tests by choosing from the top “Comparison”-menu. No matter what I did, Colemak was almost as bad as QWERTY – but those layouts that “won” the test where pretty unknown layouts to me, such as “BEAKL 35 Matrix” – but it seems this test also knows the different between the different physical keyboards, such as the ergodox – which I think is great. The bad thing is that I felt a lot of the input text data was or is too short to make the tests meaningful…
  2. And another very similar “Keyboard Layout Analyzer” which is very similar generally placed QWERTY as lowest-ranked layout and some unknown layouts in the top: X7.1H Ergolinear/ergolinear (1st place), BEAKL Opted4 Ergo Alt/ergodox (2nd place), BEAKL 15 Matrix/matrix (3rd place)…

I encourage anyone interested in this, to make your own research and maybe post a comment in the blog section below if you think anything should be added/remove/changed.

Conclusion

With many available metrics, it becomes a difficult task to choose the “best” keyboard layout because it doesn’t exist or is a theoretical concept meaning that what we see from tests, depends a lot on the input data which again varies from person to person. The fact that the best keyboard layout doesn’t exist doesn’t mean that there aren’t bad options – QWERTY is one that scores low on a lot of measured parameters, e.g. travel distance and it scores low pretty consistently among different tests and different software tools.

The “best” layout is subjective and a compromise made up by trying to achieve competing objectives. Optimizing a layout for a particular stat prevents optimizing on a different stat but all in all I think Colemak, Dvorak, Workman and Norman are all good layouts that are better than QWERTY. This is subjective but it also comes from reading and trying to understand what other people have written about this – and lots of people have studied this much more than I did and I’ve tried to read a lot of it.

Among the things I learned while writing this blog post and reading up on everything related to the topic is that with the improved analysis-tools I’m not sure if DVORAK and Colemak in the future will have such a large user-base. If they will it probably is because they historically have large user-bases when comparing to the newer and in some cases probably better, upcoming layouts. It might be newer layouts are more efficient, because newer analysis programs are better and people won’t stop talking about ergonomics and improve things.

One must also be careful to choose a layout based on using too small text samples, which I think is a mistake that some of the online web-analyzers did. I normally don’t type “Alice in wonderland”, which is one of the typical text-samples used – this was the reason I tried to export my “Sent mail”-text data, but the next problem I didn’t solve was removing all that bad HTML-stuff that was included in that data. Maybe someone in the future makes a small github-project that removes that HTML-stuff, so one can perform a proper keyboard analysis on real sent emails (I don’t think I’ll do it, although shouldn’t be too difficult) – also don’t forget to add code to your input text data, if you’re a programmer. All results can change when the analysed input text data does, so it’s also very individual, which layouts are best – just don’t use QWERTY if you feel finger- or hand-related pain issues after many hours of typing on a keyboard. I think in general this is the conclusion from seeing many different test results.

I thought this would be a quick blog post – because I don’t currently have time to write about another Linux-projects. This was unexpectedly a very time-consuming blog post to write because I cannot remember exactly why I chose Colemak of the available layouts and as I began typing I thought I had to find some kind of reasonable justification when explaining the decision I took years ago – and/or at least try to justify that I still use Colemak. I hope this blog post helped someone (or you shouldn’t have read all this). I hope to write more about Linux-projects in the future blog posts.

Links to other resources or information that could be of interest

The following are links I didn’t had time to include or explain about (dropping links):

  1. https://colemak.com/Ergonomic
  2. Mailing list for “Keyboard Builders’ Digest”: https://buttondown.email/kbdnews
  3. 178 text pages about keyboard layouts (Google Document): https://bit.ly/keyboard-layouts-doc
  4. Best keyboard layouts – Feb 2023: https://www.keyboard-design.com/best-layouts.html
  5. Alternative keyboard layouts: https://deskthority.net/wiki/Alternative_keyboard_layouts
  6. Github: https://github.com/binarybottle/engram
  7. Github: https://github.com/samuelxyz/trialyzer
  8. Norman layout vs other layouts: https://normanlayout.info/about.html
  9. Norman layout Wiki – Q&A: https://www.reddit.com/r/Norman/wiki/index/
  10. https://kennetchaz.github.io/symmetric-typing/layouts.html
  11. carpalx – design your own keyboard: http://mkweb.bcgsc.ca/carpalx/
  12. Layout Analysis Tool
  13. Layout Playground

22 replies on “Introduction to keyboard ergonomics (mostly for people typing +6 hours a day on a keyboard)”

Hi, thanks a lot. Although I’ve been using an alternative layout for many years I don’t actively follow these online communities that exist. So, although I know things I’m not an expert. I just wanted to give some additional information about what I know (at least what my understanding of it is) and the post became a bit longer than I anticipated because I wanted to describe a bit extra about the latest developments, which took a lot of extra hours. You ask if I can elaborate: I’m not sure which part to elaborate on, but if the request is about elaborating on the more “advanced topics” I don’t think I’m the right person. There are some online forums for people who are much more into this field than I am – this blog post is just meant as background information… But I appreciate it’s useful, from the feedback, thanks a lot for that!

Does your site have a contact page? I’m having trouble locating it but, I’d like to send you an email. I’ve got some ideas for your blog you might be interested in hearing. Either way, great blog and I look forward to seeing it develop over time.

Hi. Yes, correct, please use https://mfj.one/contact/ (you have write name: optionally an alias, email: preferably a valid one and a comment and then click the “I am human”-hCaptcha) and I’ll look at it. I’ve got many ideas, but the main concern is that I don’t have enough time, partly because I want to write about something interesting and usually I have to mess around with stuff for many many days/hours, before I think it’s worthwhile to share and write about… Feel free to write, but my main constraint is not ideas – it’s just time, in addition to having a fulltime job and what-have-we-not to do in our sparetime 🙂

Thanks for the diverse tips contributed on this web site. I have seen that many insurance companies offer shoppers generous special discounts if they decide to insure many cars together. A significant volume of households possess several cars or trucks these days, especially those with more aged teenage young children still dwelling at home, plus the savings for policies can soon increase. So it pays off to look for a great deal.

I really wanted to compose a simple comment to be able to thank you for all of the lovely tips you are writing on this website. My extended internet look up has at the end been recognized with brilliant facts and strategies to talk about with my pals. I would repeat that many of us website visitors are extremely endowed to dwell in a notable community with very many lovely people with beneficial pointers. I feel very much lucky to have come across the web pages and look forward to some more thrilling moments reading here. Thanks once more for everything.

I do agree with all the ideas you have presented in your post. They are very convincing and will definitely work. Still, the posts are very short for newbies. Could you please extend them a bit from next time? Thanks for the post.

What an incredible resource! This article tackles a complex subject with finesse and provides practical advice that readers can apply in their daily lives. The author’s ability to simplify intricate concepts is impressive.

Do you have a spam issue on this website; I also am a blogger, and I wanted to know your situation; many of us have developed some nice methods, and we are looking to trade methods with others, why not shoot me an e-mail if interested.

About spam issues: It varies, but sometimes I get 50-60% spam in the comments – but only what I deem is not spam is published. Please note this is a manual process, so usually around twice per month I remember to login and either approve or reject the new spam-comments – this means ALL comments are usually delayed a lot, before becoming visible to visitors. About my situation: I’m not an expert at all when it comes to WordPress, but somehow I managed to set it up, so new comments are not published immediately. Thus please be patient and wait for manual approval, if you have something relevant to comment on and if you wonder why your comment isn’t visible, just after you wrote submitted it. Also, please don’t repeat the comment multiple times on different posts, as that also looks a bit weird – potentially resembling misuse – it’s just the system, that when I manually have to approve things, that can be slow (1-3 weeks, usually). I’m sorry, but I don’t have time to go into or learn new spam-preventing methods. The current method where I manually spent around 10-15 minutes (twice per month) on handling comments works fine for me – at least at the moment – otherwise, you’re free to link to something I should look at and I’ll take a look and consider it, thanks!

This was a really good read!

I recently went on a very similar exploration to figure out my RSI stuff as I could feel it coming on, and I wasn’t about to play around with it. The things that I discovered were:

– Moonlander/Voyager (really just split + ortholinear like ergodox)
– My layout: https://configure.zsa.io/moonlander/layouts/yGzoP/latest/0
– Home row mods (don’t move pinky or any other fingers for ctrl, cmd, shift, or alt, instead do a hold with the opposite hand to the key you’re pressing- it takes about a week of practice to get comfortable with)
https://precondition.github.io/home-row-mods
– Miryoku keyboard style (no key >1 away from home row)
https://github.com/manna-harbour/miryoku
– Engram layout (very similar to Dvorak, but better across the board)
https://engram.dev/

I’ve completely switched to using (a combination of) these as my daily driver for about 6 months now, and my RSI symptoms have completely disappeared. Having better posture also helped me a lot with back pain, but I know you said that wasn’t something you were too worried about. I would seriously urge you to try these things out if you’re still feeling like you could stand to learn something new. When you look into engram you’ll hear a lot of people talking about the placement of the b and c keys (left pinky) and it’s not an issue when you have an ortholinear keyboard, since your fingers are meant to extend up/down instead of diagonally.

Cheers, thanks for writing this!

I’m very happy to read this kind of feedback, thank you very much (and I’m very sorry for the late reply, I’ve approved around a month after you wrote this comment and the reason is that currently there are 630 potential messages, probably a lot of spam-messages among these – it means I haven’t checked for several weeks)! Unfortunately I don’t have as much spare time as I did when I started this blog, because my new job is much more demanding than my old job. But maybe in the future if I get time, I’ll publish more articles, it’s just much more rewarding when I get this kind of feedback too – thanks!

Hey, if you are looking for more resources, check out my website UY7 as I cover topics about Advertise. By the way, you have impressive design and layout, plus interesting content, you deserve a high five!

Leave a Reply

Your email address will not be published. Required fields are marked *