Today's bit of computer trivia

posted 07 July 2004

Computing (depending how you define the term) was invented mainly in English-speaking countries (although France, Germany and Hungary all have credible claims). The contenders for the construction of the "first modern computer" are England and the USA, and which actually came first depends on an even finer distinction in how you define a computer. The details of that debate are quite interesting, but irrelevant, since the result was the same: computers are English-speaking devices, right down to the core.

This created problems when computers spread over the entire world. Microsoft Windows performs the same function whether it is in London or in Bangladesh, but it is useless if its users cannot understand what it is saying. So programmers began having to translate programs from English to other languages. This turned out to be a huge pain, since programs have millions and millions of lines of code of which many tens of thousands can contain English, from the instructions in the settings menu down to every single little "OK" button (which is the "oui" button to a french user). And if your software is available in 50 languages, you have to do all that work 50 times. And many programs release updates, new versions or upgrades several times a year -- 3x50x10000 is hundreds of thousands of man-hours, spent just getting the same piece of software to do the same thing in a different language.

So programmers got together and sorted out a system that would simplify this process. Instead of the actual translation, they decided to invent a system which would allow you to build any program "translation-ready" so that later translation would be much easier. They called this process "internationalization" (although it took them a few tries to pronounce it).

Now, it's important to note that the people who made up this system were programmers, and not bureaucrats. Programmers are very methodical, logical and above all extremely lazy. If you're a good programmer, you want to convey the maximum amount of information in the minimum amount of time (my habitual verbosity indicates that I am not a naturally good programmer). So stuck in a committee, forced to discuss internationalization, they soon realised that the word "internationalization" was extremely long and unwieldy, even though it only conveyed a single concept. So they searched for a shortcut.

Some of the people on that committee worked for DEC, a major computer manufacturer at that time, or had in the past. Once upon a time at DEC, an employee named Jan Scherpenhuizen was given an email account of S12n by a system administrator, since his name was too long to be an account name. This ridiculous method of abbreviation spread like wildfire in the geeky confines of a computer company, and became convention, essentially because geeks find it amusing to give things obscure names.

Thus was the term "I18n" born: that's "internationalization" with the middle 18 letters replaced by the number 18. A pain to pronounce (eye-one-ate-en? eye-ate-een-en?), but a four-syllable saving over in-ter-nat-shun-al-eye-zay-shun and a full 16-keystroke saving -- and that's important, since you have to type it probably thousands of times. But most importantly, completely impenetrable to an outsider who doesn't know the history of the term.

Because geeks find it funny.

(Since then, this form of abbreviation, know as a "numeronym", has been extended to a variety of related terms: Localization (l10n), Europeanization (e13n), Japanization (j10n), and Globalization (g11n), as well as unrelated but similarly unwieldy words (related to database technology) like canonicalization (c14n) and normalization (n11n).)

tagged with
0 comment