One of the most important skills as an IT practitioner, is touch typing. Anybody can touch type providing they want to spend time to practice.
You don't need anything except a computer or typewriter, to learn to touch-type, but in this day and age, learning to touch type on the computer is much more fun.
A plethora of touch-type-tutors exist out there, both free, and commercial, but the best one by far is the ktouch program, for the KDE desktop. It can also run under gnome, and under cygwin. What I like about it is that it has just the right amount of eye-candy, and functionality, and adding new lessons is very easy.
It comes packed with most common keyboard layouts, and many lessons in many languages, even, with a series of lessons designed for English-speaking dvorak users.
I switched to dvorak a couple years ago, and have often regretted not switching sooner. I find they layout to be the most effective one so far, and with the help of ktouch, and lots of practice, I now get to 300+ characters a minute when typing English text.
As a programmer, however, English text isn't the main thing I am typing. I still have difficulties with typing numbers, and symbols, and for that reason, I have created a ktouch lessons specifically designed for teaching numbers and symbols to dvorak users.
This is the first part in a series of two, and covers almost all the numbers and symbols on the top row.
kTouch Lecture on Numbers & Symbols in dvorak