Best Free Typing Tutor

In the unorthodox corner, we have Stamina Typing Tutor. It was by far the funniest typing program I have ever used and probably ever will. When you make a typing mistake, you get an annoying taunt. Some of my favorites are "oye!","uh-oh" and, "I'll be back" (from The Terminator) when you exit the program.
Along with its funniness, Stamina Typing Tutor contains some very cool features. The text scrolls like Rapid Typing Tutor, but in this case, it feels much more smooth. You will definitely notice the difference if you have used other typing tutors with side scroll. Stamina also has a fair lesson layout including the basics, digits, symbols, phrases and a few more. If you don't like any of the default lessons, you can make your own using the built-in lesson editor.
Another impressive element is that you can customize the background with your own images! You probably noticed I used a fallout 3 wallpaper ;) Stamina also has background music. Everyone knows typing to techno music is the best tempo to use whilst typing! The songs play on a playlist, so you can pick and choose which songs you want to play including any songs you might have in the mp3 format.
To wrap it up, the interface is user-friendly and looks superb. The only feature Stamina Typing Tutor doesn't possess is virtual hands, but I find this is a marginal issue because most people don't need virtual hands to type any faster then they normally do. I would recommend Stamina Typing Tutor as the best typing program for users who already have some basic typing skills.
What sets Rapid Typing Tutor apart from other typing programs is its many noteworthy features including: a virtual keyboard with moving hands; progress tracking that displays your current/past printing speed and accuracy; and the capability for you to make your own lessons.
Although Rapid Typing Tutor has a multitude of features, I would not recommend it to beginners. There is no instruction on how to type other then watching the moving hands, and the interface is largely confusing. However, it is a great program for people who have memorized where most of the keys are and just want to become more proficient in their typing skills.
I suggest outright beginners start with Kiran's Typing Tutor because of the informative lessons Kiran gives.
Informative progress reports display your past/present wpm and accuracy, as well as the letters you most frequently mistype.
Unfortunately, Kiran's typing design is extremely flawed. When you have finished typing a set of letters or words, the screen changes, making it hard to type at a constant speed. Furthermore, you receive an error if you press the space bar after typing the last letter/word which you would normally do in the real world.
For that reason, I do not recommend Kiran to intermediate users. It is, however, an ideal typing tutor for absolute beginners. The interface is user-friendly, and there is a large amount of typing instruction/practice available for both QWERTY and Dvorak keyboard layouts; it also includes 4 typing games.