drio

Let's talk keyboards

Keyboards are still one of the most important devices we use to interact with computers. There are tons of people out there using all types of keyards hoping to optimize the way they send instructions to a computer. I thought I’d take a minute to reflect on my experience with keyboards and explain what I think about it.

I believe it is a good idea to spend time trying to figure out what is the best keyboard option for you, particularly if you use it often. As a computer engineer I spend quite a bit of time typing in my keyboard and over the years I have tried different keyboards. I remember using the classic IBM model M keyboard for a long time. I’d call that one the original mechanical keyboard. Over the years I used some variations. Then I started using laptops more but I kept connecting an external keyboard for long hacking sessions. Laptop keyboards offer a more limited typing experience compared to keyboards for desktops.

ibm model m

The classic IBM model m keyboard.

My first observation is: mechanical keyboards improve dramatically the typing experience. I think it is worth it to use them, particularly for long hacking sessions.

And then we have the layouts. There are quite a few flavors these days, the 60%, 75%, etc… These layouts try to minimize the space by removing keys that we don’t typically use (like the numpad or the arrow keys - granted that’s useful in some environments, like blender). Notice that you don’t need to use the arrow keys in editors like Vim. I use “”hjkl” when I am in normal mode. But other environments use arrow keys extensively. These compacted keyboards resolve expose the removed keys by having layers that you activate by pressing a dedicated physical key. The benefits of the small keyboards is that you can keep your fingers in a position (the home row) and you don’t have to overreach to get to certain keys, effectively increasing typing output. The problem is you have to get use to chording. Now you have to press two keys to move up. Or even three keys. In macOS, when you are in an input area you can select a piece of text by pressing shift and the arrow keys. If you have a compact keyboard, you’ll have to use the shift, the arrow key and special key, all at the same time.

Modern keyboards also allow you to remap keys at the firmware level. I am not a fan of that because then you get used to it and may have problems using a regular keyboard that does not have those mappings enabled. You can control that for all your devices but if you switch to a friend’s laptop and she does not have those mappings, you will be in trouble.

I personally type on an Ultimate Hacking Keyboard most of the time and in a mac keyboard (laptop) when I can’t hook up my UHK. I feel pretty comfortable switching back and forth but I have been using those for many years now. It takes time.

the keytron k3 pro

Keytron k3 pro.

You will have to spend time learning your new layout but I believe that certain keyboards make the time you need to adjust much shorter. If you switch to a keyboard that has more or less the same layout as the keyboard you are used to, you will get up to speed quicker. If you jump from a traditional keyboard to an ortholinear split keyboard you will need more time. And let me tell you that you have to be ready for some frustration because you will make so many mistakes while relearning the new layout. Most of the time is worth it but it may take weeks to get used to it.

The reason why I decided to write about this topic is because I tried a Keytron K3 pro recently. It is a very compact mechanical, low profile keyboard that can sit on top of your laptop while you use it. It was a very nice keyboard. Definitely an improvement to the apple keyboard but the layout was very difficult to adjust for me. The right shift key is smaller so they can accommodate the arrow keys. The left function key is also gone. I used the keyboard for almost a week and I never got completely used to it.

There was an another reason why I ended up returning that keyboard: I believe split keyboards are ergonomically superior to the traditional keyboards.

The other big ergonomic adjustment you can do to keyboards is switching to an ortholineal format for your keys. These keyboards place the keys in a matrix instead of stager them like the traditional keyboards do. I haven’t tested that extensively but I’d think the impact is less than the splitting option.

the ultimate hacking keyboard

My UHK (v2).

I have been using my UHK for three years now and I really like it. For me it is a great balance between compactness, ergonomics and speed. The layout works for me and I got used to the mod key fairly quickly. Admittedly I still have issues some times when I am chording. That is because I do not practice since the editor I use (Neovim) does not force me to use combinations of keys that require chording. I can also switch between the UHK and the mac keyboard without problems.

One final parting thought. It doesn't matter what keyboard you use, take breaks to rest. All the keyboards when typing for a long time will cause pain eventually. Some will cause that pain faster but all of them eventually will. It is a matter of finding the best keyboard for you so it is as comfortable as possible while you use it.

BTW, here is a good resource in case you want a new keyboard.

-drio out