I met one-on-one with Google’s senior leadership in 2000 to talk about their internationalization efforts. This was very early in their trajectory, so I even sat down with Larry Page and chatted with him for half an hour.
A year or two later I’m in Tokyo and talk to a new Google product manager based there. I tell her it is insane that Google serves me Japanese pages on my English-configured PowerBook just because I am in Japan. It doesn’t matter that I read Japanese just fine… Making this determination purely based on my IP address is madness, I tell her.
Over two decades later, nothing has changed. Each year I spend several months abroad, and this is one of the most infuriating experiences I encounter. Google is the offender that frustrates me the most, but they are far from the only company to engage in this abhorrent practice. I am tempted to create an Internationalization Wall of Shame just to embarrass the companies that do this. (Not that I expect them to care.)
Why do they do this? My theory has always been that in any given country, there are far more native speakers with misconfigured computing environments than there are visitors and nomadic folks like me. So it’s merely a numbers game: I may be frustrated, but at least Google and other companies aren’t losing business when folks with misconfigured computers close the tab because they got a page served to them in, say, English instead of their native language.
I can’t say for certain whether this is the actual reason for this behavior. What I can say, however, is that I absolutely loathe this practice and actively avoid doing business with any company that uses geo-IP location to serve me pages specific to that locale. If this frustrates you as well, be sure to vote with your feet!
Better explanation: monolingual people thinks that computers will always be configured to the local language and any other setup is a "misconfiguration".
In real life a large number of corporations (and developers) have their computers configured with English as this is the main language of the coorporation and makes IT-support much easier. (we don't even need to talk about how badly botched many language translations are).
These users will still want Google to return results in their native language.
There is a much much larger number of users like this than travellers from USA.
One thing that bothers me a lot with US websites is that they always assume English language means 12-hour clock.
Apple has learned the above over time: it is much easier today to get a Mac running with English and 24-hour clocks.
"The local language" is already a problem. There are countries where there are multiple local/national languages! What does Google's homepage look like in Belgium?
> Mac running with English and 24-hour clocks
The UK locale (probably Ireland too) has provided a 24 hour clock in Windows for decades. Although thinking about it, little-endian dates (11 March, 11/03/2022) would probably annoy Americans as much as mixed-endian dates annoy me.
Am in Belgium. Google keeps serving me pages in Dutch. I don’t speak Dutch nor do the majority of people in my city / area. I speak French. And I don’t want results in French, I want results in English.
The trick is results in French are extremely bad quality, tech articles are dumbed down, tutorials in French lose nuance, and, well, good luck finding Hacker News in French. It was a revolution for me when I gained access to the English web, it’s the origin of the documents! I want results in English because the quality is higher in English!
>The trick is results in French are extremely bad quality
It depends. It is definitely the case for tech but not for everything. For philosophy, science, movie reviews, cooking, and of course anything related to French culture, there's a lot of high quality content.
Disclaimer: Choosing to reply here for "reasons" but there's lots of siblings I could've chosen.
Reading comments so far and the article I think we're mixing up many different use cases and choices.
If I set my browser to English, that means I want the interface language to definitely be English. Do no serve me the interface in Japanese just because I'm in Japan. I won't even be able to find the "Change language here" dropdown ...
Now search results are a different thing. If I type something into www.google.com while being on US soil with en-us as my language setting that is in French, isn't it obvious that I might primarily be served French language content and that is what I want too? While the interface of Google is still in English? Or vice versa? If I type an English language query into www.google.fr while fr-fr is my language setting, I expect worldwide results in English, while my interface is still in French. Sure, restaurant name search results I might want sorted differently based on location and that's a good thing overall, but leave my interface language alone!
This was one disillusionment of finally becoming fluent in a foreign language. I had kind of assumed all major languages would have similarly sized, disjoint bodies of content worth reading but English dominates everything, especially if the info is of any practical use, and only for particular cultural issues do we need to read in another language.
I totally prefer this date format too when I need to be clear and communicate internationally (which is most of the time).
Consider this though: It's not an inherently unambiguous and language agnostic format. It just so happens that there is no country that would write the above date as 2022-11-03. If there was, we'd have the same issue again.
it most importantly sorts properly when used at the front of a filename, and it's surprisingly easy to read; and in context I'm mostly looking at the month-date which can be picked off the end, "march 11" which is how we say dates in English anyway
time of day can be appended without messing with the collation (usually i put a space)
So I agree with your point that the way dates are said varies. But your example isn't very good. That's just the name of the holiday, and should not be used to infer anything else.
I understand the point entirely. I said I agree with it.
But at the same time, "Fourth of July" should not be used to infer anything about how Americans say dates. It doesn't help prove that both orders are used for dates.
In the real world, some people say day-month and some say month-day, and the holiday is called "Fourth of July". In a counterfactual world where everyone switched to month-day, the holiday would still be called "Fourth of July". So you can't use "Fourth of July" to demonstrate what people actually use for dates.
I'm not saying Americans say dates like that, I'm saying it's a reason they might consider that other people, or Americans once-upon-a-time, say dates like that.
i just looked up, the "American" confusion: we got our date order from the English long ago. Then the English changed their date order. That must have been most confusing
And month/day is not as confusing as day/month (widely used in Europe) since it doesn't correspond to how we say dates.
moving the year first then using the American MM/DD is the least confusing way to do it
Unfortunately the problem exists in both directions. I run my setup entirely in English and Google will still try to squeeze in the local non-english language.
Confusingly Google will also write some sentences half in english and half in the local language. E.g. "Google is also available in: <insert foreign language here>" (rather than the full sentence being in the foreign language.
It's the kind of attention to detail that I've become accustomed to from them
> E.g. "Google is also available in: <insert foreign language here>"
This specific one might be on purpose to avoid translating language names. If you land in page entirely in Chinese but you see the word "English" in Latin characters under a link, you can click it to escape. But if it's itself in Chinese you'll never find it. I do the same in applications, have a menu for languages but don't translate language names, if you change language by mistake you can always find your way back.
While I used this example, which one could explain as intentional for various reasons. There are myriad other examples where there are dual languages being interwoven across google properties. Including minutia in one language, but the body content in another.
Facebook/Meta's properties are the worst for this however and will intermingle languages frequently despite being an account-based service (literally ignoring the user's preferences in favour of IP-based guess work.)
Back to Google - Algorithmically there are likely straightforward reasons for why this is happening. Clearly the contents of the pages are composed from a mixture of sources, for reasons unknown these sources may not be able to detect or receive the localisation settings of the end user. Recent changes to privacy protections and cookie limitations may also be a contributor to these issues. Including the obvious: getting ads in the wrong language.
French native speaker here. UX consistency, shared Internet culture, habits from the early 90's and error messages I can actually find on the Web are the reasons why I always set my computing to the english language.
I'm trying to have English language but metric units, 24 hour clock and ISO dates... Seldom can I achieve that.
On the French-language mandatory corporate Windows laptop, Excel formulas are translated in French - so when searching for recipes on the web I have to translate them !
I enjoy sites such as Thomann.de which have separate settings for language, country and units of measurement.
I just have a custom locale for any UNIX-like systems I use. American English, UTF-8, 24-hour time, RFC-3339 dates, SI units, '.' decimal point, '_' thousands separator. I call it en_ENG, for the fictional land of Engineeristan.
That doesn't have `_` as the thousands separator. It uses ISO 8601 for date/times instead of RFC 3339 (so "2022-03-14T15:06:03 EDT" instead of "2022-03-14 15:06:03-04:00"), etc.
I just happen to want slightly different choices than it allows.
An explanation of all the valid fields can be found at [1]. Copy an existing locale, modify it to suit your needs. Don't forget to escape all characters as Unicode if you want it to support unicode. Compile & install as normal with localedef, add to `/var/lib/locales/supported.d`, run locale-gen, set the various `LC_` variables you want to use in `~/.profile` or `/etc/envionment` or whatever.
The problem with monolingual is the thought that there is One True Language.
It isn't so. I write half my emails in one email, the other half in another. Often emails will have sections in one language (e.g. quote from another email) and other sections in a different language.
Spelling tools must be able to detect language automatically to be of any value and be able to handle multiple languages within a single sentence!
I use LanguageTool [0] as an extension, it never has issues detecting if I’m currently writing in English or German. I sadly have yet to find a solution that works as well on my Android.
> These users will still want Google to return results in their native language.
Says who? This is a baseless assumption.
Just listen to the settings that specify what language the user wants. That's what it's for. And the browser should ask the OS or the user for their language preference. And if IT-support wants one language for the interface in order to facilitate support, they can still set the other language for browser preference.
Just ignoring all settings and making blind assumptions will guarantee you will be wrong many times.
> Just listen to the settings that specify what language the user wants. That's what it's for.
In case you haven't noticed: Users lie. All the time. Every day.
If Google found that "just listening to the settings in the HTTP request header" helped more users than it hurt, Google would have switched to using it a long time ago. The web is a messy place - sometimes you can't even trust a website to report its own encoding correctly.
The browser setting that every browser sends to any server it requests data from. Usually this defaults to the system language, but you can add more languages with a priority. Mine is English (prio 1), German (prio 2), yet I for some reason get tons of spanish content as I am going back and fourth between countries these days just based on Geolocation.
I think you're indirectly agreeing with the parent (and great-grandparent); both are saying "Google (and others) shouldn't just use the IP; use the browser's language setting, and if that hasn't been set, the OS setting", which you also seem to be agreeing with.
The only one differing is the grandparent, which was asserting first that users might think showing anything other than the local language is an error, and then asserting that users want their native language, and so I'm not really certain what they're asserting since those two are not always the same (maybe that the first is the reason Google does it, the second is asserting the preferred behavior, which is nearly agreement, in that the latter is doable via OS or browser preferences).
Google has literally billions of users. There are people who are worse at using computers than anyone you've ever met.
I'm as irritated as anyone when something doesn't cater to "power users". But if we're trying to understand the reason behind the decision instead of just venting, then it's instructive to consider just how computer-illiterate the non-power-user is for a product as massive as Google Search, and how annoying characteristics may be a consequence of trying to satisfy both you and them.
This isn't about power users. This will affect anyone who finds themselves in a country with a different language. Migrants, expats, refugees, people on vacation, people living in a country with multiple official languages; there are a lot of people for whom Google's way of handling this will give bad results. And it gives bad results in a way the user can't fix. If Google listened to the language settings, the user would have some control over it.
At least for google.com, you can use google.com/ncr to get it[1] in English (just tested in incognito mode from a non-English location).
[1] it = the front page. No guarantees that it'll work for other parts or other Google sites like Google Maps[2]. I remember noticing years ago that even with the /ncr, when the front page had a doodle, mousing over it still showed the tooltip in the local language. Billions of dollars, and can't even program a website.
[2] Yeah it still gives me my local currency for hotels in Google Maps. I live in country A, I was visiting country B, and I needed to find a hotel in my home country A. I was logged in. Google knows my address and that my account is tied to Country A (because... Play Store region locking for content, blah blah), but it still showed me the hotel prices for the country I live in and was looking for hotels in, in the foreign currency of the place I was currently sitting at. Fuck you very much, Google!
That's okay, but when I go out of my way to actively set the language in a service's settings, shouldn't that be honored over an assumed local-by-default? Because that's what I do with Google (individually on Search and YouTube), and it somehow forgets it quite frequently.
But Google is a bit unusual in that they both produce a very popular browser and very popular sites. Even if we suppose they know it's the case internally that many people have their browsers set to English but nevertheless want results in their local language ... they're also the ones producing a browser which allows one to set the preferred language which they then disregard.
> "The local language" is already a problem. There are countries where there are multiple local/national languages!
I have this issue with Microsoft. The national language in my country is English. However, Microsoft's store defaults to a local language that I don't speak every single time. My IP is also not from a part of the country that speaks that language either.
These users will still want Google to return results in their native language.
There are several layers available to Google though -
- They could use the system language setting
- They could use the browser's language setting
- They could use the user's Google account setting if the user is logged in
Corporations could set the system language, or the browser language, and it could still be overridden by the user in their Google account if they wanted to do that. Instead though, Google chooses to geolocate the user's IP address and use that which works for no one.
But they already have a solution for this. They have a domain with the local country TLD for people who want that language. Why do they keep fucking with people accessing the english domain?
They should give people the option at the top, and repeat it as necessary. They shouldn't just assume.
That's the most annoying thing. When I travel, I still want to see stuff in imperial units, and Google just switches to Metric and stays stuck that way.
I worked at Google in 2000, and I found this annoying too, so I asked about it. The official reason was that a lot of browsers defaulted to en-US, so Google effectively treats an Accept-Language of en-US as a no-op, and then it falls through to location-based. (I don't agree with this rationale, and said as much, but there you have it.)
Note that other values for Accept-Language are not ignored. I haven't tried it myself, but I've heard some people say that setting their language to en-GB or en-CA works well.
You can also use &hl=en-US, which always takes precedence.
One sad thing is localization for Canada is kind of broken for a lot of platforms it seems? For a lot of people that I help having their locale has Canada seems to usually base it off of United Kingdom stuff including setting paper size as A4(!)
Which… I wish we used but unfortunately we don’t - we use the US paper system. this causes problems with stricter printers and printing and also just manufacturing stuff like PDFs
Trying to guess the user's language is ok as long as the user has some way to override your guess.
DDG does the same, and adds a switcher so you can change between your local language and English. That's great, because depending on the search you want, it may be better done on either language.
The Microsoft site uses your language header on their .Net documentation. That is very bad because no matter what your browser says you prefer, the only document with any reasonable quality is the English one. There is a language switcher that takes some 20 seconds to use (hurrah, javascript!) and they don't bother to save for your next access. That makes the site barely usable instead of completely useless.
What I don't get is, with the amount of information Google makes sure to collect about me, how does it not know that I prefer results not on my main language and verbatim search terms? That is even after I tell them that on their settings.
> DDG does the same, and adds a switcher so you can change between your local language and English. That's great, because depending on the search you want, it may be better done on either language.
DDG also has local and global search that you can switch, without switching the language of the site (so if I do a search with !ddgde I get German results but the DDG interface is still in English). Kagi does the same thing with !reg (for regional)
> My theory has always been that in any given country, there are far more native speakers with misconfigured computing environments than there are visitors and nomadic folks like me.
But then why doesn't Google just make it easier to set that setting? Honestly, when I'm in another country, I don't get too upset that Google results are in another language, I just get upset that I can't seem to find a simple way to change it.
Even then I'm probably giving Google too much of a pass, because they know everything about me. This happens even when I'm logged into Chrome. If they're able to target hyper-personalized ads to me, surely they know I'm an English speaker even when I'm in Mexico.
Google's answer to this problem is, "Just log in! Then we will always know what language you prefer." So Google doesn't make it easier to change that setting because they want you to be logged in all the time so they can track you better.
I am a monolingual English speaker. I visited Iceland, and as happens, Google started serving UIs in Icelandic even while I was logged in.
What was interesting was this continued for weeks after returning to my home country. There was no setting I could find to go back to English; I got good at the specific Icelandic keywords I needed to navigate the UI. Then without any ceremony, things suddenly reverted back to English.
Back in the mid-2000s, I remember there being 3 different language settings in your Google account, the one on the security page completely ignoring whatever language settings you had and always using geo-ip instead. And I couldn’t even figure out why there were 3 different settings for language.
I had a similar experience with (enterprise paid) Outlook365 Webmail (but in Italian, which I do not read). It persisted for several days and then went away before I bothered to chase it down.
It doesn't always work. When I'm in Spain, with my Google account configured to use English, Youtube search returns videos in Spanish (even though the Youtube interface is displayed in English).
It's a mistake a lot of companies make. They are so proud of their ability to lookup a country from an ip address that they forget that there are hundreds of millions of migrants living on this planet who probably speak something else. Not to mention tourists, business travelers, etc. I'm a non German living in Germany, I have to deal with this all the time. It's a combination of corporate stupidity, rookie & clueless product management, and just indifference. It's wrong every time. No buts. No ifs. No exceptions.
Use browser and OS settings, always. Anything else is a mistake that will cost you users and business.
And they're wrong. I'm in Romania, but I use everything in English. Google is mostly in English, but sometimes decides to switch back to Romanian. Pretty decent , right? Until it decides to switch to Hungarian or German for whatever reason, two languages I have nothing do to with.
Having been involving in some internal projects and done the data analysis (not in Search, other areas), your guess is correct - far more people get (clearly) wrong results if you serve what the browser is asking for due to mis configuration. It’s easy to tell due to differences in various conversion metrics and huge increases in clicks to language change buttons.
It drove me crazy too before I saw the data. Geo-IP, while not awesome for exactly the scenario you are describing, is more predictable since it gives a set of baseline language/settings that are ‘right’ based on norms in the area, and people know how to navigate out of generally if they’re not the ‘baseline’ user there. (An English speaker in Japan pretty quickly needs to know how to switch languages or learn Japanese or they aren’t going to be able to even navigate the subway/buy tickets for instance!)
Many of the browser based settings get people stuck, especially since most large websites do the same geoip thing now.
It does make it awkward for folks not doing ‘the norm’ in their area, or who have an IP improperly categorized, but statistically they aren’t as common and they figure out how to handle it usually.
They have randomly served me the page in Russian, Turkish, Spanish, Portugese, Thai, German and Romanian.
The only good thing is that the menu to change back to english is less hidden nowdays.
Yet to see it in my native Finnish.
And all these without a VPN and from a domestic consumer ISP connection.
I thought Aliexpress was just trying to subtly say "FU, we're the new dominant culture now" to western Europeans by randomly switching to Chinese like 25% of the time...
Guess they just have one of the buggiest locale detections in the world :)))
EDIT+: ...or maybe too many Chinese users leave their proxy/VPN on when using their site too
Aliexpress also doesn’t allow me to use my normal email, I think they have a whitelist of known email provider domains or something like that. It’s a pretty atrocious website all around.
This IP based personalisation is such a pain especially if you work remotely and need to use VPN to connect to company network that happens to be based in different country. Worst thing is that Google knows very well who am I (due to me being logged in to GMail), knows what language I use, but still serves me completely wrong results only because my IP is suddenly from different country.
The ad market for lang=x, location=y must be abysmally small, even for tourist destinations. When you pretend that you didn't notice that the user is not a local you can still bill the impression and most importantly the occasional accidental click as a "mission accomplished".
The fraction of site visitors who are tourists may be low, but I expect it to be a segment with relatively more money that also is in the mood to spend on certain things. Looks like an audience google can charge more for.
I wrote a script for ViolentMonkey to force "hl=en" to appear in the query string for all google services which has been the most reliable way for me to overcome the problem.
It doesn't work for some services though but aside from signing in to google there's nothing else I can do.
I suspect they'll shut that down at some point too.
The VPN exit point for the big tech company I work in Europe for seems to be in Poland for whatever reason. I had to switch to duckduckgo to not be served search results in Polish all the time.
I don't even care that much about the IP vs System Language part of it tbh, what REALLY pisses me off is that despite having configured my Google Account to only show me english results, it will serve me Portuguese search results just because I live in Brazil.
Can I add a category for your wall of shame? Services that couple language and location, so that even though they have done the work of having an English localization, it's not available in my location.
Financial services and airlines are the worst offenders. SAS, Degiro, Amazon off the top of my head all do this.
Degiro has the added bonus of totally breaking under Google Translate so I went to the trouble of using a browser extension to rewrite the request for their localisation strings file to fetch the English version. I'm sure there are some legal disclaimers that are missing here and there but it works fine.
I have faced the problem in steroids in India, where there are 22 scheduled languages. While I can read 3 local languages, one cannot be expected to know every single language in the general area. Keeping my computers in English doesn't help, changing the languages to the one that I can actually read doesn't help. It is sad that Google has harvested enough data about me to make a highly accurate profile of mine but can't be arsed to make usage of their products a little convenient for me by just respecting my language settings.
Browser install wizards already configure the default chosen language to the OS language, which should already be the preferred language, so I'd be very surprised if that was the reason they never bothered to fix this behaviour.
My theory is that yes, they don't lose business because of this so why fix it, but mostly because the most valuable country-markets in the world tend to be monolingual, and the US is the most profitable of them all. And everyone uses Google despite of this because well, what else?
> My theory has always been that in any given country, there are far more native speakers with misconfigured computing environments than there are visitors and nomadic folks like me. So it’s merely a numbers game: I may be frustrated, but at least Google and other companies aren’t losing business when folks with misconfigured computers close the tab because they got a page served to them in, say, English instead of their native language.
If you're right and they're following a numbers-game, Google's reasoning could only make the tiniest bit of sense if they were a disruptive minor player facing stiff competition. As it stands though, however frustrated a native speaker with a misconfigured browser may become, they're not going to flock to an alternative service. Plus, I would argue that a user that is not technically competent enough to change their own browser's language preference is the user least likely to even know where to look for alternatives to Google's services.
This is all the worst considering that a user whose browser is configured for the wrong language only needs to change their settings once. However, a user who happens to physically be in the wrong place for their language does not have the luxury of fixing the problem, short of using a VPN or travelling to a location that Google has decided speaks their language.
Well, try living in a country with two or more official languages. What you get is basically a random language. Anyone in those places suffers from such bad design choices.
> Google is the most prominent offender. If I’m signed in to my browser profile in Chrome, the search engine is served in English. No problem. The moment I try to access it from incognito, or Firefox, however, I get the Spanish language version of Google.
What if it's a dark pattern to have more people signed in?
I just hate that google makes me more ignorant that I want to be. I speak multiple languages. Nothing fancy, just related ones. I want google to search in all the languages I use and know, and not arbitrarily filter my internet into a location-specific bubble.
Businesses usually put out their SEA ads in only the local language. All the people who have their device language set to one different from the current country's language won't see those ads. I could see that being a reason.
In general I totally agree with your sentiment. As you seem quite knowledgeable in the subject I want to nitpick your choice of words in your closing statement.
> any company that uses geo-IP location to serve me pages specific to that locale
A company should serve you content based on your geographic location. That's exactly what "localization" is for. E.g. the content should be adapted to local regulations and law whenever necessary and it makes total sense to do that based on the visitors physical location and geo-IP is often the best approximator you have for that. What should be adapted to user's choice is language.
I firmly disagree with all of the above. If a site absolutely needs to know where I am in that moment, they can ask me, and I will decide where I am for the purposes of that particular site.
To pick one of a myriad of examples, I often buy software, books, etc. via the web. I don't need sites to assume I want to pay in Euro just because my IP address in that moment happens to be associated with a European IP address block. Paying with my home currency is often much easier. I should not be forced to use a VPN just to avoid this silliness.
I understand where you are coming from, but using IP addresses to determine what "locale" to use is simply not a good practice, and not just for language determination.
Well, your example will be in many cases against the law. Netflix isn't allowed to let me choose which countries catalogue I want to watch. A website isn't allowed to choose which VAT to charge and who they owe it to. In an Arabic country you might not be allowed to serve images of women in swimwear (or other revealing images). There are many more examples like that and the applicable law is usually based on your physical location at that point in time (i.e. the jurisdiction you are in). While I agree IP isn't the best choice, it is often the best available and letting the user just choose these things is in many instances simply illegal.
> Netflix isn't allowed to let me choose which countries catalogue I want to watch.
That has nothing to with the choice of language. Unless you're using some antique HTTP server that doesn't support it, use Accept-Language.
If you have reasons for filtering content based on geographic location, and you absolutely can't trust the user to tell you, perhaps you shouldn't be serving content over HTTP; the IP address is a poor proxy for geographic location. It's perfectly posible to buy an IP block in one country, and have it routed to another.
> In an Arabic country you might not be allowed to serve images of women in swimwear (or other revealing images).
If you're running your HTTP server in a Moslem[0] country, perhaps you shouldn't be serving those images to anyone. But if not, then it's your user's responsibility to comply with local law.
If the diversity of content that the internet brings is unacceptable to some nation, they can either try to do without the internet (good luck with that!), or try some kind of filtering regime like the Chinese have set up.
> the applicable law is usually based on your physical location at that point in time
"Your", i.e. the site user's location. But if you're geared-up to charge VAT in the first place, then you're able to handle things like delivery addresses in EU countries. At any rate, if your site visitor fails to pay VAT on purchases, it's the user that has committed VAT fraud, not the server operator. So operators should simply ask users where they are, for those purposes.
[0] Not all Moslems are Arabs, and not all Arabs are Moslems.
That is exactly my point. Localization isn't about choice of language and thus the choice of words of GP was wrong. He was talking about language, translation or internationalization. Localization is about adapting your website to a different local target market. The whole premise is of course that the company wants to do business in that area and then they have to follow the local law.
My comment was a response to the GP stating he wants it to be the users choice to set their location, but a company doing business in different countries can't just allow the user to choose with which entity it wants to interact through their website (Netflix being a prime example).
I explicitly said Arabic and "might" as I only know it's a problem in some countries in that geographic region, which is probably due to religious reasons, but I explicitly didn't want to bind it to religion. The biggest Muslim country is afaik Indonesia and they are not nearly as strict in these regards except for maybe the Aceh region.
You know exactly how to get to Google in English though, don't you? A new person picking up a misconfigured laptop seems much more likely to get lost than a temporary visitor to another country.
Google is built entirely upon the idea that they know their users and can therefore serve effective advertisements to them. The idea that they don't know what language their user wants seems absurd.
That's not the point. People should not be forced to switch from one language to another, multiple times, for every site they visit, when in a country that speaks a different language than the one for which their computer is configured.
You shouldn't have to change this setting multiple times when you're in a country that speaks (well, writes, really) a different language than your computer is configured for. You would like the web to respect your configuration.
On the otherhand, the general public shouldn't have to change this setting multiple times when they're in a country that writes a different language than their computers are configured for. They would like the web to respect their location. Even though they imported a computer configured for English and don't know how to (or don't want to) configure the language options for the whole computer or the browser.
If language settings were easily and often set, they'd be respected more; but if there's a good chance people are more likely to want a local language than what the computer thinks they want, then ignoring the preferences is the right thing for most users. Even if it's infuriating for those it missed. When I had the fortune of working on multi-language sites, I would try to have each site have their own urls, but some places insisted on one url, multiple languages. Trying to make a reasonable initial language decision and then a language picker with a cookie was the best I could do.
I think this is the answer ('misconfigured' local machines). For mobile phones at least, my understanding is that many bilingual people will set their phone up as American English because they believe the phone experience will be better, but then search primarily in their native language (like Hindi for example). Having location trump the language settings here makes more sense- however it should be configurable for logged in users. If it's not that's madness.
Google and other internationalisation efforts are absolutely a mess in India. India has many states based on languages - 22 listed languages - essentially each state has its own language and its own script, except in the Hindi belt.
Its not fun to be a North Indian to work in the South or vice versa- you may often be served a page in a script you cannot decipher fast enough or read at all.
Indeed, I once read a story that said there are a lot of misconfigured computers specifically in Japan, so that's why they ignore `Accept-Language` if it's set to English. But yes, this is incredibly frustrating for power users like me who are fluent in English and prefer not to deal with half-baked translations.
I mean, what's actually stupid here is that there isn't any way to configure this properly. It's wild that the default behavior is the only behavior. I'm not even sure I believe it.
The article talks about Microsoft, and boy, it's even more terrible in some respects: for example, language of some Office tools like Excel is bound to the organization!
I worked for a French company, and I was forced to use web Excel in French, including keyboard shortcuts being FR-specific ("ctrl-g" for "bold" - "grossir").
I had my language set to English everywhere in browser, OS, MS profile, Office profile etc., not important.
(FWIW native Windows Excel didn't have this issue, so I sticked with native Excel).
---
Re: location based on geoloc: I remember some HN user from Switzerland saying that IIRC either his IP is being moved around in geoIP databases between Swiss regions, or getting slightly distinct IP each time; as a result, he randomly gets all kinds of websites in French, and sometimes in German. Imagine this.
Just nitpicking, but "g" stands for "gras", a literal translation of "bold" in the context of typography.
> I remember some HN user from Switzerland saying that IIRC either his IP is being moved around in geoIP databases between Swiss regions
And that's why assigning users to specific services/servers/translations depending on IP is the worst kind of evil. Please let us choose the language consciously in a menu, or respect our browser settings: whatever our shit ISPs are doing behind the scenes should not impact our browsing, and no, IP addresses don't have a "country" and the simple fact that you need to use 3rd party databases (geoIP etc) is proof of that and just how stupid the whole concept is.
But, but, IP ranges have a “country” field in the RIPE database!
[Just pointing out it’s a mostly-right (aka subtly-wrong) solution that seems like a really good and straightforward idea at first (sufficiently ignorant) glance.]
Google sheets also does this and even uses regional formatting standards. I can't copy values between programs because some are using ',' for decimals and some are using '.' its VERY annoying
Regarding Excel: Watch out with multi language setups!
I was working with an English iPhone, an English Windows PC and a Swiss German Mac on an Excel file stored on One Drive. Editing sometimes in Excel and sometimes in Excel Online.
Result: Broken data due to SUM/SUMME/etc formulas, broken phone number recognition and (worst) broken dates.
In some European locales Excel switches from importing/exporting Comma Separated Values to Semicolon Separated Values with comma acting as the decimal point.
For me the worst is that these settings sometimes reset after background updates... I don't know how many times I've tried to do a simple aggregation or something in Excel and was flustered by why it didn't work, only to finally figure out that my skripting language was set to german instead of English... Yes, the actual commands are also language specific.
Swiss German here. Je suis bilingue. My OS is set to English with a Swiss German keyboard layout. This works fine everywhere.
Except: The Microsoft Store app just keeps on running in French with English content. No German to be found. It looks damn silly.
I think this explains why my old computer was so confused about languages. The windows apps were in Finnish, system settings etc. were in English. Then some parts of Google stuff were in Turkish, some in Finnish, and some others were in English. Every now and then some random app would appear and surprise me in Turkish. It was truly impossible to tell what language would appear after each click.
It was originally running windows 7 with English as the system language. Some software were installed while I was in Turkey, some (including windows 10 upgrade) were installed after I moved to Finland. Now I’m learning that my computer couldn’t handle this gracefully :)
Hey, I had the same issue and variations of it (french category titles, german content and english menus). Also Swiss German with English setup. I actually managed to solve it with some unintuitive language settings.
// Edit:
Okay so the issue can be resolved as follows (Windows 10):
Windows Settings -> Time & Language -> Language -> Preferred Languages -> Order it so that "English (United States)" is at the top
I previsouly had "English (Switzerland)" at the top. This order influences the "Apps & websites" setting at the top there.
With "English (Switzerland)" my section headings in the Store were French, e.g. "Films et TV" but with "English (United States)" at the top I get "Movies & TV". Of course the section headings, callouts, etc. otherwise are still a mixture of your MS Store region (German in my case) and the Windows display language (English in my case).
Why "English (Switzerland)" would result in French... I don't know.
> I remember some HN user from Switzerland saying that IIRC either his IP is being moved around in geoIP databases between Swiss regions, or getting slightly distinct IP each time; as a result, he randomly gets all kinds of websites in French, and sometimes in German. Imagine this.
Sometimes my IP resolves close enough to the Röstigraben[^1] that I will get sites in German despite having my browser set to English (GB) and OS set to French.
> Re: location based on geoloc: I remember some HN user from Switzerland saying that IIRC either his IP is being moved around in geoIP databases between Swiss regions, or getting slightly distinct IP each time; as a result, he randomly gets all kinds of websites in French, and sometimes in German. Imagine this.
Yep that’s a super fun one in all multilingual or small countries (where you might be geoloc’d in a separate linguistic community, or a country with a rather different culture).
> language of some Office tools like Excel is bound to the organization!
That doesn't seem to always be the case.
I work in France, all my IPs are identified as being from France, the company is purely French and doesn't use English at all, yet all my Office applications are in English. I'm using Firefox on Linux, in English.
The only one exception is Teams, because for some reason spelling is tied to the UI interface, so I chose for it to be in French, but the default was for it to be in English.
This is very annoying for me too! I am North American, but work for a European company, and my Windows and Office locale settings are all screwed up, and consistency reset themselves whenever I try to fix it.
I am Swiss German and living in Switzerland (German speaking part) and I had the weirdest issue for a couple of years: Swiss, the airline, always gave me french boarding passes. But all my settings were either set to English or German. The bizarre part was that if I booked for multiple people they would all get english ones except for me. Similar things sometimes happen for other services. Sometimes Switzerland means French for some services and all my settings on any level do not help.
It's so annoying. There is an option to change the language, however I have to change it every time I search for something, because the language doesn't get saved
And in Office there is even worse to be found: Depending on that locale, that it chooses despite browser settings, you also get different behavior, when trying to open CSVs with literally a _comma_ separator, because Excel thinks, that it must interpret that as a character for making numbers more readable or other shenanigans.
In Germanic countries, it’s common to write numbers like 1.234,56 instead of the anglo standard of 1,234.56. Not just on paper, but also digitally. So a value in excel or a CSV is now 1234,56 instead of 1234.56. As result, CSV needs to use ; instead of , as separator
Which is why TSV exists, because the tab character is universal.
I don't really care about what kind of punctuation Germanic countries are using, which I am not using, avoiding ambiguity in the first place.
My software, including my browser, and my operating system is usually set to English, and I expect spreadsheet (data!) applications to not interpret whatever they want (based on IP address or location of companies or whatever), but actually interpret according to a standard. It is ridiculous for a spreadsheet application reading CSV (C! as in Comma!) to interpret the comma as a visual number decoration, instead of according to format, as a separator of cells.
The CSV "standard" is from 2005. Using ; as separator was common in germanic countries for decades before the standard was even written (and CSV was commonly understood as character separated values there).
You can’t easily redefine an existing standard just because you don’t like what everyone else has been doing for the past few decades.
As said, use TSV, which has been standardized for much longer, if you want compatibility.
I built an iOS app once for a Dutch audience. We used the device's language as the app's language, because that makes sense, right? It's the same with the preferred language in a browser, right?
Wrong; we got complaints from users that their app was in English instead of Dutch. Even though their device was set to English or another unsupported language.
We begrudgingly added an app specific language preference. I repeated this later on for a package shipping webapp where on the login screen (and elsewhere iirc?) you can select a language; it defaults to your browser's Accept-Language header, but allows the user to override it.
Lesson learned; Accept-Language is fine for the initial language, and if that header is not to be trusted, maybe IP / geolocation based. But always offer an easy way to set the language; you may be dealing with someone who doesn't live in the country of origin on a device / browser that isn't theirs.
Also remember that location, locale and language are three different concepts entirely.
> It’s not the case for a very large portion of people around the globe.
Yep, even people who speak one language might put their phone or browser into another language for learning (immersion) purposes but need your important (e.g. banking) application to be in their native language regardless.
Yepp, just look at other responses here in this thread. People often assume that there is a system language that is used in the browser; that is only partly true, browser settings allow to specify multiple languages with given priority. It is just usually the default system language, until you configure it. The browser might not even use the system language in that setting at all if you configure otherwise.
And then there's the technical audience: I use all my devices in English, as usually the translations are subpar. On the other hand, I expect the local apps (ie, banking, some e-gov app, your package shipping example, etc) to be in my native language, as usually, the translations are even worse due to the developer's budget allocated to localization. Conversely, when I'm travelling and need to use some local app (airline, rideshare, taxi, etc) I hope that it is able to at least have some English translation.
Yeah, please offer the option to set the language to the user.
That's exactly my approach as well. My devices are usually in English, as it's the "lingua franca" of the OS and the internet. For non country-specific applications, it's much harder to search for, well, any issue if your OS/browser/IDE/complex application is not in English.
On the other hand, I want my local apps to use the local language, as they were developed with the native language in mind first for a use case that makes sense with that specific locale in mind, and it just doesn't make sense to be reading an English translation of something that you're used to see expressed in your local language. An English translation in that case is usually not only subpar but confusing if you're also fluent in the local language.
My ideal would be to somehow state that, say, "I speak English and German. My preference is to have content displayed in what you consider the "native" language of your application if it's on that list, otherwise my preference is English, then German."
In practice, no one would bother setting this up (as we see in the case of Accept-Language) and no one would bother implementing this correctly. The next best thing is just an application/website specific language override, which is easily explainable to any user.
All my devices are set to English. But my bank’s app is in Polish (using the app-specific override), partly because their English translation is mediocre, but also because I’d rather not do something dumb with my money due to a mistranslation/misunderstanding/different interpretation. Same goes for other local experiences. eg. takeway.com — the restaurant menus would likely be in Polish anyway (though I can see some translated ones as well).
I'm in a similar boat as you, Switzerland is multi language (German, French and Italian) and quite a few users (including myself) use English as system language.
Luckily by now you can change the language of iOS applications in the settings app. Though guess what... no one knows or finds that setting.
So yes, it's best to let the user decide just as you write.
It's frustrating that again and again I run into the same sort of root issue. There exists UI to configure something but it's either hard to find, hard to change, people want to leave that setting as-is but still want your webpage/app to behave differently, or people don't even know about it. What this leads to having to wrap "native"/"system" UI for almost any option that decent number of users might want.
Dark mode is another good example of this. A lot of app developers weren't able to just respect the system setting, instead they had to add a toggle/select to their options so users could pick "Follow system", "Always Light", or "Always Dark". Same thing with language and you never please everyone. If you add a website/app setting to change language there will be some number of users who complain that your app isn't following system settings (even if you set your own internal setting initially to match the system). You can normally satisfy most people with a "Follow System" or "Hardcode to X value" but it always feels a little gross to add yet another level of settings. In the same way you will almost never get a native Push Notification (or other permission) dialog in an app, first they pop their custom dialog and only if you say "Yes"/"Enable" will they pop the system one. I understand why and I've implemented this multiple times but it feels like there has to be a better middle ground between "You can only show the permission dialog once" and "You can spam it over and over indefinitely", I always hate having to create the "It looks like you've disabled this notification, here is how you can turn it on in your device settings"-screen.
Did you suggest they change their device settings? Yours was probably the right approach, I’m just curious whether we have actual data to support that people prefer this split configuration, and aren’t just suffering under bad defaults.
I live in the French speaking part of Belgium and have configured all my devices in English for the past 15+ years.
Apparently Google consider that if you are geo IP located in Belgium with your devices in English, you _have to be_ a Dutch speaker. While I would agree that French speaking Belgians are in majority using French UIs, there are exceptions. Please respect my browser settings!
The solution? I have to put French in my browser accepted languages (not necessarily first) and then Google understand I'm not a Dutch speaker and will stick to English.
For me it's often the other way around... system language is English but where possible (e.g. browser) I indicate Dutch/Flemish can also be used. Still, many websites seem to think that they should default to their French version despite my settings and even geo IP putting me in the non-French part...
I wish they would stop guessing and just listen to the hints...
I live in France, speak French, but work with English as my primary language.
So, I had to make the same settings change, otherwise google would keep putting French searches before English ones (despite the fact that I searched with English keywords).
I don't remember how I found this, but it might something along the lines of "I'm really annoyed today, let's fix this NOW". When you speak 2 languages or more, and they don't match with your location, Google, Microsoft, and most other big tech companies go completely nuts. So, you get used to fiddling with languages settings.
I have no idea how we got there, but my guess is that most Google engineers are either : completely ignorant of internationalization issues, don't care, or don't speak more than one language.
PS: Speech recognition, autocorrect, and mobile keyboards : Same problem.
This is why I think Google assistant is absolutely useless. Try to call someone who has a name in X language on a device that is set to English. You just can't. I love Big tech circle jerk about diversity, that somehow stops at skincolor, gender and sexual identity. You happens to bilingual? Sorry our cutting edge AI can't handle that.
Google all I want is a command for assistant, for example "OK Google, Call *in german/dutch/French/etc* <after this command everything will be interpreted on the given language, for the rest of the voice input>. See, it's not that hard.
> Google all I want is a command for assistant, for example "OK Google, Call in german/dutch/French/etc <after this command everything will be interpreted on the given language, for the rest of the voice input>. See, it's not that hard.
I had the exact same idea, it seems Google really lack good product design.
> I have no idea how we got there, but my guess is that most Google engineers are either : completely ignorant of internationalization issues, don't care, or don't speak more than one language.
Funny, if anything probably 80%+ of the eng folks in Europe for big tech speak more than one language (everyone who's not from UK or Ireland).
I think they discovered the trick. Default headers might be ignored, but anything non default (e.g. en-gb, two languages, etc.) is assumed to be correct.
My vote goes to the “Org Too Big, Nobody Cares” explanation.
Or, perhaps, just the blissful America-centric ignorance about how there are regions in the world with multiple official languages.
Haven't checked this recently, but a while ago Google Maps was still serving street names in a random language (the first name in alphabetical ordering), for streets which have names in multiple languages.
> Or, perhaps just the blissful America-centric ignorance about how there are regions in the world where there are multiple official languages
As a brit, I am always irked that most of what I browse is locked to US English, as if it's the same thing as British English. At least if your main language is a popular non-English language you get the option to switch to it.
This is compounded by those location drop-downs, Where United States is always in the special top slot, and below that is everywhere else on the planet, like second rate-citizens. It's especially egregious on global sites, that serve global content.
> This is compounded by those location drop-downs, Where United States is always in the special top slot
This used to be the case, but it seems to be becoming rare. It’s really annoying actually as alphabetically United States is way down in the list. This is how IP geolocation should be used imho, bubble up the probable location(s) to the top of the list, but DON’T assume the geo is right without asking.
> So many times I have to search for my country under [...]
It's even better when you have to explain this specific oddity in a foreign language.
Try politely explaining to a German consular official that they probably need to look in their system's drop-down box under 'V' for 'Vereinigtes* Königreich' [UK] (instead of 'E' for 'England' or indeed 'G' for 'Großbritannien' [GB]) as they are attempting to enter passport details...
Youtube also auto-translates video title for me, based on the language it assumes I can read. It’s so infuriating (there’s settings that alleviate that behavior for declared languages, but it’s buggy as hell, and still grating…)
It's slightly different from too big an organization. Big organizations do not care about the people they touch (employees, suppliers, etc). Monopolists do not care about their customers.
I listened to a Podcast and one of the hosts was a British guy living in America. He had to speak in an American accent to his Xbox One in order for it to understand him. It seemed the voice recognition was based on your location setting and not independently configurable.
This triggers some PTSD with Google Maps navigation in Finland
We have two official languages - Finnish and Swedish, neither of them big enough to warrant any Google effort for proper text-to-speech. Hence, the voice navigation first pronounces street names in Finnish, then again in Swedish, both butchered by applying English spelling rules, all voiced by an extremely robotic voice
I doubt it. I bet this actually works better for most people. It really sucks because you can't fix it if your computer is actually configured correct, but they probably ran some simple tests and determined that IP location is better than HTTP header language.
I'm sure it is easy to construct an argument that this isn't actually better overall. That case probably does then fall into "Org Too Big, Nobody Cares".
USA-centrism per se would still seem to recognise second languages, several state legislatures use Spanish, I think at least one publishes laws in Spanish & English.
Part of USA even has Spanish as an official and principal language - Puerto Rico.
I'm Italian, but I live in Germany and my language is set to English on all my devices and software.
I haven't lived in Italy for about a decade, but I created my Google account when I was still in Italy. To this day YouTube will randomly switch to Italian and machine-translate some (but not all!) titles and descriptions of YouTube videos.
I've manually changed the language setting back to English a dozen times and tried to nuke any reference to Italy from my profile but Google keeps thinking "This poor user must have accidentally switched language and not know how to go back! Let me help and serve him half translated websites" every two months or so.
Same, but with Spanish. My first language is Spanish but 99% of the media I consume is in English. Each time I log into YouTube my location is set to Chile and language to Spanish. Each time I change them to US and English. I've even sent complaints but nothing ever happens.
If that helps, even if your location and language was set correctly, you'd still get local results in Youtube.
My Youtube account is configured to use English, with a location in France. It still returns videos in Spanish when I'm in Spain. The UI is in English, but the search results in Spanish.
That doesn't happen to me, I can open YouTube in incognito mode and the UI is in English. I'm not using a VPN.
So it surely has to be your browser or OS settings.
I wonder if they don't have some VPN anyway so that the exit IP is something completely different to the region. Or if the Google searches even see the Internet, or if they stay within the "intranet".
Same with Google Images. All the results are from local sources although I have selected Language: English and Region: United States in the settings. This is indeed infuriating.
By the way, I just went to https://www.google.com/preferences and the page is totally broken (Google Chrome with disabled ublock/privacybadger), when I click on Languages or Appearance or Region: Show more (at the bottom), nothing happens. "Uncaught ReferenceError: google is not defined" in the console.
Youtube has a specific setting under the rightmost menu (under the avatar) to change country and language. It used to work great, you could have multiple browsers/containers set for different languages. This is very interesting to get the news or trending pages from another country. But lately it's been buggy and constantly switch back to some IP-based guess.
This doesn't even consider the possibility that location might be a more accurate indication of what language(s) the human user knows/prefers language than the browser setting is.
Which it may or may not be. But I'm shocked by the headline, "Why does Google get internationalization wrong?" that just presume that Google hasn't collected data on this. After all, Google is famous for data collected and data-driven decisions. Remember that "41 shades of blue" story?
> After all, Google is famous for data collected and data-driven decisions. Remember that "41 shades of blue" story?
Data (metrics really) isn’t the end all be all, and in particular the decisions resulting from the data is not bound to be good.
As you say, Google is famous for data-driven decisions, and for instance android couldn’t become the top rated smartphone OS. Their shopping property couldn’t overcome competition despite unfair positioning, their social network couldn’t survive despite all the effort put in it.
Looking at all their failures, why should we assume that here they made the best choice, when at an individual level we see it as deeply wrong ?
At an individual level, we should IMNSHO moderate our hubris and at least consider the possibility that other people are right, and that includes people at Google. Data isn't bound to be good, but it's not bound to be bad either.
Posting "why Google is wrong" is (still IMNSHO) an overdose of hubris, and because of that hubris it's wrong even if Google happens to be wrong in the matter at hand.
They are - objectively - wrong. There's a spec, and they're violating it.
This gets even more absurd given that they most likely produce the user agent as well, so they can't really blame "it's too hard for users to configure the user agent". Put the effin' language selector in the toolbar if configured language doesn't match your wildly inaccurate guesses then.
> They are - objectively - wrong. There's a spec, and they're violating it.
Not following a spec only implies they're objectively wrong if the spec is objectively correct. I don't think the Accept-Language spec is objectively correct; for me, it's not even subjectively correct. Following it or not is a choice, and neither is wrong.
There’s a point that hasn’t been much raised in the other threads because of its obviousness: they’re the wildly dominant search engine, paying ungodly amounts of money to stay so, and forcing itself wherever it can (remember the lawsuits around the search bar in android…)
For them to decide some portion of users are not worth the hassle and should have a degraded experience, because overall it serves Google better (revenue ? engagement ?) doesn’t make them ‘right’ in my book. Feels more like ‘assholes’.
If your argument was that for a vast majority of user the current behavior might be better, so as a whole it is the “right” choice, this has a taste of trolley problem. Except there’s more than two paths here, and having settings that work properly would make everyone happy for instance. It’s not hubris to say that Google isn’t delivering on that part, making the overall situation “wrong”.
Its more like they fucked it up with some AI driven A/B testing and think they are doing the right thing but actually its just all broken now.
They used to have /ncr (no country redirect) - open that in incognito mode and you have to accept some TOS in a language based on some idea of where the IP is.
Google goes further than that. If you go for a holiday in Thailand, you'll get all your search results dated with the Buddhist calendar instead of the Gregorian calendar.
It might be a function of how long you stay there. Usually when I visit Thailand, I stay for a couple of months. Likewise when I stay in Ukraine, the adverts I'm presented with on both YouTube and Instagram switch mostly to Ukrainian. Or Serbian when I'm in Serbia, or Turkish when I'm in Turkey, etc.
There's just so many things at play it's really difficult to know what to blame.
When I ask Google Assistant "where am I?" on my phone it tells me I'm in Manchester. Nice.
When I ask the same question on my Bluetooth headphones it says Liverpool. I can't get it to work. It's been like that for a year. Can't get any support.
I have two Google home devices, one I bought when I lived in SF and another that I bought after I moved down to the suburbs.
The one I bought when in SF is still stuck thinking it's in SF, no matter where I change the settings. So, I get SF weather, SF traffic and all that depending on which Google Home happens to answer my questions.
> When I ask Google Assistant "where am I?" on my phone it tells me I'm in Manchester. Nice.
> When I ask the same question on my Bluetooth headphones it says Liverpool. I can't get it to work. It's been like that for a year. Can't get any support.
Maybe Google's own analytics suggest that very few people in Manchester use Bluetooth gadgets, ergo you are in Liverpool.
Or (more seriously even if as unlikely perhaps) maybe you have a duplicate Bluetooth MAC address, the other one located in Liverpool. Do you have Bluetooth turned on when not using your headphones? Does the answer depend on Bluetooth being on?
I actually have two pairs of bluetooth headphones, my Sony XM3s (where this has happened for a year) and some brand new Sony Linkbuds.
Both exhibit the behaviour. Everything seems to work fine _except_ it thinks I'm elsewhere.
I don't know why the MAC address would come into play, I thought that Assistant was running on the phone via the headset. It just doesn't make sense to me that the phone immediately shows my proper location in Maps and Assistant responds correctly there, but not via Bluetooth.
Bluetooth being enabled doesn't affect the response on the phone itself, it only mis-reports the location when asking through the headsets.
Perhaps it's a permissions thing somewhere but I've looked through the settings and everything looks fine. I've searched and other people are suffering from it too. Thankfully I'm not alone, but Google's support is terrible.
This is extremely annoying, especially when you're in a country with high level of English proficiency and a small population. In that scenario, you're not going to have a lot of local language results. Something like Wikipedia, which has decent quality in English, will tend to look like it was edited by high school students. Yet Google will force-redirect you to the local Wikipedia language over the vastly superior English article, even when searching for something in English.
Modern search engines are just so stupid trying to outsmart us. When was the last time running a literal search between double quotes produced any significant results for you? Nowadays even with double quotes, they more or less all return what they think i meant depending on a plethora of criteria and not what i asked for.
Thanks for marginalia search engine, it seems to be gaining in content and starts to be more and more useful lately! Though to be fair more *transparent* special-casing like you do for Wikipedia would be welcome in my humble view (eg. for technical documentation pointing to the reference site, etc).
The usual excuse is that they are optimizing for results that produce clicks on paid search, rather than optimizing for your satisfaction with the search results.
Having moved country twice I used to get very upset by this.
Now though, I have just given up on google. They seem to have no interest (and no incentive, for lack of un-buy-out-able competition) to improve this. I mean, apart from the occasional vacation, how much of their userbase are really changing location regularly, right? And do those people have any real choice to opt out of using the shitty product anyhow?
They still regularly show me map search results relevant to my place from 8 years ago.
They still randomly switch me to this or that language based on VPN usage or such. Feels like a big middle finger that they haven't even attempted to solve this over the last 10 years or so since I first started noticing this.
At least for search, I have recently switched to Kagi (based on a recommendation from here on HN) and haven't looked back. It's been... *checks mails* Oh, since new year's. Longer than any of my DuckDuckGo streaks.
I honestly didn't expect this to stick, but once Kagi goes out of beta I think I'd subscribe if the price point is right. It's so refreshing to get good search results with no BS. And if something bad creeps in (which happened once so far, a StackOverflow SEO site) I can just block that page from ever showing up in my results again.
So yeah, I use gmail & calendar for work on a separate account, and youtube privately. Apart from that, I avoid their products. Most of my apps on android are from f-droid, I open the play store a couple of times a year. It's just not worth the hassle, and that doesn't even get into the whole privacy & market dominance behaviour.
The article mentions DHL. Which is another hilarious case if you dig deeper: I am in Germany but my browser's language is set to English, like the author's. dhl.com - the international website - automatically assumes that I want the German translation (like in the author's case), but dhl.de - the local, German website - respects my browser setting and serves content in English! This is completely upside-down :)
Another option is that companies (mostly Google) have different offerings in different countries. In Germany, for example, they need to apply NetzDG filtering and I assume it's similar for countries all around the world. So my assumption is they don't redirect you for the language, they redirect you to the (slightly different) service for your current location, which happens to be in the local language.
I think part of the reason might be that the browser settings aren't as reliable as location data. A lot of people even outside the US, have their browser/OS set to en-US from the default configuration. Even if they might be located in France or India. If Google had determined that was the case more than 50% of the time, then I can see why they favour using location for language instead of browser settings.
I added Accept-Language to our web logs for a month before we added our first site translation.
That showed us that the majority of people had a language matching the expectation we would have from an IP geolocation, so we use Accept-Language alone.
That hasn't been my experience both from running a site in Europe using the accept language header as default and from my anecdotal experience with friends in Asia and Europe.
In general, I think using geoip is much more likely to get things wrong than using the accept language.
I wonder if they could just change the browser to hint about "Do you want content in your local language?". I wonder if the dominant browser vendor on the web would be willing to accommodate Google...
So if that's the case then give them the en-US version? They'll either accept it because that's what they've explicitly requested, or change their system settings to match what they actually want.
This is extremely annoying and wrong in so many ways. Especially in countries that use multiple, say, conflicting languages, and Google's choices come off as culturally very insensitive, even offensive. It is so infuriating.
Years ago I built a language system that parsed Accept-Lang and compared your preferences to what we had available. There was also a drop down at the bottom of the page to manually override.
I thought it worked really slick, but we got complaints. The majority of our users were English speaking despite their Accept-Lang preferences and expected us to serve in English. We switched to just default English with the dropdown there if you want something else. Made me a little sad.
Thanks for bringing that topic, for me as an expat it a major pain. I live in a country with rather unusual language, but I have only contact with English speaking people. And every service puts the locale of this in default - even with stating in browser settings what are my preferences.
The worst part of this is that in many places I don't even know how to change local on specific pages manually.
VPN is the only valuable option for me unfortunately.
Which language Google uses is different from product to product. In Google forms, they use the language set in the Google account (neither location, nor browser language), which is frustrating, because as a designer of a survey you have no way to control the language the UI elements in your survey.
The inconsistency in how different companies and products within companies handle this are indeed annoying, and speak poorly for product management and engineering at these companies.
But it's not as simple a problem as the article wants us to believe. Local laws often dictate different content or function for sites and applications served in their jurisdiction, leaving the product with a hard choice: if Japanese law requires that I get a Japanese version (from a function point of view) of a site when browsing from Japan, but the browser settings request French language, I may or may not have a French translation of the Japanese function to serve.
I think a lot of the irregularity is just bad product management and engineering, but some of it is actually trying to deal with a hard problem.
The reason is straight forward. They have data that shows most people outside the US have the setting wrong. For the .com (American!) domain the default is English. For each country specific site the default is the primary local language. You can change the default via a cookie.
> For the .com (American!) domain the default is English.
If only. The geolocation talked about here is taking place on the .com domain. Worse, even if you manage to switch it to english (they have been hiding that link more and more) it will still use geolocation to push search results in the "local" language.
1. Sometimes for legal or practical reasons other than language, the site needs to be different in different places, e.g. terms and conditions, cookie popups, prices legally required to include tax etc. These have to be based on the users location.
2. Users don't set their browser language correctly. The options to change are hidden where no one looks and hard to understand - you an allow multiple languages and set a preferred order for them. I think this was common years ago, but is probably no so much the case now - it will default to the system language.
Just BTW on the Netflix subtitles issue - I live in Germany, but I'm not German and generally prefer original audio on everything, typically with English subtitles. And some movies and series on Netflix will really only offer German subtitles, or, even worse, only German audio. No option to choose original.
All movies that have such limited audio/subtitle options, when I play them, start with a title card of a German distributor, so I would believe Netflix on that one.
My fav in this regard is Amazon: I can manually set a language in the settings, but those get at random times overwritten by my browser language setting.
When I'm abroad, visible under another country's IP address and my system's language is set to English, neither should be used to assign the language. What should be used is locale. Some users may have operating systems in language different to their own but probably more users have proper keyboard language set in their OS.
Using IP address to assign the language is the dumbest choice possible but using OS language is not much better.
This "Hey, you are from Ukraine, let us switch you to the Russian language" behavior I see in some places literally causes me PTSD. I got pissed off this way by Adobe just yesterday. Please don't do it people. I don't have the Russian language configured on any of my devices and in any of my accounts (and never had), they do it purely by location.
The challenge for international platforms/websites are the legal/business requirements per region and it boils down to costs to streamline translations.
Organizations split responsibilities by countries/regions. Local experts get hired to optimize content for their target markets. The back and forth between local subsidiaries/experts with centralized product development teams is more complex, slower and expensive. So you would rather create dedicated customer facing sites per region that are maintained by local teams who take care of location-specific differences (Netflix filtering, Google search results, etc.)
The bigger the org gets the harder a streamlined multi-language (often also multi-currency) business model gets and hence companies opt to geo-location instead of using header lang.
Probably, there are more points, but that’s what I have learned after building an international m-commerce platform that serves users in the EU, US and Mexico.
The challenge for international platforms/websites are the legal/business requirements per region and it boils down to costs to streamline translations.
Organizations split responsibilities by countries/regions. Local experts get hired to optimize content for their target markets. The back and forth between local subsidiaries/experts with centralized product development teams is more complex, slower and expensive. So you would rather create dedicated customer facing sites per region that are maintained by local teams who take care of location-specific differences (Netflix filtering, Google search results, etc.)
The bigger the org gets the harder a streamlined multi-language (often also multi-currency) business model gets and hence companies opt to geo-location instead of using header lang.
Probably, there are more points, but that’s what I have learned after building an international m-commerce platform that serves users in the EU, US and Mexico
Off-topic, but wtf is wrong with images on this site? For some reason i had javascript enabled in my Tor Browser (safer mode) so whenever i hover an image it starts to fill the whole screen... which is inconvenient because images are already almost filling my screen so it's REALLY HARD to scroll away from them to read the text.
Fair enough, I'll fix it. It's actually a CSS thing. In some of my travel articles it's nice to be able to see the images in full resolution, but the blog template I'm using squeezes them all to the column width. I'll add a click to zoom instead when I get a chance.
This is especially annoying for Portuguese people. Because most Portuguese speakers are Brazilian, sometimes websites default to Brazilian pages or trends.
Twitter is becoming almost unusable with their suggested topics - I know they're awful for most people, but for me they don't even get the country right...
My guess is that large companies may be required to switch to the geolocated national language preferences of a countries government so that a nation preserves its identity. If you are in the USA and you can switch your language preference to the UK your mindset starts to trend towards UK thinking. Region locks on DVD's and Blu-Ray disks may have a similar purpose, to preserve local culture. This seems both good and bad, bad in that it discourages cross-cultural exposure and thinking, and good in that it makes the world richer because cultural diversity encourages many different approaches to life which may benefit everyone whenever cultures do mix, sort of a redundancy of operating systems so to speak.
But every jurisdiction has unique laws, company policies, release schedules, etc.
So, for every jurisdiction, you have unique official text.
The unique official text will always be available in the majority languages of the jurisdiction. The people who work in the jurisdiction speak it, and write in it, and can easily generate it.
Non-majority languages require translators. Hiring people. Workflows. Approvals, etc.
So it's easier to go off location, because then I know you're reading the right official text, and if you can't read the official text in the native language, it's on you to translate.
This gets harder the bigger the company, especially in cases where the "company" is a bunch of independent subsidiaries.
The regionalized search results for Google and YouTube are probably the biggest annoyance. Even after setting the language options correctly in the respective services, I still get content suggested which has no relevance to me.
I agree, assuming the language based on where you happen to be (instead of your actual request) is completely wrong. There are websites that do it correctly. This website, which I maintain, correctly uses the browser setting: https://bestpractices.coreinfrastructure.org
Perhaps what would be helpful would be to modify services that already evaluate websites to also determine if they switch locale correctly. If people see that there is an error, it's more likely to get fixed.
I'm currently in France and I've resorted to just using duckduckgo.
It's the same class of accessibility error as tying shipping address to website language, which I still see all the time, too.[0]
When will we learn that people don't necessarily speak the native language of the place they reside? This isn't even uncommon, there's expats and tourists and foreign students and business travelers abound.
[0] Framework required me to use the French language website to ship to France, for instance. My forum post suggesting this be changed got unceremoniously merged into some megathread and ignored.
I live in Switzerland and every website seems to think I speak German (I do, but this is not the point). Everything is configured in French on my computer, so why do you insist serving me content in German. Yes , I do understand that 66% of the country speaks Swiss German, but still, why can't the website respect my language preferences.
The worst offender are the swiss websites (like digitec). You would think they at least understand the regional differences of Switzerland and they even have a website for each region, but still default on showing me the German version.
For several years, my google pixel phones were returning a strange mixture of Arabic results.
At the time, I was living in Texas, but I had taken some Arabic classes in college earlier that year, so I would often google sentences to see if they were grammatically correct.
Then, I contacted google support at least five times and they were never able to figure it out. Even on another pixel, I was STILL getting Arabic results.
After another year, I finally changed to Apple, and my google results are normal again.
I am able to bypass this by adding a second language to my browser (e.g. I have en-US AND something else).
Theory: en-US is the default so Google just ignores it.
It seems like the obvious solution here is to have another language that semantically means "force English" which is only ever sent by the browser if the user explicitly selected English in OS or browser settings. That way, the ambiguity between "en-us" meaning "default" or meaning "us English" would go away. Maybe even setting Accept-Language to "en-us,en-us" could mean that?
Google makes the (sadly) dominant web browser. Why not just add a feature on the browser to have a huge popup (I'm kidding, it should be more subtle) at the next upgrade to ask the user "What languages do you prefer for content?".
Currently, I'm guessing the browser copies the language of the OS at first run, and the option to change it is behind the sign that says "Beware of the leopard"
This article isn't looking at both sides.
I am in an English speaking country and Google absolutely does honour my accept language header, eg is set to French I get french.
I suspect that a non English speaker with an English language configured device in a non English speaking country is sufficiently more common than the other way round that they choose to make an exception and ignore en accept-language headers
This always baffled me. Although English is not my native language I strongly dislike UIs being in any language but English. Every settings on my PCs says use English, all the apps are English versions, yet every time I find myself in another country Google uses its language to speak to me. I'm not sure I will even find how to switch the language to anything readable once I land in e.g. Japan or Armenia...
I do not work at Google, but I speculate that this is a case of software architecture leading the product: For fast results and scalability Google will just DNS-redirect you to the closest servers, and those servers are configured to a specific language.
Sure, they could work on it, but for Google engineers cache is king, and for optimal performance they don't want to bother on personalizing that first access.
firefox had localized installers that also set the accept language headers correctly, dont know about chrome. using the geolocation data is good for the majority of the users i guess, although it ignores a lot of nuance about mixed populations.
back then when i was still a google product, it was very very frustrating while backpacking around the world. `hl=en` or some such parameter was the "fix".
If that still redirects you to a local version for some reason, append &gws_rd=cr (which AFAIK tells Google Web Server that a country redirect already happened and that no further country redirect should be triggered).
I'm so sorry for all these native English speakers missing out on the automatically translated pages put there to bait google and others. Then the "clever" ML people scour the web and use multilingual pages as rosetta stone to train their translation engine that they, of course, SEO to death.
Long story short, "how do we say that word in English again" is a minfield on google.
I really wish you could specify the search language or internationalisation.
Sometimes I search in English, French, Italian, Czech or Ukrainian, I also split time between Canada, France and Czech Republic, can read all these languages well enough to want contextual results for each, but inevitably I still get results focused only on my actual location which is slightly infuriating...
Remember Microsoft Windows, which considered changing OS display language a enterprise/pro/ultimate feature, which was NOT included in home edition? Ridiculous. Luckily there was "Vistalizator" where you could install language pack of choice.
Anyway, after multiple OS releases like that, they finally dropped that nonsense starting with Windows 8.
> Remember Microsoft Windows, which considered changing OS display language a enterprise/pro/ultimate feature, which was NOT included in home edition?
I remember Microsoft Windows (and MS-DOS) having a hardcoded OS display language; if you installed a Brazilian edition of Microsoft Windows, all you got is Brazilian Portuguese, since the translations are hardcoded within each binary (but you could still change things like date format and keyboard layout), and if you wanted a different OS display language, you had to wipe and reinstall. I vaguely recall reading that this had changed starting with IIRC Windows Vista, which put the translations in separate files (instead of hardcoding them in the executables and DLLs).
I have one windows PC that has heritage back to 2016, was originally installed in Japanese, then switched to English. It always had a Windows 10 pro license, and there is still in 2022 many places in the OS that only show up in Japanese. And many smaller and enterprise apps use region instead of language to set the language.
Been traveling in Mexico/Latin Am since the pandemic and this is so much more painful than I expected. I work on multiple projects as a consultant and so I often create a new browser profile for new clients (keep sessions, sign-ins etc separate). Every time i boot up a new profile, everything gets switched to Spanish, mexican results.
Traveling thorough Argentina in 2019 my phone showed all prices in Argentinian Pesos.
Particularly annoying on Google Maps when looking for hotels. Crazy inflation made remembering an exchange rate to € or US$ useless.
But what's more, after I returned to Europe this stayed for a few months. I.e. Google Maps still showed me hotel prices in Argentinian Pesos – in Europe!
I recently noticed this while browsing their device store from Germany. I couldn't get to the US shop no matter what I tried changing. There's a language and locale query parameter in the URL, but it will forcibly redirect you back if you try to change it. I'm not sure what it's even there for.
I believe that the best way to handle it is to show the page in the user's computer language and show a pop-up in the language of the country asking the user if they want to switch to the local language.
Of course, an important detail is putting the "stay in <browser language>" button in the browser language.
This is a common thing in software too I fear. I have Firefox on macOS. Everything is configured for US English, but I live in France. When I tell Firefox to save a page (or download something), the dialog prompts me to "Enregistrer sous..." (i.e.: "Save As..."). No idea why this happens.
> The official reason was that a lot of browsers defaulted to en-US
maybe browser should default to sending no value or a special "default" value for Accept-Language. So that sites can use location if it is the default, but if you explicitly configure your browser to use en-US, then it will respect that.
Their various services are inconsistent in how they detect language.
Some elements may appear in the language associated with the user's location, while others are based on the browser setting. It's highly inconsistent, as someone who travels frequently it's also pretty annoying.
Similarly, why do I encounter phone apps that ask me if I want F or C temps, 24 hour or 12 hour, and date formats? Use the locale, at least as a default. I do get the scenario where I may want to work in another set of units than my locale, but I find the locale is frequently just ignored by these apps.
The only answer to the question is because google make more money if you sign in and share location data.
There's no other logical reason a rough guess about where you might be in the world is a better method for determining your language needs than the specific request from the browser.
There are definitely cases where I want “whatever is local” and others where “whatever my normal default is”.
If I’m getting driving directions in a place where the car and road signs are in kilometers, I probably want my directions in kilometers as well, even if my default is stupid-units.
The Netflix thing makes me so angry sometimes. They have the show, the title, description, episode titles and descriptions are all localized to my language of choice (English), but when I actually start watching I can only select French or Original Dub & French Sub.
A trick-ish that I've learned is to use Irish locale where possible (en-ie) , because that's a combination of English and Metric (the only sane international combination not to go wrong).
Of course this still breaks when software tries location sniffing and puts me $elsewhere.
What happens in countries that have multiple official languages that can't be determined geographically? I only assume such places exist, or there must be places on the borders where the accuracy of geo-IP and the demographics aren't clear-cut.
For me, whichever you choose, you should make it easy for the user to change the language. Living in Spain as an English speaker I often end up on a Spanish version with no obvious way to change to English. That is the real sin.
Many sites are so infuriating regarding language settings
Tesla Website is one of the worst for this.
I live in Portugal but speak English
Tesla insists on serving up Portuguese and wont even let me select US or UK site.
This is currently affecting me. Google serves me results in Portuguese. The results are poor for me, because I can't read the language. The suggested websites are in Portuguese. And there's no way around this?
I have not had a chance to test this yet, but apparently setting your locale to en-CA (rather than en-US) solves the problem, since Google no longer assumes you're using default language settings.
If you search for an english book title on Amazon.de it gets auto-translated to german. I first saw this a couple of weeks ago and it was super confusing. Chances are the search results will be nonsense or empty.
Default is one thing, but why is there not an obvious and easy way for users to override the language chosen by Google and make that selection permanent? Not giving users control is a terrible user experience.
I wonder if some sites are using JavaScript to handle language, but they don’t want to use navigator.language since below IE 11 doesn’t support it. In this case, it might make sense to fall back to location.
Another one that pains me is Google Flight currency. It's always on the currency of the country I am. I have manually selected USD countless times and it always goes away.
Whenever I'm traveling abroad I set my phone & laptop default search engine to DuckDuckGo. The worse search results (sorry, but yes) are at least in English...
DuckDuckGo has also been guilty of this, even when I disable the prominent "regional results" toggle. I am in France but have everything set to en_US, and on some searches of rare technical keywords it will still mix in "Visit France" tourist websites, often within the first page.
Ridiculous example: searching for "HID2HCI" (a bluetooth thing) returns as first result a business website from the French Alps. The second result is the English Wikipedia page for "Île-de-France" -- just why?? It doesn't matter which country I set in the "region filter" or whether I disable it entirely. And these "regional" results seem to be very random in that they will change and move up/down when I repeat the same search.
Because of the company VPN, I usually teleport to Israel, and I have absolutely no idea how to change the language on a right-to-left layout with a Hebrew alphabet...
It’s a pain in the ass, I have a client who’s WAN exits in Swizerland so you have to manually set everything to correct locale, not just Google all kinds of stuff.
It's like a well known friend reporting that Pornhub translates porn video titles to silly German titles, even though his system and browser run in English.
They do it because they want you to always be logged in to your Google account. If you're logged in you can simply change your language settings there.
A workaround: To force search results in English when not signed in, go to https://www.google.com/en. This adds a hl=en parameter to your queries. You can change the search provider URL in the browser to add the hl parameter.
The irony is that I clicked that URL on my iPhone, signed in to Safari with everything set to US/English. About half the entries below the search bar(they now add news below) are in Spanish.
My current location is Unknown if I scroll all the way to the bottom. Probably Google unsure of what to make of my whole house VPN where the desktop browsers use a fake location extension to automatically say yes to location requests but provide them with a static location in SoCal that matches the area of my IP block, but whenever I use google apps on my devices, they end up with GPS coordinates that place me deep within Mexico.
what's failing for me, I want result in Japanese but google thinks I want Chinese. I'm not in China or Japan but Chinese is not in my language preferences. Switching to google.co.jp didn't help.
http://web.archive.org/web/20220311170532/https://smaller.fi...