My JavaScript book is out! Don't miss the opportunity to upgrade your beginner or average dev skills.

Monday, November 01, 2010

UX vs IP Based Language

I start being sick of this epic fail and many famous website do this ... I am Italian, I am living in Germany, but my OS as every software or device I have is in English ( and I don't know German yet ) !

The Problem

If you live in your country and you have software in your own language, you probably never spotted what I am talking about. Actually, what you have probably appreciated instead, is the fact if you write in your url bar www.google.com you'll find directly the one translated and relative to your country ... how cool is it?
My tiny winy problem is that if I write the same right now, I am redirected to google.de .... most likely in German with all settings in German as well, even the confirm button, no matter if I managed somehow to reach that point and changed the language ...

How Difficult Is It

Every single fucking browser sends an Accept-Language header with 99.9% of the time the current browser language or, in the worst case scenario, the Operating System one.
If it's not about the server, we have the same behavior on the client via navigator.language ...
In both cases I am sending a bloody en-us string that cannot surely be confused with de-de one, isn't it? But it does not matter, in 2010 and its growing globalization, these "clever" websites still rely on IP address to define the spoken language, but how wrong is this?

Language IS Context Dependent

Let's imagine we are simply traveling ... OK? Good, We have hot spots services in the airport or we are having a coffee in some local chain with wireless connection ... OK? Now we try to visit websites we use to check from home, from our country, and never with a single problem, cookies or not .... we are in the cloud, the one we would like to use everywhere but being behind some other IP address, the cloud does not recognize us anymore ... still cool, uh?
In few words, if we are simply surfing the web there is no reason in this world to trust the current provider for our spoken language.

Location And Laws Context

There are mainly and only two reasons our IP address should be considered, a map application unable to use the W3C Geolocation API, so we are more into a fallback situation, or country laws for all those services that may works differently accordingly with current country (e.g. YouTube)

Everything Else Is UX

If the website we use on daily basis does not recognize us instantly we may feel that something went terribly wrong, isn't it? And how many could freak out the moment even few links around a search field are in a completely extraneous language?
Moreover, if I decided to use English software, rather than italian, it means I made a choice and surely I cannot really complain if websites are always in English even if I am in italy or Germany ... it's the other way round: I expect this, and I am instantly confused the moment this does not happen.

The Failing Google Chrome Attempt

The ridiculous part of this story is an evident UX conflicts inside Google teams, the search engine and the translation one.

In my case, if I start Google Chrome and I go to google.com I am:
  1. redirected into google.de, it does not matter if I explicitly typed .com
  2. the whole search engine in in German
  3. a top bar lazily informs me that the page is in German, would you like to translate?
Oh ... Really??? So the browser understands I am based on English but the server of the same company decided I am German ... how cool is it?
The company that more cares of performances is doing a redirect, a lazy navigator.language analysis, in order to help me with the wrong choice made by the server ... and guess what? The translation team is not brilliant, is everything else that looks dumb!
It must be said that at least I have a Google in English link easy to spot ... but many other sites don't!

User Agent Myths

A user agent should follow W3C standards and AFAIK all do, more or less. It is not about the browser, the platform, it is simply about the only thing that I do believe is consistent across every platform: the language. Of course it's easy to hack a userAgent in order to show a different language ... but who the hell gonna do it for daily browsing? Even the IP could be hacked via userAgent, the one that sends it, isn't it? So why on earth people adopted such silly strategy to define the user language?

The Internet Cafe Context

If we are still thinking about edge cases ... believe me, these are truly rare. Even an internet cafe, most of the time populated by foreigners, could simply create accounts and most used languages set for each account. As example, we could have the user English, the user Deutche, the user Italiano, etc etc ... and the moment we login with this user the OS, and hopefully the software, will be presented in the same language. At that point, every website that will present content based on IP language could be easily labeled as dumb, because in this world were everybody travels and therms as mobile are used on daily basis by marketing, companies behind the same marketing do not get it: it's NOT about the IP!

14 comments:

tracker1 said...

I think it's hilarious myself. I moved into an apartment about a year and a half ago in Tempe, Arizona (USA).. the Google site came up in Spanish. Actually, Google wasn't the only offender, and to be honest it really ticked me off quite a bit. I only wish they'd just use the userAgent header, and/or the accepts language header that you mention. It's very asinine... Though in this area of the country, there's plenty of Spanish speakers that buy windows with English as the default, and keep the OS in English.

Anonymous said...

I agree with you... but I believe the issue is legal, in the case of Google. It is held to different laws based not on language but by country... The browser from google is not held to the same laws as the search engine, hence the contradictions...

Andrea Giammarchi said...

since we can change language later or click the English version, I don't think the language has nothing to do with the law ... the IP may do for results, as example.

Still, the whole UX is compromised the moment we travel and this is simply annoying.

Finally, google was the example we all know, but many others do the same, many famous others ... there must be a better solution!

Morgan 'ARR!' Allen said...

I have one even more silly. I am an American also living in Berlin, so I know the redirect to .de all to well, but last week I was in Budapest and now, even though I am back in Berlin I'm still being redirected to google.hu

Morgan 'ARR!' Allen said...

(and blogger tells me I need to wait for approval in German)

Lea Verou said...

I so much agree with you! It's actually relevant to me too right now: Since I came back from Poland (or during those days), Chrome insists on redirecting all my address bar searches to google.pl. Even though I have changed the relevant setting in Chrome's preferences! WTF

Anonymous said...

Facebook did this as well whe I was in Europe and Costa Rica last year

Beben Koben said...

I do not understand about javascript, but very interesting your blog my friends, if at any time I want to learn javascript deeper in here :D
blogger greet \m/

HB said...

I actually had this problem while using my city's free WiFi. Not only do I live in the US, but Google's Mountain View headquarters is literally less than 20 minutes from my home.

But somehow, whatever way the wifi was setup, when I went to google.com it would redirect me to another country. Go figure.

Anonymous said...

Append your Google URL with &hl=en and it will ensure the labels are in English... But that is just for google - I agree with all your points... folk think of the client device, but all too often, not the end user.

I hope the office move goes well ;O)

Matthias Willerich said...

I thought "what is he on about?" when I read this, because I'm regularly switching between google.co.uk (I live in London) and .de (I'm german), depending which language I search in (the search results differ). Then I tried it out, and indeed .com DOES redirect, and force-changes your language. Booo!
This is bad indeed, and the "legal" argument by one of the commentators doesn't stick; they could happily redirect to the local domain, and keep the language as is.
I guess you could log in, that'll keep this right, but the tracking might not be your cup of tea.

Anonymous said...

Davvero, come la progettazione grafica e la navigazione del sito, piacevole alla vista e buoni contenuti. altri siti sono semplicemente troppo traboccante aggiunge

fearphage said...

FYI to get around this, you can tell google to not country redirect you (NCR).

http://www.google.com/ncr

That works for most (if not all) Google properties.

Andrea Giammarchi said...

that was a basic example of how things can go wrong with IP based approach. I have much bigger story to tell, but I don't want to be suited ;-)