free multilingual typing tutor for Mac OS X.
All system keyboard layouts (but not input methods!) as well as a wide variety of non-system keyboard layouts (i.e. Dvorak, Colemak or custom layouts being built using Ukelele) are completely or partially supported.
You have to type a mixed-string of random characters. You can customize a character set at each of the 30 levels, and thus, you can control the learning process. You can also import texts from TextEdit, Mail or Safari. Each session provides a run log in RTFD-format. By default, you will find it on your desktop. In the Preferences, you can adjust a host of settings to make your typing exercises to your liking.