How I got here #
At my latest job, I was intensively working for prolonged periods of time (80-90h/week). The long hours and the stress of my position put my hands under severe stress.
I started experiencing classic symptoms of RSI:
- Wrist pain
- Pinky finger pain
- Reduced pinky finger flexibility
In fact I had experienced the same symptoms a year back, when I was furiously coding away throughout the nights. TL;DR: I had to go to a doctor specializing in ergonomics; unfortunately she could not detect any physical reasons for my pain. I was simply told to work on my posture and take some time off. That seemed to work and my pain went away.
I was not the only victim, however: my colleague started experiencing the same symptoms, but far worse, his hand had swollen up. He had pains shooting down from his shoulder, down to his fingers, and eventually experienced tingling sensations in his fingers. During the next 2-3 weeks he had to seize coding due to the pain.
Seeing my colleague unable to even put his arm on the desk from the pain really scared me and put things in perspective for me -
my career could end very early if I kept going like this. And I did not want to resort to programming via voice
Therefore, my hunt to become the ultimate infographic starts…
My previous setup #
Until now I had been using my cherished Leopold FC-660M with Chery MX Brown mechanical switches, which has unfortunately buckled under the fierce pounding of my digits. The “insert” keycap stem broke in half.
I had wielded it for the last 3-4 years and it could probably take 3 more. The only signs of tear were the laser etched legends (it’s an older, non double-shot model) and the broken stem. I really loved this keyboard, however I would have preferred MX Clear switches for more resistance (65g vs 55g), as I was bottoming out my key presses every time.
I am also an avid nvim and i3 user (my dotfiles can be found on GitHub). One of the best aids I found was caps2esc, a wonderful tool changes your CapsLock key into an Esc key on press and Ctrl key on hold.
transforming the most useless key ever in the most useful one
This allows you to put less strain on your pinky and type faster, using one home row key CapsLock instead of Ctrl + Esc. This is only the peak of my customization iceberg. To say the least, my setup is highly customized, and whenever someone else sits down to use it, well…
This super tailored config also allowed me to use my mouse very minimally, which further sped my development up helped in reducing the strain on my wrists.
I really loved my setup, it kept my thought - code barrier very low. I also consider myself a fast typist, peaking at ~144wpm on 10fastfingers. Needless to say, switching away from this would be difficult and time consuming.
However, I needed to change my habits, and I look at it this way: better start early and get good habits. Besides, I type most of my day and if this can ease my typing experience, that’s a huge achievement.
So I decided to go as deep as the rabbit hole goes and get a split keyboard.
Why split? #
- Your thumbs are actually useful now (used for not only the space bar)
- Taking the strain off the pinky fingers (less keys to press, mostly handed off to the thumbs)
- Open shoulders
- Ability to move hands around, allowing you to dynamically change your setup
- Flashing the firmware to customize it (QMK software usually, no external tools or software hacks needed)
- Forcing you to use the proper 10 finger typing technique
|ErgoFood||The Cool factor|
- Nobody else being able to use your PC
Down the rabbit hole #
Split keyboards allow you to move both halves of the board around, where it’s comfortable for you. The first benefit I noticed from the keyboard, was that my posture got a lot better. Being able to separate the keyboard, allows you to not roll your shoulders inward. Some keyboards like the Ergodox EZ even have tenting kits, to further ease stress of your hands.
Some keyboards are ortholinear, meaning the keys are stacked directly above each other, supposedly being even more ergonomic due to keeping the keys closer to the home row, and it being more space efficient. Plus, it looks cool, so that has to count for something.
Your fingers aren’t staggered, why should your keys be?
You can find a lot of split keyboard designs on this GitHub repository.
Things to consider #
Price, for instance the Ergodox EZ, is stupidly expensive…
DIY: most split keyboards are made by DIY hobbyists, so most of them you will have to build yourself or even 3D print yourself. Which is cool, because most of the designs are completely open source and configurable with the QMK open source firmware. However, you are going to have to know how to use a soldering iron and order many parts, from different retailers. (switches, keycaps, cases, PCBs, etc.)
Size: One advantage of split keyboards is having multiple layers (given that the keyboard has QMK firmware support), allowing you to bring the keys closer to you, instead of bringing your fingers to your keys. This means you can further reduce your finger travel significantly, yielding even more ergonomics. This is another reason, why I decided to phase out the Ergodox EZ, as it is giant.
And to quote Jeff Atwood:
- Ergonomic or standard?
- Clicky or quiet?
- Low-profile or normal?
- Minimalistic or extra function keys?
- With backlights and LEDs or plain?
The choices are basically endless, especially if you decide to build your own.
My choice #
I am with Markus Persson on the aesthetics side, why he uses the famed IBM Model M.
Because it doesn’t look like a christmas ornament on acid. https://t.co/4JiPu86Uoy — Notch (@notch)
I just wanted the ultimate ergonomic experience.
I quickly phased out all of them, for the Gergo, mostly because I didn’t want to 3D print my case, which phased the Dactyl out and I didn’t want to invest more money, by buying a soldering kit + ordering parts from 5 million different retailers. Gergo’s maker sells them prebuilt, which is the option I went with.
This is what the keymap of the Gergo looks like by default (fully customizeable with QMK of course). Notice that the Gergo is ortholinear.
For anyone confused, layers work by holding the (SYM) or NUM annotated keys (by default the thumb cluster keys). While holding the key, the keys of that layer are not actuated (e.g. the Symbols layer, allowing you to bring the symbol characters closer to your fingers). So if I’d press the
Space (SYM) key and press the key which is originally
A on the Main Layer, I would get a
While researching split keyboards, I happened to stumble upon a Discord channel dedicated to this, and a user quickly convinced me to go for the 12g Choc switches. These are switches that have had their springs swapped for 12g ones, which are incredibly light (for reference, my MX Browns are 55g, which is considered light), the original switch is the Kailh Low Profile Choc.
The reasoning for picking low profile, low pressure switches, is again for ergonomics. I am able to rest my hands on the table and type with the keyboard flat, without any wrist extension. I am also able to actuate the keys with minimal pressure, reducing strain even further. It’s worth mentioning, as the Gboards headline says…
Who needs cases anyway?
This reduces the thickness of the board even further.
Accomodating to my new keyboard #
For the curious, those are Sennheiser 6XXs paired with an S.M.S.L M3 DAC&.
The first roadblock, if you haven’t noticed already, is that all the keycaps are blank. The new form factor, ortholinearity, low profile switches and especially the 12g of resistance, made me feel absolutely disabled.
For the first ~30min I felt like a grandmother Hunt and Peck typing (obviously having a print out of the keys taped to my monitor). I was slow like a grandmother too, barely eeking out 12WPM, with many mistakes.
I definitely needed to train myself to use this thing, I ended up using the wonderful keybr.com, where instead of typing out normal words, you start with a few letters, and as you get better (faster, less errors), it grows the usable alphabet. Keybr attempts to use your native language’s phonetic rules and give natural text and collects “comprehensive typing statistics”…
For example, it measures your typing speed for each individual key, and uses this data to generate random words putting emphasis on the weakest key. The more troubles you have with a particular key, the more you will be typing it. It means, the generating algorithm will put that letter in every word in the next generated lesson. Your typing skills are re-evaluated after every completed lesson, and the next lesson will be adjusted accordingly.
I felt I was relearning to type again, like a kid.
However, I was very pleased with my progress, as my speed shot up in the coming few hours, these were my statistics 3h in:
Gergo quirks #
The only quirks that I had with the keyboard, were reaching some of the keys with my pinky fingers, for instance the
z keys. It would also be nice to have tenting support from the ground up, to not otherwise rely on some halfbaked MacGyver solution, such as placing post its under the splits.
The keyboard is slightly too large for my hands as well, as I can’t reach the whole outer thumb cluster (however, I really do love the thumb keys).
I still have quite a ways to go to use it consistently, without consciously thinking about the keys I’m pressing and to again get used to my vim, i3 and all other highly tailored configurations.
My next step will be to flash the firmware, the first change I will make is changing the left board
Backspace (Control) key to a
Escape (Control) key. Perhaps I will also add another dedicated
For anyone buying a split keyboard, I would highly recommend experimenting with tenting the keyboard, I find that a ~30 degree angle reduces the strain on my wrists further.
I am very glad I embarked on this journey, as this is a clear improvement over traditional keyboards. I still need to put in a lot of time and practice to use this keyboard efficiently, an average speed of ~50WPM doesn’t come close to my then ~144WPM speed.
Most importantly, the strain on my wrists has decreased dramatically, reducing my risk for work related injuries. If anyone has had problems with RSI or similar injuries, I can definitely recommend buying a split keyboard.
However, I think with practice, I might even get faster than I was before. One side-effect that I did not anticipate, is that now whenever I use any keyboard, I type correctly (as in with the 10 finger technique), whereas I used to type withy my own broken technique, which is less than ideal for optimal finger distribution.
I would recommend doing this for anyone that has a career with a lot of typing, as this is more optimal and safer. A nice side effect of all of this, is what my back isn’t strained anymore and shoulders don’t hurt anymore, due to my old, slouched over posture.
Note that I intentionally left out quite a few details, as this post could have dragged on for many more thousands of words, the custom mechanical keyboard world is vast and expansive...
If there is enough interest, I might do a follow up post with all my customizations.
Further Reading #