Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Programmers' Dvorak Keyboard (kaufmann.no)
17 points by kirubakaran on Nov 2, 2008 | hide | past | favorite | 14 comments


I've been using a modification of this one for a few years.

- I placed the braces, brackets and parens under the same fingers in either hand.

- I placed 9 at the left of 7, for consistence.

- I switched shift position of colon and semicolon (I used to write a lot of Python in vim at the time).

- Some other minor changes.

This is how it looks like:

Unshifted:

  ${[(*+!=)]}%#
  :,.pyfgcrl/´
  aoeuidhtns-\
  ~'qjkxbmwvz
Shifted:

  `97531&02468¨
  ;<>PYFGCRL?@
  AOEUIDHTNS_|
  ^"QJKXBWVZ


This caught my eye:

Kinesis keyboards unfortunately rocades [sic] the entire upper row one key. This may not matter much if the layout is numbers in ANSI order, but it causes the wrong finger assignment in the Programmer Dvorak layout.

This is either dated or simply inaccurate, because it ignores the fact that on a Kinesis Advantage Pro (like mine) you can remap any key to any other key at the keyboard level.

Of course, I haven't tested this with such a wacky Dvorak layout, or with any Dvorak for that matter. I'm a believer in good ergo keyboards, but I'm not a believer in Dvorak.


> I'm not a believer in Dvorak

Is it just a belief or do you have some reasons?


I'm just unconvinced. Dvorak might speed up my typing a bit, but I doubt that raw typing speed is a bottleneck for my work, and I doubt that the time saved will justify the sheer amount of time and trouble required to learn and practice the Dvorak layout. Meanwhile, I'm suspicious of the claims of a big ergonomic advantage. I'm not saying that the people who claim to feel better when using Dvorak are wrong -- but I'm not convinced that their results are generally applicable, nor that they necessarily rise above the level of the placebo effect.

I suspect that any time I would spend learning Dvorak would be better spent in figuring out how to get through life by doing less typing in the first place.

In theory, I could argue against the Kinesis in the same terms, but the investment required to come up to speed on the Kinesis is smaller (just a couple of days in my case). And many of its ergonomic advantages -- hands further apart, wrists at better angles, better use of the thumbs, less stretch for the pinkies because their keys are physically closer to them -- are unachievable with any other keyboard, no matter which keymap you use. I would certainly recommend trying a Kinesis before learning Dvorak -- if you're dead set on becoming the smoothest keyboarder in the world, there's no reason not to use both.


Fair enough.


I use a modified Dvorak optimized for programming, with the most important modifications being the placement of l/L, s/S, and ;/: (the last is particularly important for any programming language that uses lots of semicolons or colons, which is most of them). It's optimized more for minimizing typing load than for maximizing speed, though it is must faster that Qwerty because of the Dvorak base.

Here's the core of my layout:

    q,.pylscrg/
    uoeaidhtnf\
    jx;k'bmwvz
Dvorak typists will find it mostly familiar.

It took a while to learn, but I was planning to learn Dvorak anyway so the marginal cost was small. Modifying my keyboard was easy: I use a programmable Kinesis as my primary keyboard, and used Ukulele (http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&...) to modify my MacBook's default keyboard.

Changing to this layout significantly improved some of my more serious RSI symptoms; in particular, my ulnar nerve problems practically disappeared once I got serious about minimizing pinky keys.


A very clever setup, but is it necessary? Programmers, on the whole, don't need to type very fast because they're thinking and coding while typing. Writing code is not like writing an e-mail or a blog post where the brain can work much faster than the fingers.

This keyboard optimizes perhaps the widest part of the pipe - which is awfully fun to watch, but lacking in real productivity increases, I believe.



I agree with Steve's point, but he's mostly talking about typing fast to participate in online communities, write more e-mails, etc. That sort of stuff doesn't require a "programmer's" Dvorak keyboard - so my point still stands. The act of programming doesn't require extremely fast input - especially as a lot of people use macros and shortcuts now anyway.

Using Dvorak to be a better participant in online forums, etc, is awesome, but you can use a regular Dvorak keyboard for that.


If you are going to learn Dvorak and you are a programmer, you might as well learn "Programmer's Dvorak" and be able to type your programs faster in addition to being a better participant in online forums etc, don't you think?


Maybe, but I guess like authors who say you only get the best results when writing slowly with a pen, I feel that speed should never be of the essence when typing code.

That said, I'm not a Java programmer, so I'm somewhat biased in my appreciation of brevity ;-)


Okay :) Just for the record, I am not a Java or any other verbose language programmer either.


I've been using Colemak for a bit over a month now. http://colemak.com/

It's based on some research not available when Dvorak was designed, but with similar goals plus ease of switching from and compatibility with Qwerty (ex: most punctuation and bottom row are unchanged). It took under two weeks to get to about 25wpm, which was about where it stopped feeling painfully slow for me.


I picked colemak for this reason. (Which is made ironic because I use emacs and so it doesn't really matter because the keybinds are different anyway.) Its worth checking it out. Hard to tell if a new layout is any better or worse.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: