I was prompted to create this typing tutor when, while I was myself recently finally learning how to type properly, I was discouraged when the software I chose, while solid in its approach, used some serverside code that couldn't keep up.
The way that software worked was, that it put some text on the screen for me to type, and if I made an error, the text that I was reading from would turn a different color for the keys I messed up on. But it would not update fast enough to keep up with my typing, causing me to compound errors when I had an off-by-one error with my fingers. Waiting for the program to catch up seemed like it defeated the purpose, so the solution was to build my own damn typing tutor.
Like the version I was inspired by, the user looks at text while typing and the text turns a different color when the user makes an error. Unlike the other tutorial, the text in my tutorial to type is generated randomly from a specific pool of characters, thus keeping the lessons focused but not predictable.
The biggest plus to my version is that it is purely a front end application so the user will never experience the delays I experienced on the other platform.
In the completed version the keyboard keys light up, color coded for fingers, and as they are pressed the next key will light up. When the wrong key is pressed, it will turn red to inicate an error.
What I would really like, and I'm not too proud to admit my limitations, is transparent hands over the keyboard typing away as I hit the keys. If anyone knows where I can get the transparent-hand art and have a way I can interact with it, I will be your best friend.
UPDATE - March 28, 2017. So after some user testing I am going to change the content from strictly random to include set text that actually makes sense.