---
template:
url: workman
title: The Workman keyboard layout
subtitle: I have a lot of free time on my hands (heh)
date: 2020-10-24
---
I've been at my computer everyday, for at least 10 hours at minimum.
These past ~6 - 7 months have been the most I've ever used my computer.
Eventually, I started experiencing discomfort and pain -- especially in
my pinkie finger. Typing became a chore, and I found myself using my
shell's command history more just to avoid typing commands. I tried
using a wrist rest, different keyboard heights, but nothing helped.
Thus began my search for a new keyboard layout, and it swiftly concluded
once I chanced upon the [Workman layout](https://workmanlayout.org).
According to the website, it is supposedly an improvement over Colemak
and Dvorak. I skimmed through the numbers and other stats, but
I honestly didn't care. "Oh it's better than the popular alternative
layouts? Okay that's enough for me."
![workman layout](https://raw.githubusercontent.com/kdeloach/workman/gh-pages/images/workman_layout.png)
I downloaded the tarball containing the different config files for
different platforms etc. I just needed the `xmodmap` -- that's the
easiest way to apply a keyboard layout.
```console
$ xmodmap xmodmap.workman
```
To practice the layout, I used [keybr.com](https://keybr.com). You can
configure the keyboard layout via the settings. Naturally, the first few
days were incredibly painful. I was only able to type short sentences
with very small words. I tried to not engage in heated discussions on
IRC, for I could not type up a response in time. However, if I did
stumble into one, I would switch back to QWERTY just for those couple of
messages.
I found myself making the switch less and less, over the next few days.
Chatting on IRC is a _great_ way to learn a layout. Or chatting
anywhere, really. It forces you to get accustomed to the layout by
typing the common words used in conversation. I also made a tiny change
to the layout -- swapping the F and B keys, since
typing the "fo" / "of" digram in the same hand felt really weird. Soon
enough, I was averaging about 30 - 40 WPM within the first week of
having switched to Workman.
And then things at work started to pick up, and I had to do what I had
been dreading the most: edit code -- in Vim. It's fairly common
knowledge that Vim, by default, extensively uses the H,
J, K and L keys for navigation. Sure,
there are better ways to move around and only using those keys is
frowned upon -- but it's a habit built over years, and hard to shake
off. After poking around for a bit, I found the
[vim-workman](https://github.com/nicwest/vim-workman) plugin. Forked it
to apply the F/B change, and I began using it.
It was great at first. My Vim muscle memory was not hampered, as I was
able to use QWERTY in normal mode, and Workman in insert. But as I got
better at Workman, I found myself instinctively reaching for the Workman
keys in normal mode. Well, everything except for the H,
J, K and L keys. This quickly became
bothersome and I uninstalled the plugin to search for a better solution.
Wait, don't I have a sick new [programmable mechanical
keyboard](/blog/ducky-one-2)? What if I configure a layer on it just for the
H, J, K, L keys? After pouring
through the manual for a bit, I eventually got it set up. I even remapped
the Caps Lock key to Fn so it's easier to access the
layer. So now, hitting Caps
Lock+Y/N/E/O results in
HJKL being pressed. This took a little bit of getting used to,
but it got easier with a bit of practice.
Since I don't rely on any plugin/remappings, I can use Vim as is on
remote machines too. Another bonus from this adventure was I actually
spent time learning better ways to navigate, and reduce my reliance on
HJKL. Overall, a big win.
It's been over 4 weeks since my switch, I think, and I'm comfortably
averaging around 80 WPM. Still a good 20 WPM slower than QWERTY, but
I think it'll get better with time. And am I still able to use QWERTY?
Well, kinda. I still use QWERTY on my phone keyboard, since Workman
isn't an option on it and it's actually alright. However, when I use my
desktop to play Dota, I prefer using voice chat to communicate since
typing on QWERTY takes too long -- I am forced to hunt and peck.
Interestingly, after about 15 - 20 minutes on QWERTY, my brain kinda
just clicks back and I can type on it with relative ease. Not as fast as
I used to be, but it's manageable.
All things considered, switching to Workman was one of the better
decisions I have made in life. It feels so nice to be able to type out
whole words in just the home row. It just _flows_ so nicely, and it has
made typing so much more enjoyable again.