

Ask HN: How viable is it for a programmer to switch to a DVORAK keyboard layout? - jrgnsd

I'm currently typing at a speed where I can physically feel that the layout of my keyboard is slowing me down. I've played with the idea of switching to DVORAK in the past, but the fears of major slowdown has kept me back.<p>Is the initial slowdown worth the long time gain?
======
mbrubeck
I switched from Qwerty to Dvorak about 13 years ago, and frankly I don't
recommend it. It's not faster, it's only marginally more comfortable, and it's
mildly inconvenient. I still type Dvorak, but only because the hassle of
switching back is not worth the possible tiny benefit.

The initial slowdown lasts only a few weeks if you work on your typing speed.
When I first learned Dvorak I lost the ability to touch-type Qwerty, but
within the first year I retrained myself and was able to switch back and forth
(though I'm still not quite full speed on Qwerty). The only thing I can't do
is use Vi keybindings in Qwerty. They seem to be in a different part of my
muscle memory, which has never been retrained.

~~~
dkarl
I switched in 1999, and I agree with mbrubeck. My experience was similar to
his, except that I have to look at the keyboard when I type Qwerty and still
don't type nearly as fast on Qwerty as I did before switching to Dvorak.

Key bindings are the biggest pain point for me. I recently spent some time
using the Awesome window manager, and I had to remap a bunch of its key
bindings, because they didn't make any sense with a Dvorak layout. I'm sure
the default emacs key bindings make less sense to me than they do to a Qwerty
typist. I also agree with mbrubeck that using key bindings on a Qwerty
keyboard is much harder than just typing.

Overall, switching just isn't worth the hassle. In fact, every time the topic
comes up, I consider switching back to Qwerty, but I'm too busy to e.an ,cyd
yd. ecoypajycrbv

------
DavidSJ
I'm about 115 WPM on QWERTY. I learned Dvorak about four years ago and got to
about 80 WPM. If I kept going I think I would have eventually slightly
surpassed my QWERTY speed.

However, what I found was Dvorak is designed for _English_ ; it predates
programming. Most programming languages are designed with QWERTY in mind. I
think Dvorak made that harder, not easier.

------
fadmmatt
In my experience, yes.

I switched to Dvorak a couple years ago, and I've been glad I did. I used to
have terrible pain in my wrists and forearms. For eliminating pain, switching
to Dvorak was as effective as switching to an expensive ergonomic keyboard.

I went cold turkey, so I felt like a stroke patient for the first four days.
It was a very awkward and frustrating feeling. Within a week, I could type
fast enough to code. (Coding doesn't require a fast typing speed.) It took
about two weeks to get back to email/IM speed.

I'm probably not as fast as I was at QWERTY (110 wpm -> 90 wpm), but I'm
certainly fast enough. If I do 15 years on Dvorak, I'll probably reach 110 wpm
again.

I'd recommend doing an hour of typing exercises each day, and napping after
each exercise to let it sink in. Each time I woke up from a nap, I was _much_
better at the exercise from before the nap.

I wrote up my experience on my blog if you're interested:

<http://matt.might.net/articles/preventing-and-managing-rsi/>

~~~
DavidSJ
I will grant that typing in Dvorak could be a nice "break" from QWERTY for my
wrists.

On the other hand, I just typed in Dvorak briefly and I've already confused my
QWERTY typing. Just going to Dvorak for 3 minutes, after a ~2-3 year hiatus,
has temporarily slowed down my QWERTY by ~25%.

------
lincolnq
Change keyboard layouts if you have ergo problems, like I did. Don't change
for speed; you won't gain any.

If you are finding that your keyboard is slowing you down while you code,
though, consider changing your tools -- get a new programming language, or a
new IDE. A concise language like Haskell requires very little typing, but you
end up thinking about each line for a long time. If you're using Java with a
plain text editor, consider switching to Eclipse; I find that Eclipse ends up
entering about a third of the code that I author.

~~~
jrockway
I have found that Haskell requires a fair bit of typing. As with other
interactive languages like Common Lisp, you don't get much of a break between
typing in the code and learning that it's wrong. This is different from Java
where you type for a while (like you're writing prose; "public static void
main" is a good-sized sentence that is required but doesn't actually even do
anything), and then you run your unit tests which takes 10 seconds or
something. While you are waiting, you have nothing to do, and get a free
typing break.

Basically, a different set of problems. Typing needs to be comfortable and
efficient no matter what languages or tools you choose.

------
shrughes
You're not going to type faster with the Dvorak layout. Maybe piano lessons
would be a better use of time than Dvorak practice.

The layout is better for programming, though, so I recommend learning it.
Underscore and hyphen are in the perfect place, and having the comma and
period keys on the upper row is nicer for the hands.

Dvorak is a lot better for Emacs, too, if only because C-x stretches out the
hand instead of scrunching it up.

I've become ignorant of the benefits of Qwerty, though. For some period of
time, I got annoyed by the positioning of Ctrl+C and Ctrl+V, but eventually I
just got used to using two hands for those commands. That's the one specific
lingering annoyance that I can think of.

~~~
jrockway
There is a reason your keyboard has two Control keys; exactly to avoid the
awkwardness of combinations like C-x.

~~~
arundelo
Yes!

Speaking of which, anyone happen to know how (in X and at the Linux console)
to make both my Alt keys act like Alt keys instead of one being AltGr?

~~~
graphene
I've struggled with this as well; the closest I've come to solving it was
changing the keyboard layout preferences in gnome so that my right windows key
now works as alt. I find that works almost as well.

~~~
arundelo
Ah, thanks. I avoid keyboards with Windows keys, though; I use Ctrl and Alt so
often that I don't want other keys getting in the way.

------
zck
I use Colemak (<http://colemak.com/>), and I'm up to about 70 WPM (measured at
typeracer.com, not anything more scientific). Unfortunately, I did no QWERTY
tests before switching, so I can't compare, but I doubt I was significantly
higher.

I'd recommend it. There are a few modifications I'd make, but overall it's
quite nice. They've written programs to check finger travel distance, and it
beats QWERTY and Dvorak. A reason to choose it over Dvorak is that it keeps
WAZXCVB in the same place, so those common Ctrl-keys are just as easy to
press.

There's several versions for Windows, including one that can be run off a
flash drive, and work without installation (<http://colemak.com/Windows>), and
Colemak is also built in to X on Linux.

Although depending what you're doing, switching to an alternate keyboard
layout can be a problem. For example, if I were a sysadmin, going around to
different computers and fixing them, it would be infeasible to switch, unless
I put the time in to being able to context-switch my brain quickly, so I could
touch-type both.

~~~
mbrubeck
Nice! Though as a vim user I would rather have a layout that messed with zxcv
and instead left hjkl alone... (Colemak is especially bad, with J below K.)

~~~
zck
Ouch, that would be a pain to use. All four of them are on the same finger,
even! The problem with leaving hjkl where they are is that it wastes a huge
amount of prime real estate. In colemak -- as you've seen -- those keys are
used for hnei, all commonly typed letters. jkl are much less common.

~~~
mbrubeck
Well, maybe not leaving them on home row, but keeping them grouped together
nearby, maybe on the M,./ keys.

------
weavejester
I'd suggest learning Colemak. It requires slightly less finger movement than
Dvorak, the layout is more similar to Qwerty, and it's more convenient for
typing commands like "ls", which requires two presses of the right little
finger in Dvorak.

I can touch-type in Dvorak and Qwerty, and I've been meaning to learn Colemak.

------
Terhorst
I started using Dvorak out of curiosity more than anything. I've been using it
for close to 4 years now, and I haven't noticed any speed gains.

It's inconvenient to use other peoples' computers; although, this is offset a
bit by the amusement value of watching others try to use my machine.

The claims about ergonomics may be valid. My hands move a lot less when using
Dvorak, but I can't speak as to whether the chances of RSI are reduced in any
way by this, or if it provides any kind of relief.

Programming-wise, I haven't had any problems. The biggest concern there is
that you might not be able to type for the first week or two.

Unless you have some significant reason to do so, I don't think I would
recommend switching myself. I didn't see any significant gains, but your
mileage may vary.

------
gr366
I made the switch to Dvorak over a 2-week holiday break just under 10 years
ago. I may have eventually boosted my speed marginally, but I _can_ say my
hands don't get tired or sore typing for long periods as they did on Qwerty.

The only con I've run into is when I have to use somebody else's computer,
like during a presentation in a meeting and I end up basically hunting and
pecking on Qwerty. I get looks like, "this guy is a developer?" One time when
I explained I was a Dvorak keyboardist, a participant asked if I also spoke
Esperanto. (I don't.)

However, I highly recommend the switch just for the brain-remapping
experience. Going through the learning process literally feels like a mental
rewiring.

------
silentbicycle
These posts seem to come up periodically. Search hacker news for 'dvorak'.

I've used Dvorak for three years or so. I like it, and it hasn't caused me
problems. (FWIW, I use Emacs.) I type 95ish WPM on Qwerty, and haven't cared
to time my typing on Dvorak - I type fast enough, either way. I switched as a
precaution for RSI (and just to shake up old habits), and the layout feels
less awkward than Qwerty. Seriously, ; on the home row?

Some people seem to believe that the failure of the Dvorak keyboard proves
their economic ideology. Whatever.

------
msluyter
I think you'll see a wide variety of responses here and the only way to know
for yourself is to try it. I used Dvorak for 10 years and it worked fairly
well for me, though ctrl-c/v is clumsier because you can't do it with the left
hand while mousing with the right.

I ended up going back to querty in order to revert to hunt and peck (painful)
due to wrist issues. Now I continue with querty on a very low impact keyboard
with a "pawing" approach. My typing is slower this way, but it appears that
independent finger motion is what does me in.

------
StudyAnimal
I used it for about 3 years, and it sped me up greatly when writing text, as
in large blocks of English language text, it didn't help with programming at
all. However before that I was only ever a 5 finger Qwerty typist, the speed
gain from Dvorak came from forcing me to touch type properly.

2 things made me abandon dvorak and switch back to qwerty. Keyboard shortcuts.
I never got the hang of mentally mapping between individual keys, so I when I
had to push a Ctrl-X for example, I would have to stop and think for too long
trying to work out which one X is.

The other thing was pair programming, was a pain switching back and forth when
grabbing and relinquishing the keyboard. Sometimes pair programming meets
enough resistance as it is without my stupid keyboard layout adding to it.

Another bonus, is that with qwerty you can work single handed, and e.g. hold
the baby or eat or use the mouse or whatever.

So right now I am back to my 5 finger qwerty, its slower for example for
things like this message, but the bulk of what I do is just typing in little
bits of text and source code here and there so the speed loss is acceptable.

If I were typing in large blocks of English text for a living I would switch
back to dvorak, but for a programmer qwerty is better.

Actually, if you are one of those programmers that use the mouse to use menu
items, and never use shortcuts, you might be ok with dvorak.

------
richardw
Depends. I use the "programmer dvorak" layout and it's definitely less finger-
work, but you miss a few things. Cut and paste is a bit more of a hassle. I
look like an idiot on QWERTY keyboards because I haven't bothered to remember
it. You can practice both but it's much easier/faster to just switch.

I'm happy with my decision because it's one short decision and affects the
rest of my typing life - ie forever. The reduced impact on my fingers and
wrists seems worth it.

------
SlyShy
As DavidSJ noted, typing in Dvorak doesn't make programming any easier.
However, there are newer generations of Dvorak such as Programmer's Dvorak
([http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard#Prog...](http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard#Programmer_Dvorak))
that attempt to make it easier. I've been using plain Dvorak, because I didn't
learn about the alternatives in time. I don't think the switch has made much
difference either way.

Oddly enough, the change that has caused the greatest increase in typing speed
for me was starting to use my netbook keyboard. Most people will find this
insane, but the smaller keyboard decreases finger travel, so as long as your
fingers are small enough to continue typing with precision it ends up being a
plus.

I think it's pretty meaningless to worry about typing speed being a
productivity problem while programming. I can type at 120 wpm, but only 85 wpm
while typing composed English, and about 35 wpm typing code. It's much more
about brain latency. :)

------
mrduncan
Not to be snarky but I'm curious what you're doing that you need extremely
fast typing for? I rarely find that typing is my bottleneck, it's usually my
brain.

That said, why not give it a shot for a day or two? At worst, you'll realize
it is going to take forever to regain speed - at best, you're well on your way
to using the new layout.

~~~
jrgnsd
It sometimes happen, not often, that my brain needs spurts of speed from my
hands, and it's then that I notice that particularly my left hand holds me
back. I've taken DVORAK under consideration as it's partly designed to
detangle the left hand.

I'm not sure that a valid comparison / assessment can be made after a day or
two's use.

~~~
mrduncan
Fair enough, I should have first stated that I've never tried DVORAK (so take
my advice with a block of salt). What about giving it a week then? I suppose
my point was that you won't know how hard it is until you give it a shot for a
little while. People all learn differently, the only way to know is to just
give it a shot.

------
numeromancer
I started using dvorak some years ago. I have since switched back. I don't
think it helped my speed or my hands, and there were too many other costs
which made it not worth while: having to set it up every time you reload your
OS or start a VM, or change window managers, etc; it made the vi editor
unusable, and while I mostly use emacs the ubiquity of vi makes it inevitable;
using other computers in the lab became difficult, because they are shared
with other people who used querty; it sometimes confused some programs and
made them unusable; and so on.

I don't think there is a long-term gain to be had. Read
<http://reason.com/archives/1996/06/01/typing-errors> for an account of the
qwerty myth.

~~~
jules
I use Colemak and I can still touch type on qwerty (but slower and with more
errors). There is a Colemak mode for Vim and for Emacs keyboard layout doesn't
really matter.

------
nw
I began using Dvorak because I heard it could be helpful in reducing RSI
symptoms. It took several weeks to become proficient, so I don't recommend
learning Dvorak with a big deadline looming. As a programmer, the most
frustrating aspect of Dvorak is cut/copy/paste because the X/C/V keys are all
over the place. I imagine this would be a problem for hardcore vi users too.
The benefit is that my fingers travel less, so typing hurts less.

------
macco
As alternative do DVORAK you could use the NEO-Layout it has a third modifier
for parenthesis an that stuff. But I think is it very dangerous to use a
different keyboard layout. I used NEO quite a time and I got a bit faster than
on qwertz. but sometimes i had to use other computers than mine and i this
moments I were doomed. I had to use two fingers with looking on the keyboard.
That was my reason to switch back.

------
shaiguitar
Keep in mind though one thing;

If you use the terminal often, you'll be using TAB, and even if you switch to
DVORAK you'll still have repetitive action.

------
mightybyte
I switched to dvorak 3 or 4 years ago after 15 or so years of touch typing on
qwerty. At the time I switched I could type ~120 wpm with qwerty. It took very
little time to get up to 60-70 wpm on dvorak. Now, after 3-4 years on dvorak,
I can type 90-100 wpm. So my advice is similar to others here. Don't switch
for speed. I have never had RSI problems, so I can't comment on that aspect.

------
pmjordan
I'm using a type-II (German) Dvorak with some custom modifications that map
[({<})]> to Alt Gr+homerow (Linux)/Alt+homerow (Mac) and the caps lock key to
Alt Gr and Alt, respectively. I switched for ergonomics (big improvement, no
RSI pain at all) not speed; if my speed has improved, it's probably not by
much, but then I don't think I've ever wished for faster typing speed.

------
27182818284
It took me about two weeks to learn it well enough to where I could instant
message my friends comfortably. I didn't notice any speed-up from the switch.
I did seem to notice less stress on my fingers after a full day. Eventually I
had to switch off of it because I found oscillating between QWERTY and Dvorak
keyboards (for example home vs work vs friend vs lab) was annoying.

------
collision
As others have said, the major benefit of Dvorak isn't speed -- it's comfort.
Your fingers do a lot less work typing Dvorak than QWERTY.

~~~
jcdreads
Yes: I switched about 14 years ago. It took me about three (frustrating) weeks
until my Dvorak speed caught up to my querty speed---it isn't noticeably
faster for me---but my wrist and hand pain completely disappeared after about
a week.

Furthermore, if you actually switch back even for a few minutes once a week or
so, your Qwerty typing won't atrophy much at all.

However, I wouldn't bother switching unless you're pretty sure that you're
going to be spending several hours a day typing, and mostly on the same small
number of computers. Reconfiguring any modern computer back and forth between
Qwerty and Dvorak is easy, but it's completely maddening for anyone with whom
you share a computer.

------
Apreche
Don't listen to the DVORAK people. All the things they say are just FUD with
no scientific studies to back them up. There is no real evidence that it is
better in terms of ergonomics or speed. If you do switch to DVORAK, you will
have lots of inconvenience because the world is QWERTY.

The very real advantages of sticking with the world standard greatly outweigh
any imaginary advantages of changing layout. Your best bet is to just get a
better keyboard, physically speaking.

~~~
fadmmatt
No studies?

[http://www.dvorak-
keyboards.com/Dvorak_vs_qwerty_keyboard_te...](http://www.dvorak-
keyboards.com/Dvorak_vs_qwerty_keyboard_tests.htm)

Remember: A study need not be published in a journal and well-typeset to be
scientific.

~~~
plinkplonk
"Remember: A study need not be published in a journal and well-typeset to be
scientific."

Even better, as programmers we can write scripts to compare layouts and
calculate whatever statistics we want to. aAfew years ago, contemplating the
switch to Dvorak (not really to optimize typing efficiency, I was getting
twinges in my wrists and the doc said they were early warning signs of RSI) I
wrote a ruby script to compare a given body of text against both Dvorak and
Qwerty layouts and then I ran it against a few years of code I had on my
machine. The Dvorak layout showed a significant decrease in amount of finger
movement, especially movement off the home row. Good enough for me.

It took me about a month to get back to my original typing speed. I don't have
to use other people's computers often so it works for me.

my 2 cents. (oh yeah no more wrist pain. fwiw)

------
jules
Check out Colemak. I don't think I type much faster with Colemak but it's much
more comfortable.

------
mkeblx
I just use the 0 and 1 keys and have my IDE convert to corresponding character
every 8 keypresses. This way I don't have to move my fingers around at all and
only need two fingers. It's a minor speedup and lets most of your fingers rest
all day.

------
Mathnerd314
Which language/IDE are you using?

