You should try out this website, it is very cool for its AJAX-ly interface. The GUI is intuitive and easy to get used to. The lesson is designed from ground up though it only support QWERTY layout at the time. The statistic chart is cool too.
HTTP://WWW.TYPINGWEB.COM/