This is a summary of my current development environment setup around Kinesis keyboard. The goal is to maximize ergonomy and keep hands on the keyboard.

Kinesis keyboard

Did I mention I love my Kinesis Advantage keyboard? Definitely the best $270 I ever spent.

my alt text
My Kinesis keyboard with some 3rd-party keycaps

I remember trying it the first time and not being impressed. In 2014 I was thinking about getting my first mechanical keyboard (or the second one…since my first computer back in 1991 has a mechanical keyboard and it was the only option in my city at that time), a colleague in Ericsson showed me his Kinesis from work and told me how it healed his wrist pain. But it was too much struggle for me just to learn the new layout at the spot. So I didn’t really see the benefits.

Later when I started working for another company I started to develop some mild wrist pain. And I didn’t know it was caused by typing, since I was using a WASD 87 keyboard(It is a great keyboard nonetheless). Luckily during my trip to US I was able to get a Kinesis Advantage keyboard for “only” $270 and I never felt any wrist pain ever since. Now it is my daily coding keyboard.

Things I love about Kinesis:

  • Keep your wrist straight while typing
  • Use your thumb more, not just for the spacebar
  • No needs to move your arms, unless you need to use your mouse

Some disadvantages:

  • Doesn’t work with games, since you need both hands to type
  • The rubber function keys don’t feel as good as other keyboards
  • There is a bug that caused some mod keys (for example the shift key) to keep sending signal after it’s released. It’s fixed in the new version though.

My MacOS setup

Kinesis keyboard has native support for MacOS’s command keys, you just need to switch it to Mac mode according to the manual. However, I made some modifications to make my environment even more convenient.

Key re-map

Hardware re-map

TODO Add my re-map settings for play/stop media key

Software re-map

I used a software called Karabiner(insert link here) together with some Kinesis hardware features to setup my keys on MacOS.

  • Cap lock -> When use alone = Escape, when use with other keys = Left ctrl
  • Scroll lock -> Mute sound (Anyone still uses Scroll lock?)
  • Break -> Decrease volume
  • Print screen -> Increase volume

BTW Karabiner is absolutely awesome. Consider donate some beer money to the author if you like it.

Mouseless navigation

I have been trying to get rid of mouse for years. It feels like such an interruption every time when I move my arm from keyboard to reach the mouse. Unfortunately you can’t use tile window manager in MacOS, so I have to improvise.

Window layout and re-position

I use BetterTouchTool and Magnet to manipulate Window sizes and positions. But later I realize you could achieve all the Magnet features using BetterTouchTool as well. So you really just need one software. The actions I use most are:

  • Make window full screen
  • Move window to another monitor
  • Set window to half screen

Vim extensions in browser

Since I used to be a long time Vim users (now Spacemacs), I use Vimium extension in both Firefox and Chrome. It’s perfect. Just type f and you can navigate to any links on the webpage via keyboard. It’s super fast.

TODO add a small piece on the common commands I use

Conclusion

What is your tips and software