2008-10-09

en > en

I wonder sometimes about the sanity of it - but of course I understand the mind-set that says that if we internationalize our software that we should support everything classified as a language. Essentially it becomes a political, or at the very least politic choice, though, to have an enUS version and enUK, enOZ, enSA, enMY, etc, etc... Taking this to its equitable conclusion results in a profusion of languages where every pidgin, dialect and creole is included. There are at least 10 versions of French that are spoken worldwide - even frCA is at least as different from frFR as enUS is from enUK.

Going to these lengths is perhaps laudable, and probably, in the end, worthwhile, if you are the world's largest software company. And I'm all for diversity of language. The more variation there is the more modes of expression there are. At home I often switch between en (Int) and fr (FR) depending on the subject of the conversation - a facility that I value enormously.

I've been looking at Facebook's recent initiative to produce an English (UK) version. Now Facebook may use American spellings, but the language it uses is largely international English - whether they mean to or not. And what is International English?

It is a subset of English that has a reduced vocabulary. In software, if your interface designer is disciplined, you can end up with an en(Int) version unintentionally, just because he tried to keep it simple.

Most of the "translations" from enUS to enUK in Facebook are not translations at all. A few good writers have improved the style and clarity of some of the onscreen text, and the result is more comprehensible to all English speakers, native or not, worldwide. (There are also a few pointless "corrections" by the grammar Nazis, and some varied spellings. Surprisingly little fighting over -ise -ize.)

It seems to me that a good designer should consider the political implications of his choice of language. I suspect however that in many cases the designer isn't considering it at all. He is either making the assumption that he will cause offense if he only uses Perugian Italian, Parisian French or NY Engligh - in which case he should damn well say so, or he is making the assumption that a Taiwanese won't be able to use software with an interface in ch(PRC) - which is quite untrue.

When you set the editing language in MSWord, you're doing something else altogether; MSWord tries to help you to write without error in all the languages + variations that you speak. It is hence a requirement that every language with a written tradition be represented in the editing and correction tools, but by no means is this necessary for the interface itself. Indeed, it would make me completely crazy if the tool bar and keyboard changed language everytime I change the editing language.

Selection of languages for the interface should be more than just pragmatic. It should meet user expectations. An interface that can be presented in simplified English, simplified Chinese, French, Italian, Russian, modern Spanish and Japanese (westernized or standard) will meet the expectations of, and be usable by, most of the human race - and most of them will be happier that you have piled your resources into making the software efficient and easy to use, than you could possibly have made them by giving them an interface in their particular regional variation of their particular language.

Indeed, the grammar Nazis can't possibly object if you tell them explicitly that you have used an "internationalized" version of their language. And the minorities that seek to gain political capital from complaints that their language has been marginalized? If you can't ignore them, as they deserve, then get the buggers to pay for a localized version; you answer should always be "our product can be translated into any language". Give them access to the language files. After all, you'll offend far more easily by making errors in arLE (okay, that one's a bit more obscure: Lebanese Arabic), than you would by doing just one version of Arabic (there is an ar(Int)), and letting users customize it to a local version if they need to.

Ok. This wasn't mean to be a lengthy rant. The message is pretty simple. Keep it translatable. Limit your standard package to languages spoken by four fifths of the world. It's not as if your interface is a novel by Thomas Hardy. If you have more than about 150 different words in your interface, YOU'RE DOING IT WRONG.

No comments: