Fast Typing: Keyboard Layouts
codefaster.substack.com
codefaster.substack.com
When I made the layout for GergoPlex[2] I designed it around Vim/i3/Programming and other uses secondary. But because you can easily change it for your specific workflow weakpoints that you identify can be dealt with.
>Actuation force and travel probably matter more for RSI
I am not a doctor, but this matches my experience. I use 12g Low-Profile Kailh Chocs and noticed a good change in flare-ups as I kept driving it lower and switching to a non-MX switch.
I was able to get Kailh to manufacture lighter weighted Choc switches (gChoc, 20g Linear) for use on boards like GergoPlex and others. Reviews seem good across the board on those for people suffering from RSI, so I'll keep at it.
I'd argue that the main factors to be optimized for in decreasing order are: Split, Stagger, # of keys, layout, Spring weight, Travel distance. But getting there is a very, very strange time[1]
[1] https://blog.gboards.ca/2020/01/weird-keyboards-programmable...
What are your thoughts on linear versus tactile switches as far as preventing RSI goes?
My solution to this is to just use O-Rings on Chocs to soften the bottom out. It's less jarring and gives a bit of mush to a bottom out instead of a hard hit. To some this is heresy though.
That being said, if you're deadset on the feel of a tactile, it's an option.
I did learn dvorak before vim though, I can imagine unlearning and re-learning to be harder.
I did learn Dvorak after Vim. Yes, it meant there was a second layer of added pain. I stopped using vim for a couple of weeks altogether, learned Dvorak to the point where I could touch type again (although more slowly), then went ahead and retrained the muscle memory for vim.
For anyone not used to using vim, vim users get to the point where they think "change word" and their mind maps that to top row middle finger, bottom row middle finger. There's no middle step of "change word" -> "cw". So just learning the muscle memory for letters isn't sufficient for then using vim as fast as you could before. At least that's how it was for me.
As someone who also started feeling RSI symptoms in his early 30s, I definitely recommend learning Dvorak and picking up a split keyboard. I like the ergodox, personally. The straight columns seem to help too. I think other alternative layouts and ergonomic keyboard combinations have their merits too.
For anyone else hesitating, observe how frequently your wrists end up in awkward angles while typing on a regular qwerty layout. That and the pain I started to feel is what motivated me.
Currently considering expanding out from vim into vscode or pycharm.... (have failed and come back to vim multiple times in the past due to muscle memory).
No one is going to type on my setup so I've also switched Ctrl and Alt
$ cat .Xmodmap
clear control
clear mod1
keycode 37 = Alt_L Meta_L
keycode 105 = Alt_R Meta_R
keycode 64 = Control_L
keycode 108 = Control_R
add control = Control_L Control_R
add mod1 = Alt_L Meta_L
$ cat .xinitrc
xmodmap .Xmodmap
setxkbmap dvorak,ru -option grp:caps_toggle
...
(and mapped Caps Lock to switch languages)I learned typing 40 years ago, in the same way as secretaries do, with a real mechanical typewriter (an Olivetti one), and following an standard typewriter course for 2 months. My parents and relatives also used mechanical typewriters for 20 years before (8 hours a day).
The writer says "CapsLock is useless... remap". I have seen that statement a lot of times, and I deeply feel it wrong. That means the author hasn't been properly trained at typing. Maybe he also lacks:
- The balance of the "space" between the two hands.
- using the opposite shift for the special chars.
- using caps for continuous uppercase...
- numbers had an assigned finger. (Some people overuse only 2 fingers for them).
- the hand position and they way the rest/float in the keyboard, needed to achieve more than 100word/min.
- forearm and hand alignment.
I have work with people with RSI and almost all of them lack proper training at typing. So they tend to overuse 2/3 fingers, to only use one side of the space bar, or only one shift. They don't balance correctly the hands, and some positions are forced.
There is a workflow for everyone. If your workflow don't need that caps key, remap it. But in my case, remapping capslock, breaks the typing flow. There is a workflow for everyone.
In English text, and most programming languages, most of the text is in one case (usually lower), with small runs (often only one character long) in the other case.
For runs of one case switched character, shift will almost always beat caps lock because of the need to hit caps lock again to get back to the majority case.
Only when you get a longer run of switched case, or perhaps a shorter run where the letters nearly alternate between left hand and right hand letters so you are alternating shift keys or doing some characters with the "wrong" shift key if you are not good at alternating, do you change caps lock state.
For most text only a very small fraction of key presses will be to change caps lock state. Even Khassaki would only press it once. There is simply no way to justify putting it in the prime spot to the left of "A".
Also, while being in caps lock state is useful on some occasions, that does not mean that there needs to be a dedicated key to change that state. I suspect that something like pressing both shift keys simultaneously would be fine as a caps lock state toggle, or something like left shift/right shift/left shift.
Note also there are two shift. They were designed to use with the opposite hand to the key being type. So only one finger in each hand is pressing the keyboard, that applies to uppercase and for special characters. This also alleviates RSI.
On my case, its late to change the memory muscle, so I use the caps when there are more than two upper keys. Same happens to oldies like me, that were trained in the 60s/70s/80s. We still use both shifts and the capslocks. And I usually recognize those that were trained like me by the way the type.
Maybe the training forces to have the right siting position or to remove bad positions, or the memory muscle needed to achieve more than 100 words/min, or the hand not overusing 2/3 fingers. Or the hand position... Or maybe its everything.
For me it's like heavy lifting, they way you push/pull the weights, minimize the injuries.
Does remapping capslock mean I worked too hard to type this comment?
My comment was about my memory muscle. I developed it in a training a long ago. I feel my typing unnatural when I don't have capslock.
I have notice that this also happens to people that have learn typewriting in the school. In the training you learn: there are two shift keys, use caps lock, use both hands, only press with fingers, never use two fingers of the same hand, sit correctly, align the forearm and the hand, mistakes are costly.
Online keyboard typing usage focus on finger, but in the 80s, the first training day was also on proper position.
if your current workflow don't need caps lock go for it. I'm not advocating for remapping or not. I have only notice the way the caps lock (or the two shifts) are used, usually implies the operator has perform a typewriting training back in the days.
Having to type multiple capital letters in a row is rare enough that I never developed a habit of using the capslock key. I get by using shift on the rare occasions that I need to type multiple capital characters in a row. It's rarely more than one word.
Anyway, it's obsolete for modern usage https://www.wired.com/2006/08/death-to-caps-lock/
> The writer says "CapsLock is useless... remap". I have seen that statement a lot of times, and I deeply feel it wrong. That means the author hasn't been properly trained at typing.
If the capslock key is obselete, why is it wrong to remap it? Why would remapping an obselete key indicate improper training? Perhaps the author was trained properly on a different system, or had the same training as you but has since adapted.
I get that it's part of your muscle memory and you'd prefer to keep using an obselete key, but why say it's wrong for others to not use the capslock key?
I'm used to caps, so my typing flow needs it. When I have used keyboards without caps, I feel them wrong. (same happens when I use a non querty keyboard). It's a personal feeling, so I will not remap it. If others want to remap, and they feel more productive, its ok. But not for me, because I know i'm more productive with it.
The point on my comment was about RSI and training. using the keys properly reduces injuries. Proper forearm/hand alignment, balance of shift/ctrl key, balance of the space-key....
Example:
Uppercase "A": What keys do you use?
1) Left pinky in left-shift / Ring or middle finger in "a"?
2) Left pinky in "a" / Right pinky in right shift?
Using 1) stress the hand/wrist/forearm, using 2) is quicker, and more natural and avoids stress. This has nothing to do with caps-lock.
Trained typewriter use 2. I usually recognize if a trained one in the 70s/80s by the "obsolete" usage of capslock.
Then are are people like you, that were also trained and do not use it. My phrasing was too strong and rude. Sorry for that. I haven't realize this was a hot topic.
My comment was not to advocate for caps-lock, but trying to advice on typing training, maybe it can help someone. That was the original intention, list actions to alleviate a common injury. Training was not only repetition of keys, but also use the right position and key combinations.
I'm honestly not sure how I type the uppercase A, as I don't normally think about typing and now I'm in my head about it. I suspect that I use the left shift key, as it's easier to hit than the right and feels a little more natural as I try both now.
Just because I was trained by a proper instructor on a typewriter doesn't mean I've kept all the best habits in the decades since. I'll be putting in an effort to train myself out of the bad habit of using the shift key on the same side as the key I'm pressing. Thanks.
And you have developed memory muscle for Fn+Tab for the same purpose. Great.
But some oldies like me, feel when a keyboard lacks some keys, and I notice when other people have also being trained in the same way. (use two shift, only one finger from each hand each time (shift pressed with opposite hand to the key), balance the shift, balance the space-key... A lot of combinations that are deep inside. It's like an continental european driving in the UK, almost the same rules, but the body feels something is different, and the conscience pays more attention.
I was trained when I was a teenager near 40 years ago. I don't keep those training materials, but I will try to summarize it. I think most of the materials are now in the memories of the 60s/70s years old. But there are some online resources [0], a video is not like an teacher in the 80s, but it can help.
My training was directed by a teacher (female, old, no jokes, focused, loved her work). Now I known there is a big difference having a teacher, she can correct you. It's like heavy lifting, everybody can try to pull a bar. But there are small mistakes that can be corrected, and will avoid common injuries.
The first day in the training, was about "position". The teacher corrected me for the first week (a lot of times, teenagers are stubborn). The first day was about:
* sitting position.
* forearm, wrist, hand position. The forearm, the wrist and the hand shall be aligned. Somehow floating, but not floating, resting with no pressure even typing. It's difficult to describe but this video [0] of the 50s can help.
* Not placing the forearm aligned with the hand is one of the most common mistakes in people. Some people align the thumbnails of both hands, that's a mistake that put pressure on the wrist and forearm muscles. The ergonomic keyboards are designed to correct this, and to return the hand/forearm to the right alignment. There are some videos from the 50 [2], mentioning this.
* Shoulder shall be relaxed, one effect of not having proper forearm/hand alignment is also compression in the shoulder.
* Training for IBM Selectric and training for a mechanical typewriters was mostly similar. But everybody begins with the mechanical ones. You need to "hammer" the mechanical ones. They needed more pressure and force using the fingers (not the wrist). When changing to the Selectric, the words/minute increased automatically. They keys do not jam due to fast typing, and the Selectric has memory and automatic carriage returns. But position, and memory muscles remained.
* Stretch the hands at the end. (I was forced to do it and can't go out of school immediately after finish assignment). Now, 40 years after, I know it helps after long typing sessions, but as a teenager it was another boring rule to break.
* Caps-locks: I see a lot of comment in this thread about cap-locks. Each of us shall use the flow that best suits their work. But for me, I have memory muscle of using the Caps when there are more than two continuous uppercase. It's intuitive, i don't think about it. When it's not there, my memory muscle rebels. My hands feel it deeply wrong due to two months of training 40 years ago. If remapping caps fits you, go for it.
* Shift balance. Only one finger from each hand at the same time. This avoid forced positions in a single hand. (applies also to ctrl and special characters).
* Space-key balance. space pressed with the opposite thumb to the previous used hand.
Once you were properly in position, the finger training begins (repetition of key patterns). But for the few first days, the teacher corrected us the position continuously (interrupting the key repetition). After a few days: the focus on position, changed to focus on typing mistakes. Nobody went out of the room until they completed the exercises without errors. For me that means expending two hours instead of one like my school mates that were there for one only one hour.
I don't keep materials, but looking for similar books, this "Elementary Typewriting I"[3] from 1960 gives some hints. I'm pretty sure, back in the days, there were a lot of methods.
Check the us navy film [0]. The position was also their first lesson. Those days, clerks spends 8 hours of continuous typing, and an injury means full stop.
[0] US Navy training material, first day. Emphasis on position. https://www.youtube.com/watch?v=H1e4BC41wRU
[1] 1930 contests. Show the position of clerks using mechanical typewriters. https://www.youtube.com/watch?v=M-x9JX8ypJ0
[2] common typing mistakes. Use your fingers, not the wrist. https://www.youtube.com/watch?v=9mQszbUhE30
[3] US Army book on typewriting https://play.google.com/store/books/details?id=K_f3apVfwOYC&...
Those days, a single typing error means repeat a full page. With modern word processor that have disappear.
It was common to have two or more caps in a row.
There are two shift. They were designed to use with the opposite hand to the key being type. So only one finger in each hand is pressing the keyboard, that applies to uppercase and special characters. Fast typing means you avoid errors and balance the hands. For uppercase/special chars you need both hands, one pressing the shift, the other pressing the key.
When there were two or more characters, the operator switch to caps, it was easier, faster. The memory muscle was developed.
Back in the days, mechanical machines don't have italics, only one font, and bold was tricky in some machines. This applies also for Selectric, nobody changed the ball in the middle on a text. So uppercase was used for emphasis.
That's how a trained professional used caps lock 40 years ago. Currently, it depends on your text input.
But I don't press ESC with the little finger, I use the ring finger.
Maybe I use the ring finger because the keyboards of the 80s were too hard. (and there were no ESC usage in those days typewriter training).
I'm curious how these would compare with the Keyboardio Atreus [2], which I've been considering for a while. The Atreus isn't tented, but it's also significantly smaller, which seems like something that might be helpful in reducing RSI
[0]:https://www.amazon.com/Microsoft-Natural-Ergonomic-Keyboard-...
[1]: https://www.amazon.com/Kinesis-Advantage2-Ergonomic-Keyboard...
Some positions that need shift/control in the left hand will be forced. Keyboards use two shift/control to alleviate the stress. Traditional typewriters have both for fast typing and a balance of force with both hands. It's like a dance of fingers, using the shift with the opposite hand to the key being typed.
On top of that, there is a small "space key", in the right. Being space one of the most pressed keys,it put too much stress on that. traditional keyboards have a large space-key to help the hand position and press with the opposite hand to last key typed.
In an ergonomic keyboard the hand and forearm shall be aligned (that's done), but the keys shall help.
I use Vim and Dvorak. At the beginning when I switched to Dvorak it felt awkward but, there’s actually a deeper reason it don’t matter that much.
Pressing hjkl for anything more than a few presses at a time is generally IME not desirable.
At the time when I began using Dvorak a decade ago I was still fairly new to Vim and so I used hjkl a lot.
Over time I learned to use more efficient motion commands, as well as using both the hjkl and the other motions in combination with numbers. Like say 5k 7w instead of kkkkkllllllllllllllllllllllllllllllllll.
And in fact the slightly awkward placement of hjkl on Dvorak may even have contributed to me bothering to learn more motion commands and combining them with numbers.
I’ve even gotten quite good at eyeballing number of characters, words, lines, etc without explicitly counting them.
The best similarly ergonomic designs we have at the moment are a gaming keypad [3] and some DYI projects [4].
[1] https://en.wikipedia.org/wiki/DataHand
[2] https://www.youtube.com/watch?v=IrRWTeJ0-Ow
[4] https://github.com/JesusFreke/lalboard see also https://geekhack.org/index.php?topic=41422.800
----
On another note, does anybody know how good steno keyboards tend to be for RSI issues in the long run?
I've practiced some steno with a regular keyboard (thanks to plover [5] and Typey Type [6]), but I'd need an actual steno keyboard to continue since I don't have N-key rollover on my current keyboard.
The Georgi [7] seems like a good option and I'd imagine that it would be pretty good for ergonomics since it's a split design and also rather small. The only problem is that I'd have to learn steno which will likely take quite some time.
Here's a demo of someone writing code with a steno keyboard (54 keystrokes needed vs 143 if you were using QWERTY) [8].
[5] http://www.openstenoproject.org/plover/
[6] https://didoesdigital.com/typey-type/
Very interesting. Now it only lacks integration of something like the Spacemouse from 3dconnexion.
* Interestingly my peak typing speed is 500 CPM in the 'incorrect' position and 470 CPM in the 'correct' position.
Of course, I could've tried other solutions: actually using the right hand Ctrl and Alt (my typing form is... good but not great), or swapping Ctrl and and Capslocks.
But I opted to switch to Vim, and lo and behold, my problems evaporated when I no longer had to constantly chord. I'm now 41 with no significant RSI issues.
Or: YMMV!
People are different, and there are few general rules in ergonomics.
The problem with Ergo4000 is, its keys wear down over time. It's a very nice keyboard and tends to teach you touch typing correcty but, the keys become heavier over much use. I didn't notice it until I've switched to G710+. Cherry MX Brown switches are really softer and allows me to work with my computer longer.
I don't have RSI but, My fingers felt tired at the end of a long session. Now with 710+, it never happens.
It's irrelevant since we were discussing typing _comfort_ (RSI etc), and it's difficult to find someone familiar with both Qwerty and Dvorak who will not argue that Dvorak is more comfortable to use.
I've used QWERTY for decades on whatever keyboard came with each machine. In the past year I've had fits of 'shooting nerve pains' along the back of my hands and forearms when I couldn't type for days. Since then, I've switched my typing style to more of a striking than pressing motion and also using a mechanical keyboard--no discomfort since.
> Learn Dvorak…unless you use vim
It's weird that vi and command-line have separate motor memories from typing words. I'm still trying to relearn them.
I also did go down that rabbit-hole of custom layouts, starting with a naive 'lets just shuffle a few keys' to a custom alternative to Colemak/Soul/Niro that I independently/incrementally arrived at.
If I were restarting from the beginning I would suggest MTGAP, it seems the most efficient. And I highly recommend Stevep99's keyboard layout analyzer[0].
In case anyone's curious, the layout I ended up using is Qwicker (aka KFLY)[1]
[0] https://stevep99.github.io/keyboard-layout-analyzer/#/config
I never really got what I was looking for. While the keyboard "felt nice", the extra travel seemed excessive when compared to the standard Mac keyboard (2015 model), and the tactility didn't really improve my typing. Rather, due to the ortholinear layout of the Ergodox, and the keyboard not having room for the Danish characters (æÆ, øØ and åÅ) which I use every day, I spent a lot of time configuring first the keyboard layout, then my brain to fit it. And in spite of the silent switch choice, I could never be as ninjaish as on my Mac keyboard.
The final straw, however, was when I read a blog post that confirmed my general feeling about the sluggishness of the keyboard; the software that the keyboard runs internally means another hurdle in the signal path from my button press to the computer reacting, and a huge one when compared with other keyboards. Regardless of how much I practiced, the keyboard would _never_ feel as fast or responsive as I'd like it to, and consequently, my efforts into improving my typing would probably proceed at a poorer rate than it could have.
I reverted to the Mac keyboard, and I'm happy!
This isn't intended as an Ergodox bashing. Personally, I learned from the experience that a) Mechanical keyboards are not for me, and b) The Ergodox certainly isn't for me. And, possibly, that c) The butterfly mechanism of the 2015 Macbook Pro is actually a perfect fit for me. But I also learned a more general lesson, which is d) To keep critically pursuing alternative interfaces, _especially_ when I'm experiencing fatigue or pain, and e) That regardless of the interface, repetition can be hurtful. In my future home office, I hope to have more than one pointing device and more than one keyboard, so that I can switch it up once a while - use an vertical mouse rather than a horizontal one, or switch to a touchpad or Wacom when I feel like it. And the same for the keyboard; changing the angle of the board (angles in the case of a physically split board), strapping keyboards to my thighs, using keyboard with different switch mechanisms and key layouts. And, of course, getting away from the keyboard, stretching, and looking into the distance :)
Take care of yourselves, fellow keyboard warriors!
At the end of the day I think it's a matter of taste/preference. Some like mechanical keyboards (i.e. me), others don't. That's fine, just pick whatever works for you :)
Come to think of it, I might have incurred some latency myself with the particular layout I'd brewed; some keys had dual meanings depending on whether I held them down or not. That was a patch on the problem I had with the physical Ergodox layout lacking my Danish characters, though, so even if I'm partly to blame myself for the latency, that wouldn't have made a great difference in my overall assessment.
I agree fully; pick whatever suits you. I kind of still want a mechanical keyboard that has extreme amounts of click and clack, just because it feels so nice to type with. I just don't know which model I'd pick, and it'd be pretty expensive for something I'd only use occasionally.
I'm surprised the HHKB2 scores better than the Ergodox. I used one for years but found it to type more sluggish. I suspect this is due to Topre switches requiring a bit more force to push down.
> Come to think of it, I might have incurred some latency myself with the particular layout I'd brewed
Oh yeah, the dual-function keys are horrible latency wise. I tried various ways of reducing this, but you end up having to choose between high latency or low latency but keys not registering. I ended up not using dual-function keys because of this. This is a bummer, because the concept is great.
The Ergodox/QMK does let you tweak the USB polling rate, but I haven't really taken a good look at this yet.
> I kind of still want a mechanical keyboard that has extreme amounts of click and clack, just because it feels so nice to type with. I just don't know which model I'd pick, and it'd be pretty expensive for something I'd only use occasionally.
Personally I'd love to see something like the Ergodox, but a bit more compact (e.g. no thumb cluster), and half the height. Height especially is something that seems overlooked with mechanical keyboards. This is a shame, as I suspect it's easier to keep your hands/arms at the right angle with a flatter keyboard.
> A major source of latency is key travel time. It’s not a coincidence that the quickest keyboard measured also has the shortest key travel distance by a large margin.
So this article's measurement highly depending on key switches. So it should use gaming keyboard that uses shallower actuation point key switches. I also want to see how variable actuation point keyboard works. (like Topre's Realforce APC)
What's it typically cost to have a custom plastic stand made?
I would have just taped a couple of dead AAA or AA batteries to the bottom, or went to an office supply store or Walmart and got something like these and stuck them to the bottom [1].
[1] https://www.amazon.com/Self-Stick-Noise-Dampening-Bumpers-12...
I’ve been using vim with Dvorak for close to a decade now and it’s completely fine. J and K are where C and V are on QWERTY and it works great, I’ve even heard people say they like it more than where they’re supposed to be.
H is one to the left of where it is on QWERTY, but L is in the far top left, it’s my least favorite letter to type. It doesn’t matter much though, because you rarely use H and L, it’s usually W and B or 0.
Being able to join it together isn't very useful -- if you can type on a split keyboard, why would you want to join it together?
But, it's a decent option that you can simply buy. Many of the better options are sold as DIY kits, or at least require editing a text file and re-flashing the keyboard to change the layout.
There are reviews of some other keyboards here: http://xahlee.info/kbd/ergonomic_keyboards_index.html (and the DIY options under 'DIY').