
What happens when a misspelling gets enshrined in official documentation? Mike Pope, a technical writer and editor at Microsoft, looks at some embarrassing typographical errors that continue to linger in the world of computer programming.
Sometimes accidents become standards. My favorite such story concerns the typewriter technician Martin Tytell. During World War II, Tytell worked for the U.S. Army creating typewriters for many languages that didn't already have them. On the typewriter for Burmese, however, he installed one letter upside down. By the time he learned about the error, the upside-down letter had become institutionalized for typewritten Burmese documents.
In my work editing computer documentation, I've seen several similar situations, where a slip-up early in a development process is not caught. By the time someone notices the erroneous term, it has become a de facto standard.
In my world, probably the best-known example is the Web programming term referrer. In a browser, a referrer is, loosely speaking, the page you were just on. For example, your browser tracks the referrer in case you click the Back button.
When specifications were written for the Web, someone misspelled referrer as referer. (Check out section 10.13 of the HTTP specification here.) The specification became the standard, programmers created browsers according to the specification, and ever since, we've worked with the HTTP_REFERER object. Programmers who try to use the correct term eventually discover that it only works when they intentionally misspell it. (On the other hand, many programmers don't even realize that referer is a misspelling, which is how we ended up in this situation in the first place.)
Another example. For the word mnemonic, you'll often find the variation mneumonic (reasonable, considering how the word is often pronounced). Long ago, a Windows programmer at Microsoft created a function named SHStripMneumonic. This function kicked around in Windows for a long time as what's termed an internal function — something that other Microsoft programmers might use, but not outside programmers. So no one worried about how it was spelled. At some point, however, Microsoft was obliged to publicly document every function, and by then the use of SHStripMneumonic was widespread enough inside Windows that it was no longer practical to try to pretty up the name for public consumption.
More recently, another Microsoft programmer wanted to create a function that involved checking indexes, or as the dressed-up plural has it, indices. But that's another word that people often get not quite right, and the function snuck by all of us and was sprung onto the world by the name HasBaseIndicies. We feel particularly bad about that one, because this happened more-or-less on our watch.
In each case, the error was noted only after the name had gotten out into the wild, so it couldn't be fixed. It's a little like putting a phone number on a business card — you might want to change the number, but by the time you've distributed boxes of cards, lots of people have the old one and you're stuck with it.
A kind of inversion of the standards-by-mistake story occurred when competing browsers were being developed for the Web. Web-page designers can designate colors by using codes (for example, #00FFFF is cyan). But for convenience, you can also just use names for the most common colors. When one of the first browsers was being created, the creators borrowed an existing color-naming scheme in which the color name gray was spelled grey. This isn't a misspelling, of course; it's just that Americans prefer the spelling with -a-. Most browsers were configured to accept either grey or gray. Except one — for many versions, Internet Explorer stubbornly refused to recognize the term grey, recognizing only gray. When it was fed the -e- variation, Internet Explorer either ignored it or rendered the wrong color. This caused endless confusion among Web designers, who had to learn the hard way about Internet Explorer's fussy spelling preferences. (This was finally fixed in recent releases of Internet Explorer.)
It's interesting to contemplate whether these spelling mishaps will contribute toward legitimizing the alternative spellings. As I noted, many programmers are surprised that referer is a misspelling at all. In the future, maybe a programmer who is unsure about the spelling will search the Web and turn up as many instances of referer as referrer. At that point, can we really say which one is right?