Why does Google use location for language rather than browser settings?
smaller.fish
smaller.fish
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!
My suspicion is that people who actually write code related to this only speak a single language and only use sites in a single country.
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.
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.
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
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.
Compare "Rirgwyd rkrgru dlwhgi ro English" to "This page in English". Which is better for people that only read English?
And when a page is in the correct language, I would prefer not to have entire sentences in a different language.
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.
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!
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.
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.
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).
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.
It's beyond nuts. And "catering to the computer illiterate" can't be the explanation.
[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!
I just tried, and while the page is in English, the top search results it returned are localized results to the country I happen to live in.
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.
> 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.
Google thinks they known better - they do not.
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.
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!
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)
I think every time this topic comes up I come across someone with this misconception - usually from a country that celebrates the 4th of July.
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.
Once upon a time yes.
So that makes it sort of a reason to think those are still possible, but equally validly it acts as a reason to say nobody does that anymore.
So overall it's entirely reasonable to ignore such ambivalent evidence/"evidence".
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.
> Gregorian, year–day–month (YDM) This date format is used in Kazakhstan, Latvia, Nepal, and Turkmenistan
https://en.wikipedia.org/wiki/Calendar_date#Gregorian,_year–...
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
Not trying to argue one way or the other, just adding some extra context.
July 3rd
4th of July
July 5th ...
Also my experience is that only Americans say the month first. Today is the 11th of March.
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.
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.
Best tip I've seen all day!
This[2] askubuntu answer goes into more detail.
[1] https://lh.2xlibre.net/locale/en_US/ [2] https://askubuntu.com/a/162714
I just happen to want slightly different choices than it allows.
I do the same. There is usually a locale available with that, look for English (Ireland), English (Europe), English (Denmark), or English (Germany).
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.
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.
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.
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.
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.
They figured out that "la naiba" is better than "perkele" :-p
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
Use browser and OS settings, always. Anything else is a mistake that will cost you users and business.
See https://www.apple.com/ch/ (you can also type apple.ch) for an example.
Apple is rarely a good example of giving user a choice.
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.
> 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.
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.
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.
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 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)
They've finally added back the "Read in English" button they removed years ago for some dumb reason when they migrated the .NET docs to a new domain.
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.
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.
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.
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.
That is truly maddening
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
What if it's a dark pattern to have more people signed in?
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?
How many of those are "misconfigured" and how many are set to en-US because that's the language they want for their computer.
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.
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
Which is why TSV exists, because the tab character is universal.
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.
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.
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.]
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.
I always get this wrong in calculators. I type , where I should have typed . or vice versa, and get a completely wrong result.
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 :)
// 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.
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).
Result: Broken data due to SUM/SUMME/etc formulas, broken phone number recognition and (worst) broken dates.
What a mess!
In some European locales Excel switches from importing/exporting Comma Separated Values to Semicolon Separated Values with comma acting as the decimal point.
It can be fix if you do import from file and then manually select separator.
But this was need to be done every. single. time.
Maybe this is due to the fact that Excel documents break if you change language, as function names are localized?
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.
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.
> We used the device's language as the app's language, because that makes sense, right?
One of the mistake devs do all the time is assuming users use _one_ language. 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.
Yeah, please offer the option to set the language to the user.
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.
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.
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.
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.
PS2: Apple get it right most of the time.
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).
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 wish they would stop guessing and just listen to the hints...
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.
Ignorance, or arrogance?
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 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
United Kingdom
UK
Britain
Great Britain
England
Only to find that it was “Great Britain” but collated in the B’s amongst Bhutan and Belgium, etc.
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...
* 'United', in German...
We had a very angry American (presumably) who accused us of "cultural imperialism" for having an en-GB option but no en-US option.
Got to say I was laughing about that for quite some time.
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'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".
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.
Part of USA even has Spanish as an official and principal language - Puerto Rico.
It doesn’t care that:
- my browser is in English
- that I’m logged in and with English as my language
- that my region is set to the U.S.
- that I only used English keywords on the search box
It still gives me Portuguese results as my geo ip is in Brazil.
It’s infuriating.
google.com on the other hand is Spanish.
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.
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.
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.
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?
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.
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 ?
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.
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.
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.
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”.
Nice work, world's best and brightest.
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.
So I just don't use Assistant for anything.
> 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?
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.
https://support.google.com/assistant/thread/107064163/google... https://support.google.com/pixelphone/thread/118603801/assis...
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.
I would be delighted to see the uproar if being bilingual+ became a FAANG requirement.
10000 guys who can implement a trie but only 100 who can communicate with more than 1/5th of their customers.
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).
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.
Most people who install windows don't bother to set the locale correctly, so everyone ends up en-US.
So if you trust the Accept Language header, you'll get it wrong.
1. In Quebec, Canada where French speakers keep the default en-US, even thought most of their work and communications will be in fr-CA.
2. In Bulgaria, because most people learned computer concepts in English so seeing OS and Browser menus in Bulgarian would be confusing to them.
In general, I think using geoip is much more likely to get things wrong than using the accept language.
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.
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.
VPN is the only valuable option for me unfortunately.
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.
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.
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.
So why have it in the first place?
Using IP address to assign the language is the dumbest choice possible but using OS language is not much better.
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.
It is not a tech issue.
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
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...
Not to mention as you said many sites such as Twitter think I care about what happens in South America because I speak the same language.
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.
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.
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.
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.
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.
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"
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.
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).
Youtube needs uppercase region and usually disrespects language if you don't append &persist_hl=1 (e.g. https://www.youtube.com/?hl=en&gl=US&persist_hl=1). Might as well append &persist_gl=1 too.
Not really an issue if you use bookmarks on your own devices, but super annoying otherwise.
Long story short, "how do we say that word in English again" is a minfield on google.
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...
Anyway, after multiple OS releases like that, they finally dropped that nonsense starting with Windows 8.
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).
One thing I found extremely bizare is that `wget` on my work computer gives status and error messages in my local language.
I have no clue how it ended up like this, but I am suspecting it is due to the usage of a local mirror of macports.
Please Google, stahp.
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!
E.g. on mobile just scroll to bottom of fist page and pick different language.
E.g. on desktop just go to settings and pick language.
I'm pretty sure this works awesome since I've used this all my life.
I would expect power users to look for simple solution instead of ranting.
Who the hell are you guys if you can't find language settings!!!
Please read my comment. I'm talking about language settings on Google and not browser settings.
Somehow people believe that a multi trillion dollar company hasn't ran live experiments on this.
The default settings are adapted so the probability of correct language for people who can't find language settings is maximized.
Guys, please use common sense. The alternative is to believe that Google engineers are either not educated or don't know ab testing.
Of course, an important detail is putting the "stay in <browser language>" button in the browser language.
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.
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.
Facebook properties have this problem as well.
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.
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.
Of course this still breaks when software tries location sniffing and puts me $elsewhere.
Google already knows what languages I speak, yet for German and English I always get shitty auto-generated captions.
I have disabled every setting they have, yet if I am logged in (which I am because I use yt premium) I get CCs.
It's crazy!
Anyone have success with this?
Absolutely ridiculous, and now there’s seemingly no recourse.
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.
Google ignores the Accept-Language header on pretty much all of its websites and uses your location instead.
And I fucking hate them for that.
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.