You are viewing sirenian

Mon, Mar. 12th, 2007, 01:18 pm
Don't look down!

Do you find that your pair prefers to drive, even though he's happy to navigate with others?
Do you wish that you could concentrate on the words on the screen, instead of the disjointed letters under your hands?
Do your fingers fly over the keys, or do you stumble, two-fingered, in a desperate attempt to put your thoughts down before you lose them?

I find it hard to think of anything which has increased my productivity more than the ability to type quickly and with a reasonable accuracy. I'm lucky; my dad bought me a typing tutor as a child, and the many years spent chatting over IM or on MUDS honed it to a top recorded speed of 78 wpm. That's faster than I can actually assemble a lucid sentence!

Most secretaries need to type at about 50 wpm. I think a coder, whose typing is less about words than combinations of odd symbols and the occasional keyboard shortcut, should be able to manage at least 40wpm. If you can't, please - for the sanity of your pair - think about learning. There are a number of things that you can do which should help.


  • Get a cheap keyboard, and put stickers or tippex over the keys. Start with the home keys - they're the ones on which your fingers rest when you're not typing: 'asdf' and 'jkl;' on a qwerty keyboard - then expand up, down and out till you know all the keys by heart.


  • Be brave! Be strong! Get a Das Keyboard, which comes boxed ready-tippexed (well, they don't bother putting the symbols on in the first place).


  • Google "typing tutor". You want to find one which concentrates on the home keys first, as this will help prevent you from getting into bad habits. Don't be put off by having to type fff jjj ffjj jjff fjf jfj for the first five minutes. It really is important to get the home keys in place.


  • Practice! Talk on IM; play MMORPGs and find a bunch of friends to chat to; write letters home; copy out your favourite stories or poems.


  • Write code for fun! and use the command line whenever possible.


  • Your mouse is a tool too. Minesweeper is really good for developing mouse coordination.


  • Don't let your pair talk you out of driving. Tell them that you're learning, and ask them to have patience. It may take longer to start with to find the keys by touch, but you should start seeing your speed increase within a week or two.


  • Don't look down!


Mon, Mar. 12th, 2007 01:25 pm (UTC)
(Anonymous)

Most people I know who have been coding for 10 years or more manage about 80wpm with 90% accuracy. I top out at 95wpm with 97%, and that still seems slower than some people!

As far as coding goes, I find I actually type faster in vi than using clever intellisensing symbol-name-completing tech as found in Eclipse and MSVS. Odd.

Mon, Mar. 12th, 2007 05:38 pm (UTC)
sirenian

Good on you. :)

Mon, Mar. 12th, 2007 03:27 pm (UTC)
(Anonymous): The Typing of the Dead

On the subject of typing tutors, I just HAVE to mention the classic Sega game, "The Typing of the Dead". Available on Dreamcast and PC.

Mon, Mar. 12th, 2007 08:39 pm (UTC)
jimmcslim: AMEN!

I completely agree that good touch-typing skills are a key element of pair programming working well. I would also say that proper typing technique is essential to keeping away the effects of RSI and carpal tunnel syndrome. Ergonomics can be complicated by pair programming sometimes, for that reason I encourage each pair to plug two keyboards and mice into each pairing workstation.

Learning the keyboard shortcuts for the applications you spend most of your time in is also essential.

Tue, Mar. 13th, 2007 11:05 am (UTC)
lixo.org: Another idea...

Maximize your IDE/filesystem window/browser and yank out your mouse. Put it away somewhere. Print some cheat sheets and/or grab a friend who talks and types fast and has some patience, tie his hands behind his chair and pretend everything's as normal.

The shortcuts will become muscle memory in no time.

Sat, Jul. 14th, 2007 02:38 pm (UTC)
masukomi: force the issue

I totally agree about learning to type correctly but the problem I found with trying to fix things is that too often you have to get things done and will cheat by looking down. Das Keyboard is a great option because it removes the possibility of cheating BUT if you're going to spend good money on a keyboard it really shouldn't be such a non-ergonomic one.

Another way to force the issue is to teach yourself to use the Dvorak keyboard layout (or any other). Keep whatever physical keyboard you have, swap the layout via the os and maybe stick a printout of the dvorak layout by your monitor. Keeping the old keyboard means you can't cheat because looking down will just screw you up by telling you the wrong (qwerty) letters.

Anyone who attempts this obviously has a brain and could thus be expected to be smart enough to keep their fingers in the home position while learning the new layout. Actually... it's nigh-impossible to learn a new layout without looking of you don't have your fingers in the home position. In the end you'll go through maybe two weeks of painfully slow typing before you get back to real world speeds, but putting myself in a position where I had no choice but to learn to type correctly was worth every minute of frustration. Plus Dvorak's a pretty sweet layout although it does fall a little short when it comes to developers since we user a lot of characters than average typing doesn't really and there's the fact that dvorak was developed before anyone even conceived of needing copy / paste keyboard shortcuts.