I last documented my experience with the Workman keyboard layout in July. At the time I could type at a little over 50 wpm using it. I’d just made it the main keyboard layout on my personal computer, but hadn’t found a way to apply the layout to all programs. By practicing daily, I hoped to improve to a point where I’d feel comfortable using Workman at work too.
That didn’t really pan out. I quit regular typing practice a couple of weeks after publishing that post. I kept using Workman on my own computer, but would switch back to QWERTY when coding outside of work. And I never got around to trying it on my work computer. My goal to use Workman everywhere ended up on the back burner for a couple of months.
Until the end of September. I took a week off to participate in a Recurse Center mini-batch and decided to use the time to practice Workman. I wouldn’t use QWERTY for anything, not even coding. (Luckily, the weekend before RC, I found out how to enable Workman system-wide on Ubuntu! Note to self: Post the solution. If it was non-obvious to me, it’s non-obvious to someone else.)
That week, I spent more time than I would have liked fiddling with my
.vimrc. I wanted to set up Vim to use QWERTY key
locations in normal mode and Workman locations in insert mode, so my
muscle memory wouldn’t immediately become useless. I installed a
plugin but found a couple of bugs. I fixed one of them but lost
patience with the other, so I started writing my own key mapping. For
unknown reasons it didn’t work consistently. At this point, I was
pretty tired of writing Vimscript. Plus, I was unconsciously using
Workman key locations in normal mode half the time anyway. I decided
to get rid of the key mapping and go cold turkey.
At the start, I made a lot of mistakes while inputting Vim commands and felt like I was coding much more slowly than before. Pairing was especially painful. It’s no fun to feel like you’re slowing down yourself and another person. In hindsight, though, I think I made a great decision! By the end of the week, I felt confident enough to start using Workman at work and haven’t looked back.
As a side effect, I’m no longer able to touch-type QWERTY. At least I think that’s true: I haven’t tried for more than a minute or two. But I’m not unhappy about it. I can still type 65-70 wpm in a typing test. That’s 20-30 wpm slower than QWERTY, but it’s high enough that it doesn’t seem to have an impact on my programming speed. So much of coding is selecting the right option from the autocomplete dropdown anyway.
I do miss the extra speed when writing a blog post or messaging someone, though. I don’t quite feel like I type at the speed of thought (although I don’t think I ever did). But with daily real-world practice I expect to eventually reach a typing speed I’m happy with.
I intended to title this post “Mastering Workman”, but I don't think I’ve reached mastery yet. Hopefully next time I report back I’ll feel that way!