Don't guess my language
391 comments
·May 19, 2025elric
magicalhippo
A related issue that has me fuming is when, after arriving at a page of interest from a search engine, a modal popup forces me to select the country I'm from, and then promptly redirects me to the homepage of the regional website.
Some have a X button to close said dialog, but many don't which is really aggravating.
wudu
Google does this. I want to check out the new device they just released - "sorry, this product is not available in your country". I just wanted to read the specs, not buy.
jiggawatts
Products don’t get to be informed about the factory in which they are made, or which shop they are to be sold.
numpad0
uselesswords
https://bbc.co.uk sends me to https://bbc.com in the states and it is just infuriating
CGamesPlay
> in alphabetical order
Well, it's in an order, but I don't know about alphabetical. I clicked on today's English featured article and looked at the languages: "中文", "Italiano" are "suggested", then the remainder are grouped by geographic region, and aren't particularly alphabetical. They appear to be in groups which are still not alphabetical. Europe seems to have a Cyrillic group but "Қазақша" is shown after "Українська" which isn't accurate in Kazakh and probably also unexpected for anybody who isn't familiar with the letter Қ (Қ isn't a letter in Russian, this is probably why this happens). The Chinese languages don't seem to be in stroke order (no expert here), although Korean is below them (because of course, K for Korean alphabetizes after C for Chinese).
Anyways, no hate for Wikipedia; they do a great job of localizing. Just a bit of nuance/pedantry about how you can't "alphabetize" language names in their own language.
bmn__
> how you can't "alphabetize" language names
Not so, this sort order has been standardised as part of Unicode for at least 28 years. To see it in action, pipe the list of languages as a text file through a conforming tool like `ucsort`. When Қ is falsely sorted after Ч, then the wrong algorithm or no algorithm at all has been used.
> because of course, K for Korean alphabetizes after C for Chinese
That's not how it works.
adastra22
Sort rules are different in different locales.
mananaysiempre
Yes, the DUCET is bound to disappoint everybody (especially users of the Latin script with diacritics, as none of them agree on the sort order and everyone’s preferences are tied to the specific subset of diacritics they need), but at least it disappoints everybody more or less equally.
(Do yourself a favor, though, and use the CLDR root collation instead of the raw DUCET—they are basically the same, except, and I’m quoting the standard here[1], “the DUCET is not entirely well-formed”.)
euazOn
Yes, that’s confusing and probably hard to find a good balance. Someone speaking Greek or Czech may expect to find their language around E (Ελληνικά) or C (Čeština), but nope, on Wiki it’s all the way after Z.
kazinator
The problem may be is that you need to set the locale in order to get certain alphabetization, but setting the locale won't happen until after the language is chosen.
A reasonable approach might be to sort the list of names by using, as the sort keys, the strings projected through a Unicode normalization function, followed by folding to upper case. Then Čestina gets mapped to CESTINA and at least appears among the C's.
nis251413
Don’t special characters always go after the Latin alphabet? I think this is pretty common, and fairly expected behaviour. Of course nothing is perfect but I feel like the way Wikipedia handles it is consistent.
af78
I guess the default (when no language is specified) is Unicode order:
U+005A LATIN CAPITAL LETTER Z
U+010C LATIN CAPITAL LETTER C WITH CARON
U+0395 GREEK CAPITAL LETTER EPSILON
soulofmischief
When serving that many languages, a search bar is paramount.
thaumasiotes
> The Chinese languages don't seem to be in stroke order (no expert here)
They are for me. In the Asia section, 中文 ["Chinese"] is listed first, followed by 吴语 ["Wu"] and then 粤语 ["Cantonese"]. Stroke order is first by stroke count and then by an obscure criterion that I don't know (and that, in my experience, Chinese people living in China also don't know), but stroke count is unambiguous and these are in order: 中 4, 吴 7, 粤 12.
Note that they aren't in alphabetical order: 中 Z, 吴 W, 粤 Y.
Japanese appears between Wu and Cantonese for unclear reasons.
matvore
It is sorted FIRST by radical and SECOND by stroke order. This is roughly equivalent to the Unicode codepoint sort if you stay in the basic multilingual plane. The order also puts literary chinese afer wu Chinese, which breaks with a pure stroke-count sort:
中文 - 中 = 丨 + 3 strokes
吴语 - 吴 = 口 + 4 strokes
文言 - 文 = 文 + 0 strokes
日本語 - 日 = 日 + 0 strokes
粵語 - 粵 = 米 + 7 strokes
bawolff
> Well, it's in an order, but I don't know about alphabetical. I clicked on today's English featured article and looked at the languages
This depends on whether you are viewing desktop site or mobile site. It also depends on if you have a non-default skin set in your preferences.
Seems like desktop (vector-2023) does the region thing.
Mobile does alphabetical by language name (i imagine codepoint order but i didnt check)
Some other skins are alphabetical by bcp47 code.
e-topy
And it even remembers what you chose last time and pushes it to the top. That is UX. Being actually helpful and not fucking annoying.
whstl
Oh nice! I never noticed that "Suggested languages" shows languages I previously selected.
But additionally, I like how it's not simply "pushing to the top", it does shows a previously selected language on the top, but it still keeps it duplicate in the list below, in case the user is going by muscle memory.
To me this is the best way.
Either make it VERY OBVIOUS that you're removing the item from the bottom of the list (which wouldn't be possible here), or don't remove it at all.
If I had a cent for each time a SaaS made my life harder by trying to "help me" I would be CEO of every SaaS I use.
TheJoeMan
I can give a perfect bad example: the Youtube app on my iPhone somehow determined to change to Amharic. This is the Google support article: https://support.google.com/youtube/answer/87604 telling me the buttons to press in English. Also, I don't know/speak Amharic, and so at the time had no idea what language it was, and the iPhone translate doesn't even recognize this Ethiopian language. Bit of a pickle that could have easily been mitigated by a universal multilanguage icon.
JumpCrisscross
> the Youtube app on my iPhone somehow determined to change to Amharic
Was this about 6 weeks ago?
TheJoeMan
Yes, actually. Is there an article about it? After updating to iOS 18.4, Amharic was appended to the end of the list of preferred languages in the iPhone Settings app. However, what's interesting is it was ranked below English, and apps are supposed to use the languages list in order, but perhaps Youtube is alphabetically sorting the list?
distances
Or the ChatGPT app which can be baffling. My phone language is English, I've set ChatGPT app specifically to English in the app settings, I ask my questions in English, and every now and then it still decides to answer in German.
hombre_fatal
You can set the language individually per app in the iOS settings. But I thought it defaulted to your global setting.
tlb
There are two levels of this. If I get some other European language, I can generally figure out which is their word for English and it's not a big deal to switch. But if it gives me a script I don't know, like Bengali or something, it's a problem.
Perhaps every "choose language" menu should include English and Chinese in non-localized form, as an escape hatch, since almost every web users can recognize enough of them to navigate a menu to find their actual language.
adastra22
Just include languages in their own script only. Why would a user need to select a language from that menu for which they DON’T know the target script? Showing Bengali in Bengali script is exactly what you want.
bawolff
True, but how often do you want to select a language you can't read?
derf_
My favorite is the sites who do parse Accept-Languages, but then pick the last one in the list instead of the first. I have mine in rough order of my competence in them, which gets me my least-competent language on some sites even when my most-competent is supported.
I get a kick out of it when I see it, because you can understand how it happens. "Well, at least you tried."
bmn__
It is wrong to blame the server here. For better results in content-negotiation, a user-agent should allow you to assign numeric weights instead of just a list (implying the same level of preference). Example:
Accept-Language: en;q=0.7,pt;q=0.3
If you already send something similar to this, and the server gets it wrong, then this is an outright bug, the software or its operator is out of compliance with HTTP.drtgh
This parameter, at first glance, appears to be used as numeric weights for automatic translations served by default, what turns browsing very uncomfortable (wrong translations, distorted texts).
Ie. Google, Youtube, Reddit.
Automatic translations should never be served by default, but only be loaded if the user requests it. The classical "do you want translate".
gus_massa
99% agree, but there is a problem on mobile, to switch from Spanish to English when I click the glass to search for alternatives. I have to type "Ing" (that are the first letters of "Inglés") while it shows "English" in the list of matches. It would be better if I can type both "Ing" or "Eng".
netsharc
It's even more amusing when the displayed list looks like it's sorted randomly, but in reality it's sorted alphabetically in a different language to the display language..
e.g.
Nederlands
English
Français
Deutsch
Espagnol
(but if sorted in English: Dutch, English, French, German, Spanish)elric
I don't understand why you would want to select Inglés instead of English? You want to selecf English, or Español, or Nederlands, or Deutsch, or whatever language. If makes no sense for it to be translated.
gus_massa
Only in a very few weird corner cases. If it's an article about a city in Germany, I may like to see the article in German and use autotranslation to read t in English or Spanish.
Sometimes the article in the local language has more info. I had that problem in comments about places or events in Argentina. Sometimes the English article has less info than the Spanish article, so I made a link to the autotranslation.
lxgr
Ironically, given TFA, it seems to be primarily using the user's IP:
> How does Universal Language Selector determine which languages I may understand
> ULS queries a service that determines your originating country based on your IP address. This is inaccurate in some cases. Based on the country code, most often spoken languages are suggested for you.
(from https://www.mediawiki.org/wiki/Universal_Language_Selector/F...)
tapia
I also hate the youtube "feature" that translates the titles of videos to your setting's language. This is so annoying. I can understand English and don't need these automatic translations.
lucasoshiro
> I can understand English and don't need these automatic translations
I think it is far worse than that:
1. If I don't understand a language, probably that video is not for me. Most videos targeted for international audience are in English, or at least the author translated it by theirself.
2. Titles are small sentences, and they don't have enough context to be translated. Once I saw a video called something like "Vamos assistir uma conexão com o passado", which in Portuguese means "Let's watch a connection to the past". I needed to de-translate it in my brain to understand that the original title was "Let's play A Link to the Past"
3. Online resources are a great way to exercise a second language. So, please, don't underestimate my capabilities. At least let me try to read in the original language by myself, if I need the translation I how to use Google Translate or a dictionary.
I reckon that this feature makes the access to online content more democratic, it's ok. But at least let me disable that since it makes the experience worse
marcosdumay
There's a video that Youtube keeps sending me with a translated title "O segredo das lavadouras" (what translates to "the secret of washing machines") that is about picking screw washers...
But the real problem is when it decides to translate the titles of some perfectly watchable videos in English into something that uses the Cyrillic alphabet, what has no relation to my accepted languages, and is only used half-way across the world from where I am.
avhception
My computer is set to English even though I'm German, and sometimes Youtube will treat me to this really uncanny machine voice with really weird phrases because it auto-translated some German video or advert. Lidl is worth it, ja!
FinnLobsien
I absolutely hate this. I have the exact same thing. Even if the technology was good, I speak both languages and want to see the original.
Why is it so hard to just add something as a setting/feature and offer it to people without forcing it on the user?
bunderbunder
> Why is it so hard to just add something as a setting/feature and offer it to people without forcing it on the user?
Office politics. Google is famously "performance-driven", so the manager in charge of that feature needs usage metrics to be high for the sake of their own career.
(Speculating, of course.)
preisschild
This would also be good for movies :D
I can speak german, I don't need forced subtitles for the nazis
avhception
I wonder if Lidl or the other advertisers know and approve of this.
dgb23
Same here. My native tongue is German, I live in Switzerland, but my settings on all devices are English.
I do this on purpose, because I find everything is more searchable. I don't even know any German terms for most technical things I might search or look for. So even if the automatic translations were good, which they aren't, this would be a non-feature.
My browser already tells them what my preferred language is. Just use it.
netsharc
Living in Zurich (German part of Switzerland for those who don't know), Windows 10 in English, the built-in Microsoft Store used to offer content in... French.
Now it's a mix of German and English, e.g. 1 heading is "Spiele-Bestseller", and the next is "Best selling apps". And prices displayed as "28,00 CHF" (correct would be to use the decimal point).
Like Van Halen's brown M&Ms, it just shows how sloppily this thing is programmed: https://www.snopes.com/fact-check/brown-out/
pjmlp
I thought I was the only one getting such a messy ads.
At least I know I didn't mess anything on my WebOS TV.
qiine
its especially funny with asmr video, not gonna lie the first time I was beyond confused
numpad0
idoundernotstandwhothisfeatureisdivisiblebytwoinproductionandi
just dislike video and move on. I'm guessing Google wants uploader penalized, and I do feel sorry but it's not my problem.
genocidicbunny
Not only the titles, but also the audio track. There's a few youtubers I regularly watch who are trying to branch out into some additional languages by providing fan-made translated audio tracks, and english is sometimes one of those. Every single time I watch one of those videos, I have to manually set the language back to the original because often the translations lose some of the word play or hidden meaning in the original language. Often it also means I need to rewind the video because it started playing before all the controls have loaded (because youtube hates FF with youtube-related extensions) and I could swap the language track back.
One of the sister replies linked to an extension to help with that, which I'm going to give a try, but it's annoying that there's not a simple toggle in the youtube settings to tell it to always use the original language. On the rare occasion that I want to use the translated audio track, I can do _that_ on my own; I speak enough languages that this is a very rare occasion with the type of content I watch.
This isn't even something I can understand as them being hostile to ad blocking or wanting to push ads. This is a 'convenience' feature that is just poorly implemented. But I'm sure there's some PM that got a pat on the back for it.
vintermann
I'm sure YouTube's algorithm rewards people for using this feature and making their "content accessible", but if you serve me up an ugly machine translated Norwegian title rather than the English one I could read just fine, that's from my experience a signal that your YouTube channel is low quality algorithm-chasing garbage, so I click "never recommend this channel".
bmn__
What a catastrophe. You punish the wrong person, and even worse, a channel owner will not even receive that signal! The vast majority of channel owners with English content is not aware what's going on. A friendly e-mail to the channel owner explaining the problem and asking to manually disable auto-translation is much more likely to achieve what you want.
If you want to get rid of auto-translation on a systematic level, provide feedback to the operators of Youtube through their official communication.
clan
So what you're saying: Please complain through proper channels and hope they accept your input?
Or should he just keep using the signals he gets and immediately clean up his feed?
I actually see this as a feature. YouTube recommends a lot of garbage. I suggested that they improved my feed but they implemented this signal instead. I use the exactly this method to weed out a lot of content I do not care for.
You cannot tell the 500 pound gorilla anything. I prefer my videos without subtitles. I have that set as a preference. Yet when chromecasting it is common for the subtitles to spontaneously turn on. And has done so for a long time.
English is not my first language and my first language is not widely used. Hence I am not used to dubbed movies/programming and I am used to seeing subtitles.
If a native english speaker could understand the horror show that the machine generated subtitles are. If you are used to subtitles they are extremely hard to ignore. You will then read and get the understanding (often hilariously wrong) before the audio catches up and you might end up rather confused.
I can understand an American might have a hard time watching a subbed German movie. Thats natural because it is not common. But when you grew up with subtitles it is actually effortless. Except when they are poor. Then it becomes worse because of the cognitive load of 2 languages and the effort to figure out what is correct.
Dear english only speakers: Translation is hard. A poor translation is worse that no translation as it obfuscates the message. AI is not there yet at all. Maybe impressive but often not helpful or plain and simply distorts the real message.
vintermann
The vast majority of videos are not translated into borked machine-Norwegian, so if this isn't something you opt in to, it's something everyone opts out of (I doubt it).
> A friendly e-mail to the channel owner explaining the problem and asking to manually disable auto-translation is much more likely to achieve what you want.
No it isn't, because I see what kinds of channels do this, over and over again. They're very clearly publishers who don't care that they make something objectively worse as long as the algorithm rewards them for it.
> If you want to get rid of auto-translation on a systematic level, provide feedback to the operators of Youtube through their official communication.
Ha, as if they ever read that. Probably more Google employees will read this comment than will ever read any of my (many) "please stop translating things without asking, I know where to find machine translation if I need it, doing it without asking that means I have to translate back from broken Norwegian into English in order to understand what the hell you were trying to say" feedback reports.
bluGill
The channel I'm interested in would be of great interest to English speakers. There are only a few people brave/stupid enough to travel to dangerous places (Ukraine near the front) to do a documentary. I cannot blame the author for turning on the translate, it likely overall expands his reach and is a good thing for those who are not interested in his native language. However I'm trying to learn his native language and getting dropped to English out of my control is not helpful to me.
null
SpicyLemonZest
Youtube really doesn't make it obvious that a title got auto-translated. I now realize that I've seen this happen before, with a video that had a different title on my TV than on my computer, but up until this very second I thought it was my TV's fault.
Even being aware of this - how do I know that it's an auto-translation, rather than someone making AI slop in my native language, without watching the video?
gus_massa
I guess it's the default option. I've seen a few good channels that have that "feature" enabled. I hate it too.
sph
Now Reddit results are translated as well in Google, Kagi, so you think you have found a relevant response in your language, but it's just a machine translation from an English post.
hengheng
Leads to foreign-language posts on English-speaking small subreddits as well. I see plenty of Portugese, Spanish, Italian and German in communities that barely have enough traffic to debate in a single language.
But nobody pays to get answers, so it's alright.
aequitas
At least for Kagi they seem to working on solution[0]. But Reddit seems to be fighting back by translating server side so it's no longer detectable.
[0] https://kagifeedback.org/d/5212-low-quality-translated-reddi...
sph
Thanks for the link, good to know. Gives me a fuzzy feeling to pay for a search engine whose devs you can actually interact with and are actually working on improving their product.
fifnir
I've been noticing the same, this completely breaks searching for reddit results for me
nilslindemann
Try "Reddit Untranslate" addon.
xeeeeeeeeeeenu
You can filter them out by adding this operator to the query:
-inurl:?tl=
captainpiggies
It's even worse for videos with "official" dubs. I have been jump scared by German and French dubs on certain videos recently, I distinctly remember MrBeast, Mark Rober and Nick DiGiovanni. I have set my language to English and my Region to US (worldwide) I don't know what gave YT the idea to preselect these dubs for me, I have seldomly even watched a video that is not English.
whstl
Yep. Youtube is the worst:
- If I select German subtitles for a German video, it will auto-translate all English subtitles to German in the future.
- If I select subtitles for an English video, same.
- If the video has an Arabic, Hindi, French human-made subtitle to help that audience, it shows it to me instead of the automatic captions
Horrible.
Freak_NL
And you can't turn it off. I really hate this non-feature.
cypressious
Agreed. I use https://addons.mozilla.org/de/firefox/addon/youtube-anti-tra... to work around it.
apples_oranges
Using Brave on iOS I haven't encountered it yet. Perhaps it strips some information? But with the official YT app I have, and it was both fascinating and annoying.
echoangle
I don't even get the point of that. If I need a translation of the title, I won't be able to watch the video anyways. At least ot makes some sense with the horribly auto-translated videos now, but they had the title translation for a long time while the video was still the original language.
bunderbunder
So much this. I also hate the implicit assumption that everyone understands just one language that's baked into this kind of design. I can comfortably read in four languages, and naturally prefer the original language to (typically) bad localization. So your guess at what language I would prefer based on my IP is virtually guaranteed to be wrong. Seriously, just look at what languages I'm already telling you work for me. There's no reason to assume I'm not smart enough to correctly configure my browser's language settings.
It gets even worse with YouTube and their awful AI dubbing that's always on by default. So now for solidly half the videos I watch, I need to (1) open it, (2) click through the settings to turn off the AI dubbing, and then (3) rewind back to the beginning and start over. It doesn't take a lot of time, but it's incredibly annoying.
danhau
YouTube‘s AI dubbing is truly awful. It took me 5 minutes to realize the audio I was hearing was coming from the video itself, and not some random ad in a different tab.
I also don‘t like that video titles are shown translated. It‘s so weird when I‘m watching a video in spoken English, yet the title is in a different language.
tuetuopay
It's especially painful since they don't translate all subtitles.
I'm french, but my browsers are configured for English. Some (but not all!) english titles are translated to french, and some french titles are translated to english. This actually caused me to miss a few uploads from channels I'm subscribed to, as the language of the title is part of my mind-filtering for those channels.
bluGill
I even have Spanish set in Google as one of my known languages and it still auto translates everything to English. I'm not fluent in Spanish, but one of the well known good ways to get there is to consume native content, but YouTube makes that hard.
doix
My biggest annoyance is with Google. They know who I am, they know I am traveling, they know my language preferences (English) and yet I still get language based on my location on certain pages.
I let you track me Google, please use it for some good UX and not just advertising.
kiliancs
Indeed. Catalan speakers have Spanish forced down their throat no matter if Spanish has never been associated to the Google account in any way, nor in the system or browser language preferences.
In my case, I live in the United States, but Google is determined to serve me Spanish results even for Catalan-related queries. E.g. preferring the Spanish Wikipedia. The search engine's behavior has had ups and downs over the years, but it has never been great.
This is very much a problem for my children, who don't understand Spanish, as well as for the Catalan-speaking regions of the world that are not in Spain, including Andorra.
In my experience, Gemini easily flags any Catalan content as unsafe and prevents the conversation from continuing. Even for prompts like "summarize this article". This may have improved lately, but still.
Google used to be an example in sensitivity to the world's diversity, being a responsible major player. Way back. Now, although I applaud some efforts multiple teams continue making, it is obvious this is no longer a priority.
Jotalea
>In my experience, Gemini easily flags any Catalan content as unsafe and prevents the conversation from continuing.
I'm curious, what are the keywords that trigger that?
dkjaudyeqooe
Indeed, somehow Google is the worst offender with this.
Lately they've decided that auto translating the local language into English in Maps reviews is the wrong thing to do. They translate every other language into English but somehow since I live in this place I must speak the local language too, so I don't need that in English.
Ditto for search results. Surely you want Wikipedia in the local language! I mean you've been there for so long! You search for things in the local language, surely that's a sign of your preference and not the fact that searching for things locally requires use of the local language.
This also applies to so much other "we must make our software so smart and guess all your preferences". Google fails so consistently at this I cannot understand why they persist other than some sort of misplaced corporate self regard.
edarchis
I've had this argument with a Google Developer.
He told me that for efficiency, they had different stages in the content rendering and that the main page structure didn't have your user information yet. That's rubbish IMHO because the accept language header should be readily available in that phase.
MoreQARespect
I've seen similar dysfunctions in other big orgs where a feature or bugfix would need to cross team boundaries and the outcome inhabits zones of vaguely defined responsibility.
The guy you argued with sounds like they were semi-justifying this with the typical "noogler" rose colored glasses.
Zak
> He told me that for efficiency, they [had to make a broken product]
That's called premature optimization.
scotty79
My worst experience was that after arriving in a new country the Play store didn't show local apps because my Google account was assigned to the old country. And changing the country wasn't easy and meant abandoning the old country and it's apps. Since I travel a bit back and forth I ended up buying a second phone and creating an account for the new country.
tamirzb
This is indeed extremely annoying and I never understood why so many apps are configured to only be available in specific countries. Like what at all do they stand to gain doing this?
Google will then go on to complain about users installing APKs from shady sources but this practice pushes users to do so. I'm sure a decent amount of users ended up with malware on their phones just because they wanted to install an app that wasn't available in their listed country.
makeitdouble
You solve it the best way to fit your case I guess. On android I created a set of alternative accounts that each belong to a different country.
All accounts can be active at the same time on the same phone, there is a dropdown to switch in the Store app, and that works even with a work profile on the side. I've yet to see real downsides, except for course remembering which account is on which country and manually switching.
scotty79
Thank you. I may try the same when the time comes to ditch the old phone.
aembleton
Its strange that Google knows I live in the UK and speak English. When I'm signed in to a TV in a hotel room in Spain watching English YouTube videos it then shows me a Spanish advert. Just feels really silly when I don't understand it and they know full well that I don't understand it - still they can charge the advertisers.
pona-a
When I was in Romania for my IELTS, I could not use Google Maps. Despite my Google account specifying my preferred languages as English, Ukrainian, Russian in that order and my Accept Language header set only to English, that was not enough to not discount those preferences as a configuration error and serve me Romanian.
Using Google search, which luckily did not decide to show me "local" results to an English query like it often does home, I found a support thread suggesting I set my Accept Language to have something other than English as a second language. Lo and behold, the page decided to now respect it.
knorker
Yeah it's amazing that Google is the worst offender.
I think this is because half of Google live their entire career in California, so they don't know about other languages, units, time zones at all.
It's weird, because they employ SO many foreigners, bringing them to California. But somehow upon arrival they all get memory wiped about the existence of anything outside the bay area.
Other companies do this right. Google is user hostile.
No. I will NEVER navigate by bike, foot, or public transport in these strange America-only units.
theshrike79
About a decade ago Google decided that all maps in Finland should have the street names in Swedish.
Which is kinda valid, in the southern and south-western parts this is done because there is a significant Swedish-speaking minority so most cities and streets have names in both languages.
But at the time I lived in central Finland, where the streets DIDN'T have official Swedish names, they just ... translated them. Which was super fun for navigating.
xorcist
Much more importantly: Never ever auto-translate content to the user's language.
Present what languages you actually have the data in. The user is smart enough to click the "translate" button in the web browser should they want. That translation is also likely to be better quality.
English is not my first language. Or my second. But I understand it well enough to work in it every day. And I never ever want to wade through auto-translated garbage just to find the right button to read the original English version. Because for some reason this is only a problem for English, web sites using other locales never do it, which should be indication enough that international visitors hate it.
If you ever think about using machine translation tools for you web site, first you must do a full translation round trip for every language before publishing. Translate, paste back the result and translate back. That is roughly what you intended to publish. Don't do it.
dominicrose
I hate reddit because it auto-translates to French and users have a specific style that would be hard or impossible to really human-translate anyway. Even if I didn't speak English the translated content would not be worth it.
The feature to change the language or show original content is hard to find and it depends on wether it's the app or mobile web or desktop web.
They also try too hard to make us download the app but that's an other issue.
carlosjobim
Machine translation has been good enough for a few years, that even native speakers don't notice it.
lesostep
Which makes it soo much worse, actually.
I often go through a few sentences or even entire paragraphs before stumbling onto something that doesn't make sense. And then I have to go back and reread everything.
Microsoft documentation is the worst offender. Their "some parts were translated automatically" notice is hard to, well, notice. And their translation is great! — until it doesn't work, because UI has different translation.
carlosjobim
How would it be better if you couldn't read it or write it?
int_19h
If done with SOTA LLMs, yes, depending on the language (although even then I would dispute the "even native speakers don't notice it" part).
But SOTA LLMs cost money, so what you usually get in practice for auto-translation at scale (like YouTube) is around Google Translate level, which is hardly good enough.
carlosjobim
I don't know what level you consider DeepL or Kagi Translate, but those two can translate at a level which is indistinguishable from a native speaker.
makeitdouble
> Every browser sends an Accept-Language header. It tells you what language the user prefers, not based on location, not based on IP, based on their OS or browser config. And yes, users can tweak it if they care enough.
This is also a broken assumption.
First, Accept-Language is an ordered list, and most daily-multilingual people don't have an absolute order of preference, and more a topical list of preferences.
If I read an English news site that has a translated French version, it doesn't matter if I'm most proficient in French, I'll want the English version.
Then, as an affect of the first point, users will specify their most practical language, not some actual preference. For instance local non-English sites tend to do less shenanigans than international English ones, so having one's language set as English only will force English display for the former, with few impact on most other sites.
A French site ignoring all preferences and just pushing the French version by default actually helps in that case.
If anything, I just wish site owners stopped trying to be cute or clever and just had a very obvious and quick interface to switch to other versions. Wikipedia does it decently well for instance.
Freak_NL
> If I read an English news site that has a translated French version, it doesn't matter if I'm most proficient in French, I'll want the English version.
The solution there is not to abandon the very useful Accept-Language header, but to never offer half-baked translations. Is your website multilingual? Fine, but only offer fully translated and verified translation sets. It's OK to have your UI and your own content translated in a few languages — for a company that may make sense depending on their target clientele — but you'll have to maintain all of these and keep them in sync.
However, user content is off-limits. No automatic translations unless you only offer those under a button to be helpful (like 'Spanish detected, click to show an automatic translation into English'), but really, leave that to the user's browser.
Use Accept-Language to pick a language, and then offer me a way to switch in addition to that. That's all there is to it.
> Wikipedia does it decently well for instance.
Wikipedia doesn't do that. Each language is its own instance, where content may be ported to by translating it (or parts of it), but outside of the Mediawiki UI texts, it is not a translation of the same content. The Dutch version of the lemma 'Language' is a different article in a different language with some overlap. There is no claim made that it is the same article in Dutch. It is hosted on a different sub-domain and path on purpose.
watwut
> Fine, but only offer fully translated and verified translation sets
No, I do not want the translation at all, unless I say so. Really. Even if it is the best translation in the world. I want and need to choose the language I will read or watching something in.
makeitdouble
> never offer half-baked translations
Sadly that ship has sailed.
We can look at the reaction from smaller youtubers as auto-dub rolled out. Most are sympathetic to the quality issues but are seeing it as either a "good enough" or at least a "better than nothing" feature that helps them expand their audience with no visible cost on their side.
Or official government sites that have explicitely disclosed AI translations and didn't bother passing it through a regular translator.
This situation just won't get better. Except perhaps the day AI is actually intelligent and we have human being level translators running on cloud servers.
> Wikipedia
Yes, those are not translations, but in that specific case they also don't need to: the quality of the article will vary depending on the editor, but there's no "original" article, so nothing to translate from IMHO.
nulld3v
> First, Accept-Language is an ordered list, and most daily-multilingual people don't have an absolute order of preference, and more a topical list of preferences.
Technically Accept-Language allows you to specify a "quality value"/weight for each language... https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/...
IMO there is a lot of improvements that can be made by both the browser and websites:
Websites should probably allow users to override the browser-requested language. But browsers should also allow users to choose between "Site default", "Request system default language", "Request English", "Request Chinese", "Request Spanish", etc. on a per site basis.
Most optimally however: sites should expose a list of supported languages, maybe in the manifest.json: https://developer.mozilla.org/en-US/docs/Web/Progressive_web... Format would be something like: `Map<iso639Code: string, Tuple<translationQuality: float, comments: string>>`
Language selection should be done on the client side, not on the server.
makeitdouble
Fundamentally the issue for me is, this behavior can't be automated in an elegant way.
Having priorities and weight and language lists in the manifest help for negociation, but at the core of it, the user will want to choose language based on context and content.
> Language selection should be done on the client side, not on the server.
Yes.
Using a site specific list on the client side could also do it (let's say I always want Facebook in a language and Google in another, Linkedin in yet another etc.). It still will be pretty cumbersome, probably needs an auto-save and sync of the preferences, and still hits problematic cases, but it would be the most pragmatic solution.
The worst instance of it is IMHO the way Google Maps work, changing language based on the country gives the best display (local names in the proper writing, no internationalization), I wish there was an easier way than screwing with the Google account preferences. As you point out, having clients able to unambiguously request a specific version at each requests would gives us so many more options.
nulld3v
> Having priorities and weight and language lists in the manifest help for negociation, but at the core of it, the user will want to choose language based on context and content.
Yup, agreed. I highly doubt most websites even look at those weights in the Accept-Language header anyways.
Having a list of supported langs in the manifest costs nothing. Lazy-load the manifest when the user goes to use the language selection dropdown, or when the response from the server is in a different language than the one requested in Accept-Language (check Content-Language or html `lang` attr).
Looks like there's a name for this, but no standard: https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Con...
poulpy123
It cannot be fully automated but if we can automatically select a language based on native or translated it would cover 99% of use cases
tuetuopay
No, please, don't force a language list. I don't have a "ranking of the languages I want to read". I want the original language of the content, with a quick button to switch.
account42
> First, Accept-Language is an ordered list, and most daily-multilingual people don't have an absolute order of preference, and more a topical list of preferences.
No, it's a partially ordered list.
> If I read an English news site that has a translated French version, it doesn't matter if I'm most proficient in French, I'll want the English version.
Then you should have both with the same priority.
hnfong
> Then, as an affect of the first point, users will specify their most practical language, not some actual preference.
Where does this assumption come from? Given the fact that many (most? almost all?) sites don't honor the Accept-Language header, I doubt that there's much game theory going on in users' head when deciding this configuration.
Aachen
They're right. Try to find a Dutch IT person with a laptop not set to English. Only a small fraction will realise you can set more than one language and put Dutch as a second, even though many struggle beyond basic reading comprehension in English. They're not picking it because they're just as good, much less better, at English compared to Dutch
We definitely pick languages that work as opposed to languages that we speak. Setting it to Dutch is just worse: UX doesn't fit, english search results wouldn't show up (way fewer results/content/info), and translations often don't make sense (imagine a button called "you shut it" on a modal window, it's a literal translation of one interpretation of the string "close it" but you'll be confused as to what that button will do)
jeroenhd
The language set defaults to the language set in the OS, which is usually the preferred language for most users.
You have people working in IT who set their language to English for easier troubleshooting (i.e. not needing to Google error codes), but they're a small minority.
makeitdouble
Anyone handling more than one language daily will be doing an explicit choice, and I wouldn't say they're a minority.
If your native tongue is Spanish but you live in the US for instance, the "preferred" language in your browser has IMHO a higher chance of being English. Same if you live in India probably.
makeitdouble
I'd assume most WordPress based sites handling multiple locales will switch based on the Accept-Language ? Same if they let a framework handle the switch instead of a home-baked solution.
Even for auto-translated content, I wouldn't be surprised if it was off-the-shelf plugins that handle the switch.
All in all, I think it takes more effort to ignore the Accept-Language header. That won't prevent sites from tweaking it or doing their own cooking, but it kinda requires intent.
Ensorceled
I worked on a project where I was responsible for implementing accessibility and multiple language support for a government adjacent site. I used Accept-Language to decide which of our supported languages to use as the default. The PM over-ruled that decision and forced a EN default.
The accessibility auditor put "use Accept-Language" into they audit report as a "red" item and then ripped the company a new one when they found out it had been initially implemented that way but then reverted.
I got another couple of weeks of contract work for this and other such stupidity.
bemmu
Seems this is a free-for-all to drop language gripes, so here's mine about Apple TV.
Have a family member who only speaks Japanese. My Apple account is in Finland. We wanted to watch The Martian together, but can't select Japanese dub even though that audio track definitely exists. They just don't show you the options not relevant to your account country, and the only way around is to change your whole Apple account to a new country.
Which you cannot do while you have an active Apple TV subscription.
End result: unable to watch Apple TV as a family.
netsharc
My guess is there's licensing issues, i.e. the Japanese language dub isn't licensed to be played in Finland... in this case the moronity is due to copyright laws/lawyers.
jiehong
I don’t buy that argument. Sometimes if you buy the movie you have more audio choices, on the same platform.
If you buy the Blu-ray, you likely have tons of languages not present in the streamed video.
netsharc
And streaming vs. distribution licensing laws differ... ask a copyright lawyer near you.
anigbrowl
You'll get regional languages. I would be astonished if a blu-ray of a non-Japanese film bought in Europe had a Japanese soundtrack.
frollogaston
If buying on the same platform unlocks more languages, that sounds even more like a copyright thing
jurip
Netflix had a similar oddity, also in Finland: if I recall correctly there's an account language setting, and you have to set it to English to see Kim's Convenience. No need for a VPN, no need to claim you're in another country, but it's just hiding the content unless you've set the right language. Even if we're using English subs when watching content from the Finnish language UI.
fabian2k
It's entirely ridiculous when you're abroad. Also annoying when in your home country, but the localized versions are not equivalent like e.g. programming documentation. Even in the ideal case you'd probably prefer the English original, but often they're machine-translated anyway and much worse.
Another extremely annoying thing I've noticed more often now are machine-translated versions of content in the search results. Reddit for example does this now, and it's just terrible. One of the main reasons I use non-English search terms is to get non-English results, e.g. because I'm looking for information on topics that is not globally applicable.
9dev
Right. You can basically hear the product team at Reddit humming star-spangled banner while conceiving this feature for themselves as monolingual people. The rest of the world can understand multiple languages just fine, thank you very much.
Tmpod
Yes, oh my Lord I've been getting seriously frustrated with Mongo's documentation lately. I'm not sure if it picks the language based on location or Accept-Language, never played around with it, but it's behavior is deeply rage-inducing.
I do a web search and get a list of results for the English version, open it and it automatically changes to PT-br as soon as JS loads, but then, after a few seconds, once the page is fully loaded, it jumps back to English, while keeping the /pt-br/ slug in the URL...
What the heck??
And yeah, the translation is very obviously not human made or reviewed. Furthermore, I'm PT-pt, so the differences to PT-br just make the experience even more annoying X)
donatj
I have told the story here before, but I built a neat little system to parse Accept-Language weighing the users priorities and using the closest thing we have on offer to the users preferences. As an example, we have a Brazilian Portuguese translation but not Portugal Portuguese, so we would offer the prior to users requesting the latter for instance unless they had a lower priority but more exact match.
From my technical standpoint it worked really well and the code was very slick. It was a lot of fun to build.
From a user standpoint most of our users really just wanted English regardless of their Accept-Language header. They had the option to change it in the footer but this apparently wasn't obvious enough.
We just ask now, and our users are happier.
Aachen
You ask, as in, whenever I visit the site without having your cookies stored, I'll get a language selector wall first?
I run into those regularly and it's always a struggle to know how to stay on the damn page I clicked on: will the "continue" button use the preselected value or will it dismiss the pop-up and continue on the current page?If the former, is the preselected value the page I'm on or a different language? Can I guess which locale I'm on to select that and dismiss the pop-up then? Can I inspect-element→delete this modal and just sidestep the whole problem? Even just a small close button is a luxury on these language walls...
95 out of 100 times, I'm fine with whatever language I clicked on, and if I want your German version for locale-adjusted shipping info or payment options or whatnot, I'll look for a language selector on the top right or, alternatively, in the page footer. If it's in one of those two places, I'd be much happier about a web without JavaScript-based pop-ups constantly
donatj
We're a paid SaaS so I don't think it's as much of an annoyance to be asked once per browser.
It's just a separate page you hit after signing in if we don't have your preference. You click on the language you want and you are redirected to the dashboard.
The option to change it still exists in the footer.
Aachen
Okay, must say that does sound like a very acceptable flow. You'll have the user logged in at that point so can store it and never need to ask again. Was expecting you built this for regular websites, my bad!
binarymax
Yes! I still want to default to accept-language, but asking is key. What is your pattern for giving the user an option? I like this article in that it rejects icons, but I don’t like how they arrive at one language for multiple regions https://usersnap.com/blog/design-language-switch/
donatj
We literally just have a box that pops up with "<language> (<region>)" in each of the native languages. It gets saved to a long lived cookie rather than the user's account for some business reasons.
tgv
I expect many people will have it set to their OS default, and they are just accustomed to it, and don't know how to change it.
draw_down
[dead]
vaylian
I really wish for a language setting that says: If the original text is in one of the following languages, use the original text. I might not be equally fluent in all of those languages, but reading the original text is better than reading a translation most of the time.
dijit
You’re in luck!
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/...
I wrote about it once; https://dijit.svbtle.com/trusting-the-user-they-know-what-la...
Outlook web actually respects this, which is refreshing.
Vinnl
Unfortunately, that just specifies which languages you prefer, regardless of what the original language is.
I speak Dutch and English, but have English set as my preferred language, because most of the time that multiple languages are available, that is the original language. However, sometimes I'll be visiting a Dutch site that has a (usually badly-)translated English version available, and I'd rather get the Dutch version.
dijit
I think thats bad logic on the server side and not to do with the concept of Accept-Language though.
I would think the ideal prioritisation should probably be:
* Exact (en_GB)
* Exact (fr_CA)
* Soft (en_*) // Any variant of English you might have available
* Soft (fr_*) // Any variant of French you might have available
* Translated. (to first preferred)
for Accept-Language: “en_GB,fr_CA”
jeroenhd
Isn't that what `Accept-Language: *` is for?
You could probably also trick websites into serving the original language by setting a language they probably don't support (how many websites have a version available in Akkadian anyway?) but you'd need to pick something that the Google Translate widget found on many websites doesn't pick up and try to use.
lblume
Modern browsers with auto-translation features always offer the option to "Never translate X" — never translate a language the user speaks.
If websites really need translation (which they very likely do not!), this should be the norm as well.
watson
MacOS has this feature under Settings -> General -> Language & Region -> Preferred Languages. Here you can have an ordered list of languages you wish apps and websites (I _think_ only works for Safari) to use. I don't know how widespread this is in other OS'es or browsers.
oefrha
That's just the standard Accept-Language header, not unique to Safari or macOS at all. It's up to the server to interpret and respond to the header, and they mostly don't do what gp wants, i.e. they usually serve the translated language with a higher q rather than the original language even if it's in the list (and it's mostly ignored anyway in favor of geoip/manual region/language picker).
happytoexplain
It is not the accept-languages header - it affects the accept-languages header. Like the parent said, it is also used for apps (which includes your browser's UI).
nottorp
Don't guess what currency I want to pay in either by the way.
Your payment provider's automatic conversion is most likely more predatory than my bank's so I don't want to use it.
And even if you guess my location right, how do you know I want a badly/machine translated web site?
Aachen
This. Related: if I had a penny for every time I needed a VPN just to load the payment method selection screen (but not for the actual payment, it's not geolocked) just to be able to pay somewhere, I'd get a lot of products for free by now...
Why not let germans select iDeal and dutch users Giropay? They'll not click it if it's not useful for them. Adjusting the sort for what's most commonly used makes sense, but why actively thwart users from paying by geolocking payment methods by IP address...
lxgr
Because then companies would have to charge all users the same price for the exact same service.
Charging customers from countries with higher average purchasing power more and hiding the fact behind "charging people in the local currency for convenience" is much more profitable!
nottorp
I'm talking about those online stores that don't have a (customer hostile) thought out price for every locale, but they have some auto conversion.
When price is set to $9.99 which works out to 47.89287237634 in your local currency. Although it would work out to 45.89327782 if you used your bank's conversion instead of the "helpful" service.
In those cases i don't think the seller makes any extra money, they get their $9.99 minus payment processor's fees. They just think they're helpful but make you spend more for no good reason.
Aachen
Hadnt thought of that, but the price is the same between the two countries I had in mind. Indeed, if there are measures in place to keep products affordable for less lucky/affluent regions, by all means keep those. Just show them all available payment methods, irrespective of the adjusted price
carlosjobim
> Your payment provider's automatic conversion is most likely more predatory than my bank's so I don't want to use it.
As of a few days ago, Stripe is forcing all their partners to offer their customers the predatory currency conversion. There is no way to opt out, except switching to another payment provider with their own problems.
knorker
There may not be any conversion at all. I have cards able to carry balances in multiple currencies. I also have foreign bank accounts.
Billing address is not a sure way to predict currency.
xobs
OVH is awful for this. I’ve given up trying to use their site and always have to open a support ticket any time I want to give them money.
Not accepting Accept-Language is one of my major pet peeves. What makes it worse is that many multilingual websites translate their language-switching buttons and the list of languages to the current language .... which is beyond fucking stupid and defeats the purpose. Wikipedia does this right. The button to switch languages is clear, using a universal multilanguage icon, and a list of languages (using the name of the language in that same language) in alphabetical order, with the most likely candidates on the top (presumably based on geoip).
E.g. an English Wikipedia page will present me with the following language suggestions:
When you assume a language, you make an ass of you and of me. Don't be an ass. Be like Wikipedia.