Adventures in Ergonomic Keyboarding

Quick Links: Custom Dvorak Layout | Movies | Links

Disclaimer: This web page is intended for informational purposes only --consult a health professional familiar with RSIs for specific treatment recommendations.

I am a computer software engineer in my late 20's. I have had the beginnings of some RSI-like symptoms over the past few years and have expended a fair amount of effort trying to make sure I am not injured to the extent that I can't work (or play--computers are a hobby too). Since much of the useful information I found was on the net, It only seems fair that I post my experiences as well in hopes that it may benefit someone else. Disclaimer: This page is being written in a somewhat adhoc manner as things coalesce in my brain--apologies in advance if it seems somewhat disorganized. : )

Background

I have been typing on computer keyboards since age 10 or so when my dad bought our first computer (an IBM PCjr), and computers have been something of a hobby since. After college I started noticing slight hints of pain in my wrists now and again, but nothing that seemed too significant. I started using a Microsoft Natural split keyboard and began alternately mousing with my left hand. A few years afterwards I started noticing temperature sensitivity in my right hand's thumb muscle (the palm area of the thumb), and shortly after this I began to get a more intense pain like a muscle was pulled in my hand a few days after serious PS2'ing. This was disconcerting since my livelihood depends on my ability to type on a keyboard, and I cut out the PS2'ing and tried to spend less time at the computer at night. This seemed to help marginally, but my hands still felt fatigued and my wrists still ached on and off--I didn't feel like I was addressing the real problem.

RSI timers

One of the first things I tried as my wrists seemed to be more and more aggrevated was to use an RSI timer--a program to remind me to take breaks periodically so I wouldn't type at a breakneck pace for hours on end. There are a number of RSI timers available out there, but none seemed to do precisely what I wanted. I ended up just writing a dead simple program in Python using Tkinter that's actually served my purposes reasonably well--you can download it here if you like (Python itself can be downloaded from here). This helped, and I actually recommend either using one of these or making a conscious effort to get out of your chair periodically. However, the feeling I had of strain/fatigue in my wrists and hands didn't really subside--again, I felt like I wasn't directly addressing the problem.

Change the Keyboard?

Still feeling like the health of my hands was slowly deteriorating over time, I began to worry that I was slowly following a path that would lead me to having a serious RSI problem. Not sure what else to do, I read up on things a fair amount on the Internet. There didn't seem to be any obvious way to significantly reduce strain on my wrists except to stop typing so much. Given that this was not really an option, things seemed pretty bleak. When I stumbled across mention of the Dvorak keyboard and discussions about the inefficiencies of the modern keyboard's design, it really gave me pause. There were claims that finger travel could be reduced by something crazy sounding like 60% or more. I delved into the whole Qwerty vs. Dvork thing with aplomb. Here is a quick summary:

The Qwerty Keyboard Layout

q w e r t y u i o p [ ]
 a s d f g h j k l ; '
  z x c v b n m , . /
Qwerty is the predominant keyboard layout used today for computers, (and typewriters, originally). It's named so because the first five letters in the upper left of the keyboard spell "qwerty". It's not as adhoc a design as you may think...there were typing contests for speed among competing layouts, and Qwerty was the victor. Nonetheless, it was designed largely with the underlying mechanics that it used in mind, since they jammed easily in those days. Many people will tell you that this means it was designed specifically to slow you down (and this makes a great story), but it's not quite so clear. Yes, common letter pairs were moved so they weren't adjacent, but this also had the effect that many of them appear on opposite sides of the keyboard, which allows them to be struck by fingers on alternate hands, allowing one hand to be typing and the other to be moving into position for the next keystroke. It's not really clear that the mechanics of movement are the limiting factor in typing, either.

The Dvorak Keyboard Layout

' , . p y f g c r l / =
 a o e u i d h t n s -
  ; q j k x b m w v z
The Dvorak Keyboard layout (named after it's inventor, August Dvorak), was invented decades after the Qwerty layout became widespread. The layout is designed specifically to be efficient for typing English text, optimized so common letters are easily accessible and the not-so-common ones in the not-so-accessible spots. As an example, look to see where some common letters in English are for Dvorak: 't', 'h', and 'e' are all on the home row, where your fingers normally rest. Now look to see where they are on Qwerty. By and large it basically seems to me that the layout of Qwerty really is somewhat haphazard, and that Dvorak is an improvement. Why hasn't anyone ever heard of Dvorak then, and why does everyone still type on a Qwerty keyboard right now (as you probably are)? Because despite this edge in efficiency, and claims that you can type faster with Dvorak, it is a pretty big pain in the ass to switch keyborad formats. : ) In reality I've heard claims of 1-5% increases in efficiency, hardly worth the work to switch. Why am I even telling you about Dvorak, then? Because in my opinion by minimizing finger travel distances and being more efficient, it is more comfortable to type on, and the keyboard format of choice if you are at all concerned about the strain you put on your hands and wrists by typing day in and day out.

