Localization Operating System

Detect locale – manna from heaven or hellspawn?

It seems like a good idea, doesn’t it? Web 2.0 and all that, increasingly intelligent software taking the task of selecting your language when you visit a page.

Based on? Aye right, there’s a catch. Based on one of two things – the language of your browser or the preferred languages you can set in most browsers. Those of you who are normal end users have probably already spotted the problem. That’s all those of you (the majority) who went “I can do that?”. Yes, you can, but for the vast majority of people, what I shall call the “Install and Hope” group, that’s both news and several steps too technical. And before you tut at that degree of inability to tweak software, that probably includes your mum and dad, your aunts, uncles, grannies and gramfers. They’re not stupid people on the whole.

While actually the more intelligent choice because you can select from a relatively wide range of languages, this still limits you immensely. There are some 6,000 languages on the planet and even multilingual Firefox only offers maybe 200 or so in the language dropdown. And many of those are languages like Chilean Spanish, European Spanish, Argentine Spanish – what the codemasters call locales. So what are you supposed to do if you’re a speaker of one of those 5,800 NOT on the list?

But here’s the thing that drives me and many other speakers outside the club of the 25 biggest languages insane. Most sites these days take the lazy approach and just base it on the language of your browser (most websites), or worse, your operating system (Linux and most mobile phones). In the words of Julia Roberts “mistake, big mistake”. Why? Because there are far fewer browser localizations than languages. And even if there is a browser localization in your language, that doesn’t mean everyone is using it.

Let’s take your average family on the planet which is – believe it or not – bi- or multilingual. That usually means that between the parents and kids at least two languages are used. Sometimes even more. But not everyone usually speaks both languages but, and this is where it gets tricky, they will often share a computer. Say we have a bilingual English-Kurdish family with a Kurdish-speaking father and a wife and kids who only speak English. The default language on the computer will most likely be English because in most cases, you can’t install the same browser more than once and few offer you an easy way of switching the language. So the browser is in English. But for the sake of argument, say the father wants to blog in Kurdish using the Kurdish version of WordPress. He goes to the main page and looks for a list of localizations. Tough luck, there isn’t one, because relies on your browser language settings. So he downloads the English version even though there IS a Kurdish version, it’s just not obvious because you have to go to

It could be worse – they could be using Ubuntu. True, it’s become more user friendly but who designed that insane bit of forcing the locale? Let’s say Azo, the father, wants to install some other software only he will use in Kurdish. What are you supposed to do in Ubuntu? Right, you go to the Software Centre. Only problem is, someone again figured that tying the language of any software you download to the OS language is a bright idea. Not for those of us who aren’t monolingual. And no, suggesting that Azo goes to the address bar, types about:config, types matchOS and toggles to false and then selects ku in general.useragent.locale is NOT a solution.

This dance gets even more insane. Let’s say Azo would like to use the Kurdish version of a mobile browser on his phone at least, since he can’t get Kurdish WordPress. Unfortunately, he uses an Android phone. Meaning? Well, while there IS a localization in Kurdish, the language of his Android phone is English, so the phone assumes this person could only ever wish to use stuff in English and forces every installation to English. End of.

Proprietary or OpenSource, same difference, Linux or Android, Windows or Mac, language selection is getting more and more difficult these days in spite of a legion of volunteers who strive to localize stuff into their languages. For free, usually.

So the question is, why, if there are localizations available for stuff, do you guys make it SO hard to get them? Isn’t that like baking a beautiful cake and then hiding it in the basement, assuming that everyone knows that’s where you hide the cakes?

7 replies on “Detect locale – manna from heaven or hellspawn?”

Enjoyed your post; This is something I’ve been puzzling over for Cree, oddly enough. It’s very hard to get anything localized to a ‘funny’ language, much less one like Cree… A few of us have been hoping to get a variety of important software to have a Cree option, but it seems to be a dead end. The localization methods seem to be handed down from on-high…! 🙂 Oh well- back to typing Cree with all the squiggly lines under every word…

Is it possible you’ve only tried propriety software like Microsoft and Apple? I’d suggest you look into open source stuff, there are usually no prerequisites except time commitment and the ability to translate. Being able to understand developers talking helps but Firefox (easiest place for localization is here, LibreOffice (office suite, localizers join here and various others like it wouldn’t welcome you with open arms. Spellchecker is possible too for those applications.
In fact I’d go as far as saying that the hardest thing isn’t localizing the software but weaning people off what comes pre-installed on their machine. If you want some more pointers let me know.

Unfortunately, I think your last point there is dead-on. Weaning people off of their pre-installed stuff. If I go to all the trouble of localizing software, it would be nice if someone actually used it. If it’s Ubuntu (as good as Ubuntu is) or LibreOffice, I’m dubious I’ll get any takers.

But you’re right – I think it’s a good way to go. I’ll do some rooting and see what I get! I would have liked Facebook to be localized in Cree, too, since there are a TON of speakers on there, trying to type in Cree (same for Youtube), but those are megacorporations and they don’t generally even offer an e-mail address to contact…

Ah, there I can actually help you 🙂 Kevin Scannell (all hail Kevin!) has developed a script ( that overlays Facebook with your language, circumventing their silly localization project. It’s not the whole UI, just the most visible bits so if you have time to do 150 or so words, he’d be thrilled to add Cree.
I’d stay clear of operating systems, whichever OS it may be. People can be talked into experimenting with programs and apps but rarely with their OS. For one thing, ZERO support. As long as my OS is in English or a language like that, I can Google the error message.
In terms of typing in Cree I’d also talk to Kevin, he also did the great tool ( which adds diacritics automatically. Cree isn’t in the list but I’d ask him.
Try Firefox for starters – two reasons. You can get weekly stats on usage so you know what the uptake is and the impact of any advertising you do. But it’s a slow process. I got *very* excited today cause my report for Gaelic showed 107 daily active users, more than ever before. That’s against 60,000 speakers. But I’m working hard to promote it to schools and councils. As long as you are aware of these issue and work to counter them, I think it’s worthwhile.

Here is a cunning wheeze I devised a few years ago for webmasters who want to set up a bilingual website with the selection biased in favour of the minority language.

Say you want to set up a website with every page available in both Gaelic and English, and you want to do things in the officially approved way with the selection being determined by by the relative ordering of Gaelic and English in the language preferences in the user’s browser. Since, as you pointed out, ninety-something percent of Gaelic speakers do not even know that it is possible to change the prefered languages in their browser, this means that their browser will be set to prefer English with no mention at all of Gaelic and the website would serve up English to practically all users.

Here is how you can reverse the tables and put the burden on the English speakers to change their browser language settings if they want to always default to the English versions of pages. On an Apache webserver, simply put the following two lines into the website configuration file:

SetEnvIfNoCase Accept-Language .* prefer-language=gd
SetEnvIfNoCase Accept-Language \bgd\b !prefer-language

What these lines do is to set the preferred language to “gd” (Gaelic) in every request, except in the case where gd already features in the Accept-Language parameter. So a user _can_ arrange to default to English for every page if they want to, but only by going to their browser settings, adding Gaelic, and making sure that it is lower down in their preferences than English.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s