Beyond Dvorak
During lunch I spent some time going through the new Erlang Book. Now my pinky is sore.
Here are some characters that you type a whole lot in Erlang: []{}|
Every one of em takes a pinky stretch, and | takes a huge stretch. I type Erlang maybe half as fast as I’m used to. And it’s not just the typing, it’s the interruption of “flow” that bothers me.
I don’t think it’s really Erlang’s fault. The syntax is elegant, just hard to type on a qwerty keyboard. A lot of languages make heavy use of these characters, along with others like ()-_<>. Maybe the best keyboard for programmers would put these on the home row.
I won’t complain too loud, because Erlang doesn’t require all that much typing. For example, suppose we need a routine to find all the permutations of a string. Think how you’d go about doing that in C# or Java. How many lines of code would it be?
In Erlang it’s two…here’s the code, from Joe’s book:
perms([]) -> [[]];
perms(L) -> [[H|T] || H <- L, T <- perms(L–[H])].
But as for the keys…homerow would be awfully disruptive…but my numeric keypad doesn’t really need navigational functions, because I have dedicated keys for that. So I could remap the numeric row to the pad, and use the pad keys for #$% etc. Then I could remap these pinky keys to the left side of the top row. I’ll leave the () where they are, and map capslock to another shift. That should make things quite a bit more comfortable, without driving me nuts whenever I have to use someone else’s keyboard or type regular text.
The laptop keyboard might take a little more thought.
April 18, 2007 at 6:28 am
Or… You could try some hand exercises to bulk up that weak pinky. Maybe squeeze a tennisball once in a while. In fact, I think there is a Tai Chi hand movement that would work for you.
April 18, 2007 at 5:52 pm
Next you’re gonna suggest I go outside and get some sun.