Generating Misspelled Word Lists

Why would anyone need more misspelled words?

Natural Language Processing techniques require lots of data for testing. Improvements are often directly related to improvements in training and testing data. Spelling mistakes are predictable, and therefore it is possible to programmatically generate lists of misspelled words from just the original word. I have done just this and put it in an open source library called Misspeller.

How would I use misspelled word lists?

If we were testing, for example, a spelling suggestion tool, then we could rate our algorithm by how high the correct spelling of a word ranks against all of its misspelled versions. A Mean-Squared Error measurement would give us a great numerical rating of how good our technique is vs other techniques. Don't just go with an algorithm that "feels" right, quantify and compare each algorithm and choose the best one.