As an avid VPN user it’s infuriating that multilingual websites insist on using the client’s IP address to determine their language and country when web browsers have been sending the Accept-Language
HTTP header since the mid-90s.
I understand that you can work out more or less where someone is located based on their IP address but it was never meant to be a geo-based marker. Why not go the simple route and use the header?
It’s also such an broken idea that I can only imagine it comes from american tech bros who have a childish view of the world.
“Yes this area is germany people in germany speak german so websites must german problem solved”
No:
- I am Norwegian. I sometimes gasp TRAVEL. Taking a train through Germany to get to France doesn’t mean I want Google to go all “Dieses Suchenwiegenflassen gewürst fleinmescht bitte” at me when I search for pictures of cute cats.
- Some countries have multiple official languages.
- Some people technically in Norway living close to the border just speak swedish.
- Expats.
- I don’t want badly translated websites in Norwegian. Just give me English. Microsoft Bing for years had a setting that when translated back to English said “Number of results: Car”.
Dieses Suchenwiegenflassen gewürst fleinmescht bitte
As a native speaker of German: lol
I mainly notice this with YouTube ads when in a foreign country. YouTube, you have my viewing history, you know I don’t watch videos in Italian or Hungarian because I don’t understand those languages well, so why are you advertising to me in those languages just because my IP geolocates to Italy or Hungary???
I’m an American tech worker (not bro thankfully) and I’ve seen the poor translation issue firsthand: using Google Translate on the backend to transparently translate the website on the fly.
I also happen to be multilingual and it’s just unbearable watching some of this stuff play out. Storing translations and switching between them at a technical level isn’t really hard. I wish companies would invest in translation services instead of relying on Google or some other equally bad service.
using Google Translate on the backend to transparently translate the website on the fly.
This is what they call “modern cloud-based solutions”. Except, now it’s “modern AI-based solutions” - same shit with a different label.
I am now trying to imagine how that works. Every time a client calls the website with an unseen (and IP-based of course) language? Do they at least cache whatever google returns?
Storing translations and switching between them at a technical level isn’t really hard.
Esp. as you yourself pointed out, the internet has been multilingual for decades now.
I so hate the bad translations. Please just give me the app in whatever native language it was built in. And if I can’t understand that language, let me switch to English. It’s awful to use an app and have to translate everything yourself back to the native language to figure out what they actually meant and what went wrong in the translation.
And it’s especially annoying when errors and such are also translated. These often make even less sense and when trying to search the internet, it really helps if the error is in the language of largest user base.
Honestly, plain old ignorance. (and some anglo-centrism)
I am a software dev, worked on two translation projects at different points in time, and both of them were kind of a mess. In one case, translation team was all Americans (US company), and I was the only person who spoke another language and had firsthand experience with bad translation in media. When I asked how to switch the language in their app, senior dev told me to switch my OS language. Translations themselves often sounded overly verbose, robotic, or plain weird in other languages.
And then, the typical oversights like not leaving enough screen space for longer translated text, using ambiguous terms without providing context, badly splitting phrases. Text-in-image, etc.
Especially bad for counties with multiple official languages, they just pick one at random
I’ve noticed that too, it’s so dumb especially when your browser’s language is set to one of them in the first place.
I would assume because ur hitting the geolocated cache which will be IP based. I would assume its not doing a location check its simply that the site is being served by the nearest (IP routing wise) provider and that cache is configured to serve only the local language. Its the same reason the language is often encoded in the URL.
Excellent point on the local cache explanation! I hadn’t thought of that.
As a web developer myself I’m into detecting it automatically then redirecting to a URL that includes it (like
/en/products
). Then of course users can manually change it by signing in and/or using cookies.You’re doing the Lord’s work. As someone who lives in a country where I can barely speak the language this is a constant frustration.
I also hate how hard it is to override location for other searches. I travel back and forth to my native country regularly, and so I’m often trying to search stuff or buy things for a different country than the one I’m literally in. If Google is so keen on making money from me, why can’t I tell it to do a Product search in a specific country, instead of forcing me to use a vpn to trick it?
The country-based shopping dilemma sounds tough to solve without a VPN. I think the explanation there is that because countries have different laws they might not be legally allowed to show some products.
It’s to annoy you into not using a VPN.
I’ve been complaining about this for years. And since the large influx of vpn use (esp US I think), I expected this to become a more pressing and widespread issue, leading to more urgency to fix it. But no, even google sites seem to not give a shit IIRC
As a user it’s annoying because I have to hunt down the language/region settings. And as a developer it would cost me a lot more to hunt down those values based on the client IP address.
Probably because it’s easier to track people that way.
Sure, but that could be decoupled from language/regional preferences.
When I travel to another country my smartphone doesn’t change its language to match that of the host country, so why don’t websites respect the user-defined preference defined in the header?
It was not that long ago when Android changed my on screen keyboard to a different layout whenever I was in a different country. Really annoying - I don’t suddenly type in Danish when I’m on a business trip to Lyngby (near Copenhagen)
No one is spending money to cater to a miniscule audience.
Doesn’t it cost less money to parse the header than to pay for an entire geolocation dataset?
Because they don’t make, or give a flying flip any you and vpn users. You are an not an important population to optimize around.
I’m not arguing that I am. I’m arguing that using an IP address to determine language settings is stupid, regardless of whether I’m using a VPN.