My way to an (almost) perfect keyboard
Keyboard and monitor are two most important things in the life of anyone who works with computers. The third thing is mouse. The choice of the monitor is very simple: IPS without PWM backlight. The choice of the mouse is also not difficult, something from the
Perixx collection will work. However, in case of the keyboard it is a bit more complex, as a lot of factors should be considered, as letter layout, keyboard geometry, key response characteristics and others. So I have written the story of my way to an (almost) perfect keyboard.
In Wikipedia we can find letter frequencies.
The most frequent letters in most European languages are: E,A,I,N,O,S,T,R. (However, in Polish Z comes to the first eight letters instead of T.) The most frequently used letters should be in the home position on a keyboard (middle row without the two keys in the center; the red frames in the pictures below) to minimize finger movement and thus improve typing speed and reduce fatigue. Vowels should be alone in columns or only with very rarely used consonants to minimize pressing two consecutive keys with the same finger. Let's look where the most common letters and the vowels are in three currently most popular layouts: Qwerty, Dvorak and Colemak.
Qwerty Layout, 1870s. Because the first typewriters get jammed when typing too quick, the keys were arranged to slow the typist down by putting far from one another the letters in most frequent digraphs, using the weakest finger of the left hand for the most frequent letters (E,A,S,T) and maximizing the distance covered by fingers. The other reason for that arrangement was that the word "typewriter" could be typed by salespersons after memorizing only the top row. The typewriter construction was much improved in 1890s and a new more efficient layout was proposed, but the typists were already accustomed with the old layout and didn't want to learn anything new in 1890s, in 1930s, in 1990s and in 2010s.
Dvorak Layout, 1936 (some variants exist, see
here). Dvorak spent a decade to design an optimal keyboard. The two ideas behind his layout were: high home row usage and enhanced hand alternation (since the vowels on one side). For mechanical typewriters, which required some power in fingers, hand alternation was very good. For computer keyboards however, finger rolling (especially inward rolling) over two or three adjacent keys is more desired than hand alternation (see Arensito). For that reason Dvorak (optimized for hand alternation) is the best layout for mechanical typewriters but Colemak and Arensito (optimized for finger rolling) are better for computer keyboards.
Arensito Layout, 2000. This is a simplified Arensito. The original version is
here. Many factors were taken into account while developing Arensito (e.g. finger rolling, reducing typing errors, access to special characters) and it is a very efficient layout (maybe even the best created so far), especially for developers. Arensito was originally designed for
Kinesis Advantage keyboard, but a version for a standard keyboard was also developed.
Colemak Layout, 2005. The idea of
Colemak layout was a multi-objective optimization of: high home row usage, avoidance of same finger repetitions, improved hand alternation and making the transition from Qwerty easy (e.g. preserving shortcut key positions). On the same physical keyboard the fingers have to cover about two times longer distance on Qwerty than on Colemak and two subsequent letters are four times more frequently typed with the same finger on Qwerty. Out-of-the-box solutions are available for Windows, Linux, Android, MAC.
Workman Layout, 2010. The idea of
Workman layout was to improve the bad positions of H and D on Colemak (it's quite awkward for many people to perform the frequent lateral movement), while maintaining the remaining advantages of Colemak. The frequency of H in English is about 6% and the frequency of the digram HE is 1.28%. The frequency of D is 4.25%.
The pictures from workmanlayout.com with the proposed effort parameter of pressing particular keys on staggered and matrix keyboards.
Other layouts.
There are several web pages with experimental layout comparisons, but unfortunately none of the uses the Workman's evaluation method. The results from the experimental comparison show that if we assume the writing effort for Qwerty being 1.0, than the writing effort for Dvorak is about 0.45 for English texts and 0.60 for Polish and for Colemak 0.40 and 0.55 respectively (Workman layout is included only in the tests on
workmanlayout.com).
To easily change the keyboard layout you can use:
Maltron layout. If you wonder if there is any layout more efficient than Colemak, Workman or Arensito (considering English language only), probably it could be
Maltron layout after correcting the positions of letters D and L. The trick in Maltron layout is to extend the home positions to nine keys, assigning letter E to the left thumb. But the difference between Maltron and these three layouts using Maltron or Kinesis Advantage keyboard is really minimal (It's really H frequency minus either backspace, enter or shift frequency, minus less efficient finger rolling over E). However, Maltron layout can be used only on Maltron and Kinesis keyboards or their clones. On contrary, you can use the other layouts everywhere by running the Portable Keyboard Layout from a pendrive or from the Internet.
Since early 20-th century the staggered design (keys arranged in skew columns) and the Qwerty layout don't make sense any more. Keys aligned in straight columns are much more comfortable and easier for touch-typing. The same holds true for any modern layout optimized for speed and comfort.
The analysis of my recent text shows that I write about 39% in English, 21% in Polish, 8% in German, 7% in Spanish, and 25% in programming languages, mostly C#. In 98% I use the Kinesis Advantage keyboard and in 2% classical staggered keyboards. So I need a layout, which is not only optimal for English texts but also close to optimal the other languages I use and and which is optimized for the Kinesis keyboard (lower ratio of vertical to lateral movement cost, Ctrl and AltGr combinations easily accessible in any position, additional thumb keys). Therefore I use Colemak Layout with some modifications to adjust it to my needs. Colemak is not the most optimal layout, but a great advantage of it is an easy transition from and to Qwerty (we live in a Qwerty-dominated world, don't we?), so if you use Colemak you will have no problems to occasionally use Qwerty on your co-workers' computers. I implemented the layout by registry remapping (with SharpKeys) and all macros with AutoHotkey on my own computer and prepared another version as an AutoHotkey executable, which I can start from a pendrive on any computer. One of the modifications is that I assigned frequently used sequences of letters to rarely used keys, which are now activated with AltGr key (the underscore stands for space).
- X = The_
- AltGr+X = X
- x = the_ (0.08% single char vs. 1.12% 4-char word frequency, also reducing HE digraph frequency by 68%, what taking in account also low H usage in Polish, allowed me to keep H on its original (bad) position. All percentages are based on the analysis of my own past writings: 1,000,000 chars in English and 500,000 chars in Polish, where the frequencies differ from that presented in Wikipedia)
- AltGr+x = x
- AltGr+Q = Qu (in English Q is almost always followed by u)
- AltGr+q = and_ (0.10% single char vs. 0.40% 4-char word frequency)
- AltGr+q = qu
- x = ing_ (0.15% single char vs. 0.35% 4-char word frequency)
- AltGr+x = x
- AltGr+; = tion (0.12% single char vs. 0.35% 4-char word frequency)
- AltGr+; = ;
- . = ._ (where after a letter, 1.30% frequency)
- , = ,_ (where after a letter, 0.72% frequency)
- . = . (when after a digit or another symbol)
- , = , (when after a digit or another symbol)
- AltGr+. = . (in any case)
- AltGr+, = , (in any case)
I could have programmed the macros directly with the Kinesis keyboard, but I have done it with this simple
AutoHotKey script to make them portable also to standard keyboards.
As I calculated, the macros save me about 9% of keystrokes. While writing in other languages than English, I turn the macros off. Additionally for Polish I introduce some little changes. I remap V (which is not used in Polish, but on the rare occasions of foreign names it can still be accessed with AltGr+W) to another Z (while retaining the Ctrl+V capability). The Z+Z gives 6.21% in Polish. The sum of T+Z frequencies is about the same in English and Polish, so the load of the left index finger remains constant. But I had to swap D with F to compensate for 1.27% same finger for the left index alone in Polish, to make better finger load distribution and first of all to solve the problem of bad positions of H and D in Colemak layout. I also added additional L as AltGr+I, because reaching AltGr+L would be awkward on non-Kinesis keyboards. In my writing the frequency of D was: 3.40% EN (3.00% remained after introduction of the letter "and "), 3.22% PL and of H: 4.38% EN (3.27% remained after introduction of the letter "the ") and 1.36% PL, of F: 2.24% EN and 0.45% PL. In programming mode the macros are also disabled, but replaced by another set of macros. Below are the two layers of my layout: the base one and the AltGr one. In addition I have implemented several macros for the phrases I commonly use.
base layer
layer with AltGr
Not only programmers use heavily editing commands (Enter, Backspace, Arrows, keyboard shortcuts, etc.). On standard keyboards these keys are placed in very bad positions, which requires a lot of finger travel and overuses the pinkies. I couldn't change it with key remapping (everything I could do was to remap CapsLock to BackSpace, I recommend it to be done on every laptop). The solution was to change the keyboard physical layout to something like
Kinesis or
Maltron or similar. As you can see in the pictures above, I remapped the special keys so that I can perform all editing task with left hand and mouse, without the need of constantly moving my right hand between my vertical mouse and keyboard (because vertical mouse is much more ergonomic). There was also a foot switch bundled with the keyboard. I configured it to perform left mouse button clicks (it's especially useful in all the cases where you have to constantly press the
NEXT button).
The Kinesis keyboard design quite well, though not perfectly, matches the lengths and natural trajectory movement of particular fingers. The position of Enter, Backspace, Delete, Shift and arrows minimize finger movement and improves typing speed. Moreover, the keyboard is programmable: each key can be reassigned another key's function. Several dozen user-defined macros for rapid automatic typing can be saved in the keyboard's on-board memory. And last, but not least, it is based on mechanical
Cherry MX-brown switches, what significantly decreases finger fatigue by eliminating the bottoming out effect and if you want to adjust the after-trigger zone feeling, wasdkeyboards.com offers various o-ring dampeners. In comparison to a staggered Qwerty, the Kinesis Advantage keyboard with Kordos-Colemak layout gives tremendous boost in comfort and productivity. I can type some faster, although the difference in speed is not very big, because the speed is more determined by the brain than by fingers. However, I type with several times lower error rate and several times lower fatigue. In fact such a keyboard also effectively prevents repetitive strength injury and similar health-related problems.
Below is the picture of my keyboard. Better quality images and more technical details are available at the
manufacturer site.
Watch
this movie on youtube: someone is typing on the Kinesis keyboard with Colemak layout at 103 WPM, that is about 10 keystrokes per second. Can you see this speed? Not at all. On a staggered Qwerty keyboard 103 WPM would really look like an impressive speed of moving fingers.
The keyboard is not cheap. However, it is still several dozen times cheaper than a car. How much time do you spend with a keyboard and how much in a car?
So how do you think, which investment makes more sense: 350 EUR for the keyboard with which you work 8 hours daily or 10,000 EUR for a car which you use one hour daily?
And here is the
Datahand keyboard - the most interesting traditional keyboard I have ever seen.
The modern keyboards don't use your fingers at all, but read the text directly from your mind. The scientific progress is rapid and it is likely that in the future they will completely replace the traditional keyboards, together with other technology that will constantly read what we think without our knowledge and consent.
Creative Commons License. You are free to copy, share and adapt all articles and software from my web page for noncommercial purposes, provided that you attribute the work to me and place a link to my home page. What you build upon my works may be distributed only under the same or similar license and you may not distort the meaning of my original texts.