romanzolotarev.com: support and follow me on Mastodon and Twitter
Hi, my name is Roman, and I am addicted to tools.
Do you type for hours every day like I do? Then let me share a year-long
the holy grail ergonomic typing. Touch typing can change
your life (in a good way). If you're looking for a new keyboard or
considering learning an alternative layout, you should definitely keep
I "touch typed" with seven fingers for decades and managed to type at average speed with pretty poor accuracy. I tried so many times to learn proper technique, but I always gave up in a week. A year ago I decided it was now or never. I had only one goal: to type faster, like 100 WPM. Spoiler: I'm not there yet. Back then I was using QWERTY on an Apple Wireless keyboard.
This was my method: "Okay, roll up your sleeves, and just memorize every key for all ten fingers." It took two days. I memorized all the keys during that weekend. Typing speed plummeted to 10 WPM on the first day; I was "thinking" before pressing almost every key. I could type with 100% accuracy without looking, but it was very very slow.
Next phase: typing lessons every day for an hour. From time to time I typed with my seven (favorite) fingers when I needed to get work done, but in a few days I switched to the ten-finger method cold turkey. I continued practicing every day at Keybr and Keyhero and finally reached 40 WPM in two weeks.
As soon as I returned to my original speed and accuracy, I decided to upgrade my keyboard to an ergonomic one. Two months later ErgoDox arrived. And of course, I wanted to try an alternative keyboard layout on it. After a quick analysis, I picked the Norman layout: it's easy to learn, and it significantly reduces distance traveled from the home row.
Relearning. My speed dropped to 10 WPM, and recovered to 40 WPM in three weeks. I switched to the ErgoDox full time and played with ErgoDox layers, ending up with a single-layer solution. I reached 50 WPM in 40 days and stopped all typing lessons.
Today I am a happy ErgoDox user. My average speed on Norman is 60 WPM, and it's increasing every month, slowly but steadily.
Fast and accurate typing is a must-have skill for a programmer. I wish I'd switched to the right path earlier.
I am not the fastest typist, just a bit quicker than average. My achievements in terms of words per minute are very humble. Still, I can say the return on investment is overwhelmingly high.
Better typing speed saves me a few hours every week on code documentation, notes, and emails. Fast typing enables blogging: you can find an hour for a draft, but it is harder to find two. So a difference of 20 WPM can affect your productivity quite significantly.
If you are an average typist, you should invest few minutes a day in typing lessons. Focus on accuracy and practice every day. Totally worth it.
If you have a Mac, there's a good chance that your keyboard is excellent. Apple keyboards are robust, compact, and quiet.
ErgoDox is louder and bigger. The primary benefit of ErgoDox is ergonomics. (Surprise!) As with any split keyboard, you can sit (or stand) straight, so your posture is healthier, and it's simply more relaxing.
My initial goal was just to improve my typing speed. Of course, high speed is necessary, but when I started using ErgoDox, I realized that comfort is the primary reward: my hands, shoulders, and back are much happier now. Yes, ErgoDox costs three hundred dollars, but it's the best keyboard available today for that price, and the keyboard is the most important part of my workplace. If you're typing all day long, you can connect your awesome keyboard to any cheap computer and be productive in no time.
I use Norman and like it better than QWERTY. I haven't tried any other layouts, and honestly, I'm not sure that learning alternative layouts is worth it. What I am 100% sure of is that I can learn any keyboard layout and be productive in two weeks. Layouts and keyboards do not limit my speed; my fingers can move faster than I can compose words in English.
Why not stick with QWERTY on all my keyboards? Switching to a different layout and keyboard helped me break my bad typing habits. It's easier to learn correct technique from scratch on an entirely new instrument than it is to to fix those bad habits deeply wired into your brain.
How did I choose Norman? Two sources. First, people who already who use multiple layouts for years: Gary Bernhardt, Aaron Patterson, a good review by Ted. Second, I compared Dvorak, Colemak, Workman, Norman, and even my custom layout with a keyboard layout analyzer (made by Patrick Gillespie). Norman performed slightly better than the others on my custom corpus of text.
One more reason I picked Norman: It's easy to switch to QWERTY and back to Norman in few minutes. (I use QWERTY when I travel.) Norman is just a fifteen-key difference from QWERTY.
I use Vim with both QWERTY and Norman, and I do not remap anything in
Vim. In the beginning, I had one annoying issue:
HJKL on Norman are
in weird locations. I was hitting
U instead of
J. That was such a
painful week. Now everything is just fine.
Looking back, I am not entirely sure if all these layouts made any difference in my case. I can learn any crazy layout and reach an average speed in few weeks, but it won't increase my speed beyond that level. Maybe I should try QWERTY on ErgoDox someday.
If you need to type at high speed for hours at a time, then you should probably follow Mirabai Knight and learn stenography. Beware: the learning curve for steno is steep and you need a steno machine (or for the first time you can use NKRO keyboard, e.g., ErgoDox).
Typing can be fun if you fix your bad typing habits. The earlier you start learning, the more rewarding it can be. Teach kids to touch type as soon as they start playing with the computer. This skill will stay relevant for at least one more generation.
If you want to take away only one thing from my story, it's this: Learn proper touch typing technique today.
Take a typing test on Keyhero. Slower than 40 WPM? Practice 15 minutes every day for a month. If your accuracy is lower than 95%, slow down and try to type as accurately as possible.
If you type more than four hours every day, you should use an ergonomic keyboard.
Typing with pleasure by Pavel Fating, Programming's dirtiest little secret by Steve Yegge, Norman layout by David Norman, My keyboard layout on GitHub