Recently I acquired a Kinesis Advantage 360 split keyboard. I did so because I want to proactively do what I can to preserve my wrist and nerve health. As someone who easily spends more than 60 hours a week at the keyboard gaming, coding, working, and writing, I am no stranger to wrist pain. Particularly the part where my thumb and wrist meet on my right hand. I also get a numbness in my pinky and ring finger on my left hand due to inflammation around my ulnar nerve. The pain comes and goes, but my hope is that if I focus on ergonomics now, I can severely reduce or eliminate it entirely. My experience so far have been positive, but there were challenged on the way that I hope to highlight for anyone considering an ergonomic keyboard.
First contact 👽
The first time I put my hands on the keyboard I thought “How am I ever going to learn how to use this?”. Not only did I have to contend with the split nature of the keyboard itself, but its layout. It was ortholinear so the keys were not staggered but in vertical rows, and concave, so your fingers curl and rest in the key wells. I needed a way to practice. Having done research prior to the purchase, one website kept coming up over and over again, keybr.com.
Keybr is an awesome website. It starts with simple sentences containing a few letters and gradually introduces more as you improve. The detailed interface provides valuable feedback, highlighting areas of struggle and offering statistics like accuracy and wpm down to the individual key. Prior to purchasing a ergonomic keyboard, I could type at 70-80 WPM, but with the Kinesis, I was down to 20, and that was only on a limited subset of the alphabet.
I persisted, and after two hours of practice over the course of a couple days I had reached the letter M on keybr and felt confident enough to go full time with it. After about 3 hours of total practice I had reached all the letters of the alphabet. Keybr has typing tests, which allow you to create tests that end after a number of seconds, or number of characters. It uses passages from public domain books like Alice in Wonderland or the Strange Case of Dr Jekyll and Mr Hyde, and are a great way to practice prose. Once I had had practiced all the letters of the alphabet, I began incorporating typing tests into my practice.
In addition to the typing tests, I changed the settings of my practice lessons to add more punctuation and capital letters, which completely crushed my average WPM, bringing me back down to the twenties, but helped me learn where all the punctuation keys were on my keyboard.
On top of the deliberate practice, using the keyboard as my daily driver gave me passive practice. This very article has been written entirely with the Advantage 360.
One additional challenge with using the keyboard are the modifier keys. While you will get lots of practice hitting all the various letters in the alphabet, Ctrl and Alt are not used as often. This combined with them being on thumb clusters which is very different from a regular keyboard, means this muscle memory will lag behind your ability to type. This can make it frustrating when needing to do things like cut, copy, paste, and Alt-tab. The Kinesis does have 4 hotkeys that can be easily reached with the index finger of each hand, which can alleviate this problem. I am considering binding certain common shortcuts to these keys, more on that later. But while I was getting better at typing there were still two areas that I had not tested, Gaming and Coding.
Gaming 🎮
I was curious to see how the Kinesis handled gaming so I fired up Steam. I figured I’d start slow so I started with Vampire Survivors since it primarily used the wasd keys. To my surprise I lasted 26min.
Feeling confident with my movement skills I moved on to a slightly more challenging game. Risk of Rain 2. It was here where I realized my main problem with gaming on a split keyboard. In most shooter games you move with wasd and shoot with the mouse. This works perfectly fine on the Kinesis until you have to jump. The thumb clusters holds modifier keys, backspace, delete, home, end, windows/super key etc. Some keys but not all, are duplicated on both thumb clusters so you can choose which hand to hit them with. The space bar is on the right hand only. It also happens to be the same hand that is aiming with the mouse. This means in order to jump I have to take my hand off the mouse to hit the space bar. For a game where mobility is important, this is not an option.
Thankfully there are a few ways we can handle this on the Kinesis. The first way is to just bind the jump button to a key on my left hand thumb cluster. Since backspace occupies the same key on the left hand as space does on the right, this is a prime candidate. The thought of having to rebind space to backspace in all of the games I play with a jump button did not appeal to me. But there is another solution , remapping the keyboard. I was initially hesitant to do this, as I wanted to stick to the default layout as much as possible, but then I discovered profiles.
If you use the wired version of the Kinesis 360 then the two halves of the keyboard are connected with a USB-C cable. It also uses a program developed by Kinesis called SmartSet. One thing of note, It does not have a Linux version. The firmware for the Bluetooth version of the keyboard uses ZMK, so it might be worth considering if you are on Linux and want to rebind keys. The Kinesis does have a built in remap button on the keyboard itself, but it can be tricky to use if you want to rebind lots of different keys.
SmartSet can be downloaded from the Kinesis website. Besides rebinding keys, it allows you to add macros, and multimedia functions on the various keys of your Kinesis. It also allows you to create custom keybindings for separate profiles. For those who want alternate layouts, colemak, dvorak, and workman are built in so the entire keyboard layout can be changed in one click. For my usecase, this means I could create a gaming profile that makes common keys in video games easier to reach.
I was a little confused at first how to use it, but after opening the software I found out you have to put your keyboard in V-drive mode. You do this by hitting the button with cog and arrows on your right hand, and the button directly under it that is a 3 with a circle (the 3rd hotkey). I’ve circled the V-drive key in red in the picture above so it is easier to find. The app should now pick up your keyboard. Programming the keyboard after that was straight forward, and is as simple as clicking the key you want and then rebinding it.
The only real downside to the gaming profile is now I have to remember to switch to it when I start gaming. I also have to remember to switch back to my typing profile when I exit the game, for example like when I’m looking something up on the game’s wiki. On more than one occasion I’ve tried to type in my browser while still on my gaming layer and typed nonsense into the search bar. Other than that this works well. If anyone ever used a Razer Nostromo or Belkin N52Te, it feels like that.
Programming 👨💻
Programming is what I was the most worried about with the Kinesis. Programmers tend to type certain keys on the keyboard more frequently than your average typist. Unfortunately for my workflow it was as bad as I had feared. As mentioned previously, hitting the modifier keys on the thumb clusters can be a little tricky. I am a heavy Emacs user, and Emacs uses Ctrl and Alt for all it’s keybindings. Having those on the thumb cluster creates some awkward finger gymnastics, and that saying something coming from me. I came across this post by another Emacs user who also was experiencing the same issue and had remapped a few keys to make using the Advantage 360 with Emacs easier. I set up another profile for coding, and changed the keybindings to how they had suggested.
It definitely worked better, but I still felt like the Kinesis wasn’t optimal for using Emacs shortcuts. The concave key wells and varying heights of the keys makes it easier for each finger to press the keys without having to move too far, but that same design feels awkward when trying to hold down modifier keys. Besides, contorting my hand across the keyboard to perform certain actions felt like it was defeating the purpose of an ergonomic keyboard in the first place. I can hear the snide remarks already “just use vim/neovim/a better text editor". If you read my Ode to Emacs article, you will know about my struggle with modal editing.
But I’m a much more experienced programmer than I was then, and as I’ve gotten older, I have warmed up to the thought of giving it another try. While I have my gripes with it there is no arguing that modal editing allows you to perform certain keyboard shortcuts without having to play twister with your fingers. Since I was already remapping my muscle memory for the keyboard, I’d figure now would be the time to try modal editing again. But before you Vim, Spacemacs, DoomEmacs, or Evil mode fans start cheering, I decided to go with Xah Fly keys.
Xah fly keys adds modal editing to Emacs (you didn’t really think I’d stop using Emacs did you?). The creator, Xah Lee, has put over a decade of work into perfecting the mode based on statistical data on the frequency Emacs users invoke certain shortcuts. The most frequent shortcuts and functions are assigned the easiest keys to hit, typically closer to the home row. Since it does not focus on tying certain actions to mnemonic letters on the keyboard, it is keyboard layout independent. The home row contains the same shortcuts whether yours looks like ‘ASDF JKL:’ or ‘AOEU HTNS’ I have a lot to say here, and I’ve yet to fully internalize the new shortcuts, so look out for a follow up article on this. And if people find this interesting, I’ll also look at some of the other modal editing minor modes in Emacs like Evil, Boon, or even ryo-modal (roll your own modal)
With that being said, I think those that use modal editing will have an easier time with the Kinesis than those that edit text in other ways. I have my suspicions that the Kinesis people are Vimmers, because the place where the capslock is normally on the home row is now an escape key. Who needs easy access to an escape key that often other than people that use Vim?
Psychology 🧠
There is a psychological component to all of this that I’ve yet to address. Switching to the Kinesis takes work, both physically and mentally. If you have no desire to practice learning to type again, this keyboard is not for you. Luckily, I coincided my purchase of the keyboard with a vacation, so I was able to get five days of practice in before I went back to work. I would strongly recommend this because you will be useless for the first couple of days. Getting to the point where you can use the keyboard full time, even if you are still slow, is imperative to boosting your learning. It will be easier, and you will get more out of passively practicing by using the keyboard day to day, rather than deliberate 30 or 60 minute sessions after you’ve had some initial practice. Seeing both your WPM and accuracy plummet are discouraging, and it can be hard to stick with it, but you will get better.
This learning experience has been humbling and my heart goes out to everyone who is learning to touch type for the first time. Touch typing is a skill I learned so long ago that I barely remember what it was like struggling through the keys, hunting and pecking each letter in a word. The years of playing MMO’s before Ventrilo, Team Speak, and now Discord honed my finger’s ability to fly across the keyboard in quick bursts, so the initial slow down terrible. Even after 5 hours of deliberate practice on Keybr I’m still only at 57WPM when typing passages out of a book at 95% accuracy
This is plenty fast for my day to day, and well above the supposed 40 WPM average, but I’d ideally like to get back to my old typing speed or even surpass it.
Also be warned, the quality of your first draft when writing or coding will go down. Since you have to spend more time thinking about each keystroke, that is less mental energy you have to devote to the task at hand. Not being able to get your words or code out at the speed of thought will also be frustrating. It’s not unlike learning a new language, and struggling to put together coherent sentences. It gets better over time, but will be challenging in the beginning.
With all of that being said, I’m glad I made the switch. My wrists don’t hurt anymore, my ulnar nerve pain has lessened, and I can type moderately fast and accurate again. Now would I recommend an ergonomic keyboard? Absolutely. But there is a caveat. There are lots of ergonomic keyboards on the market. They have all ranges of layouts, splits, tilts and concavity. Just like keyboards and key switches, not everyone likes the same type of keyboards. But with ergonomic keyboards, there is the additional difficulty in that everyone has different hand sizes and finger lengths.
The keyboards are also more opinionated in their design. So, what to some might feel big and bulky, is the perfect keyboard for others. The only way to know whether an ergonomic keyboard is the best for you is to try it yourself. Hopefully as they become more popular you’ll be able to find a friend who has one you can try before you buy. The aforementioned Xah Lee also has a list of ergonomic keyboards he recommends, and reviews on may others. The impetus for creating EgoEmacs and then Xah fly keys was to reduce hand strain so he has many interesting topics on the world of ergonomics on his blog.
If you really want to get into the weeds and go all in, there are also DIY ergonomic keyboards like the The Dactyl Manuform. You’ll have to do a little 3D printing and soldering, but you can create the perfect ergonomic keyboard based on your hand anatomy. But maybe start out something a little simpler first okay 😉. Lastly, while I've mentioned keybr quite a bit, there many great websites to practice typing like 10fastfingers.com and typeracer. If you decide to use one of these platforms to improve your typing skills, I encourage you to consider making a donation. I wish I had these resources when I was just learning to type, and we should keep them free for the next generation of learners.
Call To Action 📣
If you made it this far thanks for reading! If you are new welcome! I like to talk about technology, niche programming languages, AI, and low-level coding. I’ve recently started a Twitter and would love for you to check it out. I also have a Mastodon if that is more your jam. If you liked the article, consider liking and subscribing. And if you haven’t why not check out another article of mine! Thank you for your valuable time.