Hacker News new | ask | show | jobs
by jboy 3666 days ago
Hey, I did something similar about 12 years ago!

I'd tried the Dvorak keyboard layout and found that I liked the guiding design principles, but decided that the actual layout was a sub-optimal implementation of those design principles. So, I dumped several megs of personal email archives (with the headers & '>' removed) and several megs of C++/Python source code (including comments) through some little statistical number-crunching programs I had written, to analyse:

* key frequency (I still recall that the top 7 were ETOAINS)

* 2-key combination frequencies (for example: TH, SH, ST, NT, EA, OU, IE, etc)

I also wanted it to be Vim-friendly, C++-friendly & UNIX command-line-friendly where this didn't degrade the effectiveness for general English language.

My best layout (which I've been using as my keyboard layout for the last 12 years, thank you Xmodmap on Linux) is:

  QYOU,  XRDCW
  PIEA.  VHTSN
  K;JG_  ZLBFM
Because it was significantly inspired by ideas from the Dvorak keyboard layout (and because I was such a modest young fellow), I called it the "Boyden keyboard layout". :P

Just as you did, I came to some specific conclusions about comfortable layout:

* E & T must be under the middle fingers on the home row.

* T & H need to be adjacent.

* Vowels on one side, most important consonants on the other.

In an important contrast to your layout, I optimised for rolling fingers inwards. This is something I learned from the Dvorak layout: It's easier to drum your fingers by rolling inwards rather than rolling outwards. This is why I have "IEA" on the left in contrast to your "AEI", and "HTSN" on the right in contrast to your "NTHS". (It's actually quite striking how similar our home rows are.) Similarly, I have "YOU," on the upper left, in contrast to your ",UYP".

[Interestingly, the Workman layout lays out SH & ST for inwards finger rolls, but does not lay out TH for an inwards finger roll. I consider this a failing of the Workman layout.]

Another principle that I borrowed from the Dvorak layout is that the most agile fingers in order are: middle, first, ring, pinkie. So, I tried to avoid adjacent double-use of the same finger; but when double-use is necessary, prefer to do it with one of the first two fingers.

I also tweaked the layout for Bash shell a little: My most frequently-used command is `cd`, so these two letters are adjacent. Also, '.' is frequently doubled in directory paths (".."), so that's a first-finger key. It also makes sense to have '.' & ',' as middle-column first-finger keys, because they usually occur at the ends of words in prose (that is, at the end of an inward finger roll), and words almost never end in A or U in English.

2 comments

FWIW, I alias 'a' in the shell so that it cd's into directories but fires up my editor on regular files.

Coworker once said "dude, you only use one command".

Oh, that's an interesting idea!
> It’s easier to drum your fingers by rolling inwards rather than rolling outwards.

Interesting. I’ve always found it _much_ easier to drum my fingers outwards - index to pinky - than inwards. Outwards I get a nice rhythm, inwards is awkward, conscious, and more often I end up just flapping all four fingers up and down, all tapping the desk at the same time.

Quick survey in the house, my son is like me, my wife and daughter find inwards easier. (The dog just thinks I’m an idiot and the cats wouldn’t even acknowledge me.)

Strange.