I found a fascinating blog entry this morning on the misconceptions surrounding the speed at which people type, the error rate, and how that should affect software and web design. In the blog, Vincent Gable points to some research done by Teresia R. Ostrach, President of Five Star Staffing, Inc., who was frustrated by the unrealistic expectations employers had for prospective employees. She tested 3,475 applicants’ typing speeds and error rates, with the following results:
Mean = 40 WPM = 240 characters/minute
Median = 38 WPM = 228 characters/minute
Standard Deviation = 16.7-WPM = 100 characters/minute
Vincent points out that Wikipedia claims the average typist can type from 50-70 WPM, but it appears that “normal” expectations are much higher than reality.
The other interesting point Vincent makes is about the error rate Teresia found in her study:
“… an average error-rate of about 6% per word. Put another way, more then 1 out of every 17 words has a typo in it, which is kind of a big deal.
The error-rate is probably artificially high, because subjects were taking the test under a lot of pressure — it determined if they got a job or not! But even the best group of over-qualfied typists still had a 4% error rate; or a fumble on 1 out of every 25 words. And that’s significant.”
Vincent points out this means that spellcheckers and auto-correctors are essential, but it also means those of us designing web applications where typed input is involved need to gracefully accept typing errors.
The best web applications don’t penalize the user for making mistakes–they figure out what the user meant. Search engines that ask “did you mean this?” are far more usable than forms that won’t submit until the user fixes some esoteric typing error. Web applications such as job applications and e-commerce forms should accept and auto-correct user errors, rather than balking at some obscure formatting error, then leave the user struggling to find and correct those errors.
Also, software and web applications should let users enter the data in whatever format is comfortable to them. It’s easy for a web application, for example, to strip out spaces or dashes in a credit card number, but very hard for a user to enter a string of 16 numbers correctly without using dashes or spaces.