I don't consider myself to be a good typist. I am not really very fast, and what's worse I often make mistakes, most of the time swapping adjoined characters (I am sure there must be a mental or fine-motoric explanation for that ;-) ). Furthermore I need to gaze at the keyboard every 10 seconds or so - maybe just to calibrate my fingers on the keys, I don't know.
So what I do is trying to compensate for those shortcomings by applying as many keyboard shortcuts as possible when coding, which probably makes me gain some time again.
It's funny because I had taken typing classes back at school (those were the days of electronic typewriters), but for one reason or another did not apply the ten-finger system when writing code for the first several years (I'd rather call it some kind of 6-finger freestyle ;-) ). This seemed ridiculous after a while so I bought one of those typing tutor software packages and relearned how the ten-finger system worked on a PC in the mid-90s.
But hey, I just scored 363 characters per minute on this speed typing test. I candidly admit I had one advantage though: Being a history buff I recognized the predefined text (Abraham Lincoln's famous Gettysburg Address).