I didn't just come to this conclusion by reading a bunch of web pages, though. Just before the Christmas of 2002 I decided to take the plunge and learn the Dvorak layout. I was using a split Microsoft Natural Keyboard at the time:

There's no need to switch to a new physical keyboard; you can switch to Dvorak in software with almost any OS (see some of the links at the botton of this page for details). I ran through this online tutor page. I'll be frank about this transition: it was tough. :) I clocked myself at this web site and got a whopping 7 words per minute hours after having learned the layout--pretty hilarious if you are accustomed to cruising along at 60-70 words per minute. : ) I kept at it, though, and while I was at it I decided to learn to strictly touch type--I have always just sort of winged it with Qwerty, and I figured it would be a good opportunity to do it right. After doing this for some time, I realized a few things:

- Regular keyboards suck to touch type on
Hitting the Control and Alt keys (especially as an Emacs user) is a pain in the neck when your hands are glued to the home keys. Hitting backspace and Enter, for that matter, also sucks. And some things just seem impossible to touch type--touch typing the numbers across the top of the keyboard is tough due to the way the keys are staggered as you follow the columns.

- Typing ls under Dvorak sucks.
The single most common Unix command, 'ls' gets typed with two strokes of the little finger on the right hand, followed by the Enter key, which also uses the same finger. 'ls -l', a common variant, really takes the cake--it takes six keystrokes, five of which are made by the little finger on the right hand. Needless to say, this is pretty damn annoying. My intent early on was to resolve this with aliases--I aliased 'll' to be 'ls -l', but creating an alias for 'ls' seemed like it would be too disjoint with actually using Unix on any system except one that I had customized, so I just put up with it and figured that it was an acceptable sacrifice for computing health.

I eventually decided I didn't like my keyboard and ordered a DvortyBoards keyboard that is now discontinued--it was a simple split keyboard that had a hardware switch/button to flip between Qwerty and Dvorak, and actually had Dvorak key labels (and smaller Qwerty ones too):

This seemed pretty cool until I got it--I didn't like the touch of the keyboard at all; it seemed to require too much effort and my forearms actually ached after less than half a day's typing. I returned this (for a full refund, including shipping, to my surprise...the customer service at least was excellent). I did more research, and after some consideration ended up ordering a Kinesis Classic/QD Dvorak keyboard, which has the Dvorak key labels in addition to the Qwerty ones (it turns out that all Kinesis Classics have the ability to flip to Dvorak with a key combo, incidentally):

I ordered this keyboard from Safe Computing, who took a ridiculous amount of time to get the thing to me--I think they shipped the thing three weeks after I placed my order (Note: I ordered my second from Office Organix , who got it to me much more quickly). In any case, this keyboard completely rocks...it is designed intelligently in many ways that your typical generic flat keyboard is not:


- It's curved
The key wells are curved to follow the path your fingers take as they move. This makes pressing keys not on the home row easy to do without reaching.

- The key columns are straight
Instead of having the keys offset backwards as they go up (shown with Qwerty below):

q w e 
 a s d
  z x c
...they are straight:
  q w e 
  a s d
  z x c
I am almost positive this offsetting is a direct result of the original typewriters needing to have rods connecting forward to the typing area beneath the keys--they had to be offset so the rods could have a clear path or something. There's no reason to do it anymore with computers...it just makes keys easier to fumble.

- The keys are different heights Given that not all your fingers are the same length, it makes sense to have keys at different heights. This is great when pressing keys with your little finger, for instance--you don't have to turn your wrist to hit the key.

- The thumbs are used On a typical keyboard the strongest digits (thumbs) combined are used to type a single key. This seems silly, especially given all the work relegated to the poor little finger on the right hand.

- Almost ALL keys are easily reachable without moving The common theme on this keyboard is that you don't need to move off the home keys for ANYTHING. Need to hit Backspace? It's under your left thumb. Enter? Right thumb. Arrow keys? Reachable with your fingers without moving your hands around.

My own Dvorak Variant

