Many programs can save you some typing by setting up shortcuts for commonly typed words. For example you could always replace @gm with @gmail.com. I'm having trouble coming up with a list of things I type frequently and I'm looking for an automated way to discover good candidates.
Sounds like you'd love AutoHotkey's AutoCorrect script.
If you really want to know what your most commonly typed words are:
1.) Grab a keylogger that will log to flat files in a plain text format, such as pykeylogger. Note that it can also use delimiters for easier parsing such as CSV. Run it for a day or however long you want until you have enough data to make your word preference more obvious.
2.) And then use this simple program I quickly threw together to count the words (assumes CSV file):
That will go through each line in a CSV format file, and create a hash containing every word in the file along with how many times it occurs.
test,test,test,word,test,other,something,test something,test,word,test,test word,test
john@awesome:~$ chmod +x count.pl john@awesome:~$ ./count.pl test => 9 word => 3 something => 2 other => 1