views:

442

answers:

16

This was originally asked within Jeff Atwoods blog, Coding Horror, and we thought it would be interesting to compare the results of SO answers to his blog answers. So here is an excerpt of his blog entry to form the bulk of the question.

What I'm trying to say is this: speed matters. When you're a fast, efficient typist, you spend less time between thinking that thought and expressing it in code. Which means, if you're me at least, that you might actually get some of your ideas committed to screen before you completely lose your train of thought. Again.

Yes, you should think about what you're doing, obviously. Don't just type random gibberish as fast as you can on the screen, unless you're a Perl programmer. But all other things being equal -- and they never are -- the touch typist will have an advantage. The best way to become a touch typist is through typing, and lots of it. A little research and structured practice couldn't hurt either.

<snip>

What tools do you recommend for becoming a better typist?

I will post his suggestions from the blog as answers so they can be voted up and down and commented on as well.

+4  A: 

Write your own?

It's not too tough; it's how I got better.

The advantage is that you can customize what you're going to slurp in to test yourself for... you could teach yourself typing CODE by setting yourself up to type the linux kernel.

+6  A: 

From the Coding Horror Post mentioned in the question:

Get a Typing Game Like

DrFloyd5
All The Right Type FTW!
Dalin Seivewright
+1 for Typing of the Dead!
unwind
+1  A: 

I did it by removing all of the caps from my Model-M keyboard. No letters on the keys mean I had to work from memory. So I guess the suggestion I would make is cover up or remove the letters from your keyboard while you're doing normal activities. You'll learn out of necessity rather quickly.

Welbog
A: 

From the Coding Horror Post mentioned in the question:

Get a Typing Game Like

Type Racer Typer Shark The Typing of the Dead (for PC)

And then...practice, practice, practice

Rulas
+2  A: 

From the Coding Horror Post mentioned in the question:

Change your hardware

  • Dvorak, Keyboard Layout of Champions
  • Colemak keyboard layout
  • TyperA
  • Das Keyboard with blank keys
  • Put Down That Mouse. Seriously. It's a crutch.
DrFloyd5
+2  A: 

Quick typing is a skill developed by exercises. Why would you waste your time with some typing game? Just type the text that you would anyway enter, try not to look at the keyboard and be patient

And... yes... if you've played some instrument it helps a lot

Boris Pavlović
+2  A: 

Instant messaging. I'm almost ashamed to admit it, but the best thing to ever happen to my typing skills was growing up in AOL chatrooms in the 90s. (My answer actually boils down to 'practice', but I found instant messaging to be a good source of that.)

Sean Edwards
MSN messenger is the reason I can touch type.
Adam Taylor
+3  A: 

Flame away, but I don't think faster typing is a desirable skill.

Show me a programmer that needs to be able to type faster to be more productive, and I'll show you a programmer that's typing too much - whether creating too much duplication, or not using the right tools.

We should be about working smarter, not harder.

In any case, the typing-tutor programs out there teach you to type prose quickly. In our world of brackets, semi-colons and the like, they're only going to be of limited use.

I'm with Boris. Just type what you need without looking at the keyboard.

ChrisA
However you need to type fast enough so you don't come up with ideas like, let's make every class inherit some general utility class so I don't have to type as much to call static utility methods.
Kibbee
A: 

Since it's not mentioned yet here, I thought I should add TIPP10. It's free, it's open source and available for most platforms:

http://www.tipp10.com/

I have only tried the German localization however, but that was one of the best typing trainers I've seen so far.

EDIT: Seems the English version is not fully completed yet, but it's possible to create own lessons. Or get the sources and build your own version ;-)

0xA3
A: 

I learnt using a ncurses-based tutor called typist, probably an earlier version of GNU Typist (available as the Debian package gtypist). It's nothing fancy, but gives you plenty of exercises and tells you your words-per-minute speed, which is motivating to get you typing faster.

The most important thing is always to use the correct finger for each key. Then after a bit of practice the location of each letter becomes second nature.

Paul Stephenson
A: 

I know, that does not answer your question, but the discussion went a bit towards the need for fast typing in general; so here's my 0.2 cent of opinion:

The higher the level of your enviroment and programmig language, the smaller the need for fast typing and vice versa. Some of my friends are world-class programmers and relatively slow. It does make a big difference when writing docs and email, though.

BTW: doesn't your IDE support talking into a microphone, yet ? (just kidding)

blabla999
A: 

I'm a big fan of my Kinesis Advantage keyboard. One of the benefits is that if you are not touch-typing correctly (using the wrong fingers etc.) it makes it really hard to use.

rhettg
A: 

I'd recommend finding an active IRC chat channel on a topic you're interested in, and getting into a lot of arguments. There's nothing quite like trying to make a point while everyone else's comments are scrolling to really push getting the words down faster.

Typing faster wasn't a large improvement for me as a programmer, but typing more automatically was. If I have to think about what key I'm looking for and where it is, that's a mental context switch away from thinking about what I'm trying to write.

Edit: Also, it's worthwhile to study wrist position and sitting position for decreasing risk of RSI (Repetitive Stress Injury) as early as possible. If you're going to ingrain typing habits, might as well ingrain that one at the same time.

Kim Reece
A: 

DON'T LOOK AT THE KEYBOARD!

Force yourself to look at the screen (output), and if it's not what you were expecting, back up and try again -- by feel.

It's tough -- but it will help.

Michael Paulukonis
A: 

I suggest you have a go at TypeFaster. Its free (in both senses of the word) and easy to use.

And don't look at your keyboard when you get stuck :)

Haugholt
+1  A: 

Grab a book from your bookshelf, and prop it up open next to your monitor. Open up a text editor. Start copying. Do this for an hour or so every day.

I really don't see the point in fancy typing software. Just type. A lot.

Adam Jaskiewicz