Basically the Kinesis keyboard rocks, especially when combined with the Dvorak keyboard layout. If you know Dvorak or just use it with Qwerty, you can get yourself adjusted in a matter of days. Using one for five minutes isn't as useful as you'd think, because the keyboard is different enough that in this amount of time it will just feel weird. Given a couple of days it's a different story, though. So I was happily typing on this new keyboard arrangement, having put the days of touch typing Dvorak on a regular keyboard behind me, when I got assigned work that required I run lots of Unix commands. It was at this point that I began to wonder if I could really stand to put up with ls being such a pain to type. In addition, it still seemed a bit awkward to type some punctuation, and this is a bad thing when you are a programmer. This annoyed me enough over time that I started to think that maybe it didn't matter if I type something that was exactly Dvorak--I had actually been switching back and forth between Qwerty and Dvorak (after an initial Dvorak-only period of 4-6 weeks to let things get fixed it my head) and found that I could still type Qwerty without problems. More on this later, but I basically started messing with remapping the L to the other side of the keyboard so I could stay sane in Unix. For a couple of weeks I actually floated the L and some punctuation around in different places, and after many, many mutations, I finally settled on this layout (click it for a bigger image, or here):


I am finally happy with this layout. I've moved the dreaded L away from the S so that ls is comfortable (not to mention that this does away with the embarassing ass instead of all typo it seemed like I kept making). Shift keys are moved up so I can hit them and the punctuation on the numbers more easily, and made most other commonly used types of punctuation easy to reach (curly braces are nice and accessible, the dash (-), dot (.), and slash (/) are all easy to hit too, and this is good for Unix--typing cd ../..; ls -l is easy when before it seemed too heavy on the right hand. My only regret is not having a spare key to bind the Windows key to, mostly so I can get Explorer up quickly when I'm in Windows. This is pretty minor, though...overall this is what I plan on using to type for quite some time, both at work and at home

Is this really more efficient?

Well, I admit that after expending all this effort I was curious to know if this layout really was more efficient or not. It's actually pretty tough to be 100% conscious of precisely what your fingers are doing when you are typing quickly...it seemed to me that my fingers had to move less and that my hands/wrists felt better, but I wanted something a bit more empirical as well. Thus:

Movies

Me typing on qwerty layout, side view (24 megs)
Me typing on my custom dvorak layout, side view (24 megs)
Me typing on qwerty layout, top view (24 megs)
Me typing on my custom dvorak layout, top view (24 megs)

You can really see how much my fingers and hands have to move around to type on the Qwerty keyboard, and how my hands and wrists just don't move much at all in the Dvorak-based format. Try saving these and playing them side by side for maximum effect.

Qwerty and the rest of the world

So it's still a given that 99.9% of the computers in the US I am likely to walk up to besides my own will have a Qwerty keyboard. I wasn't sure how this would work out, but strangely enough I have found that after having switched back and forth a lot between Qwerty and my custom Dvorak format, I can type both pretty well with minimal switchover time. On the typera.tk I can now get my words per minute in the mid 60's for Qwerty and in the mid 50's for my custom format (which is bound to increase more over time). I'm guessing if I cut out Qwerty time I'd boost my custom Dvorak speed, but as it is I can type reasonably speedily on both now, and I'm happy with that. I'm not sure why it is I am able to maintain both or if it's typical...I think that maybe the Kinesis just feels so much different that there's no confusion over which mapping I should be typing. I also still more or less wing it with Qwerty and still touch type my format, so that may also help me keep them straight.

Links

There is tons of stuff you can turn up by searching on "kinesis dvorak" or other obvious terms, but here are some of the links I've found the most useful:

Introducing the Dvorak Keyboard
TyperA - test your typing skills
ABCD A Basic Course in Dvorak
Dvorak keyboard observations

Misc. Stuff

- Wrist pads that are even better than the stock Kinesis ones can be had from 3M. I got mine at Buy.com, where the shipping was expensive, but the prices were rock bottom.
- The Kinesis works great with Emacs. The position of the CTRL keys is excellent...no awkward reaching or twisting to get things like C-X C-F pressed.
- No one is going to be able to type on your keyboard if you use any kind of Dvorak layout. There are PS2 switches that you can use to flip between multiple keyboards. I also wonder if having a PS2 keyboard and a USB one would work or not.
- If you use a Dvorak keyboard and turn on the Dvorak mode in software, you get a weird bastard format that I am compelled to call "Qworak":
    - w v l f u i j r p n z ]
     a r . g c e d y b o [
      s ' h t q x m w , k ;
Email me at xrlobneqfghss@vagreybcre.arg (rot13 decode that...here if you aren't sure how) with comments or questions.