I've seen language switchers with translated language names that were sorted by the English name. So "Deutsch" was sorted under G.
post
Perfectly comprehensible if you speak english, look:

Is that real?
It's Dutch uwu speak, but the real version would not be much better: "Oeps! De trein is stuk. Wij zijn heel hard aan het werk om dit te maken. Misschien kan je beter fietsen."
(Oops! The train is broken. We're working very hard to repair it. Maybe you'd be better off biking.)
The reality is, it varies.
I just opened the language picker on the first site I had in my browser tabs (happened to be Epic games) and they display the language list using native names for the target language, rather than current language (screenshot attached)
I agree it's much better to do it this way.
As a developer, why it doesn't happen sometimes could just be by accident. If you intentionally set out to localise a site and put all text and menu elements into localisation files to be translated, then the language names are going to end up getting translated too. It takes conscious thought and UX design to realise that it's better for accessibility if that single part of the site is actually just static text, regardless of what language is selected.
And before anyone suggests using country flags in your language picker as a cool solution - please don't, because that sucks too. There isn't a 1:1 relationship between countries and languages and so the flag approach is a flawed compromise at best, and actually insulting at worst.

Yeah okay but imagine clicking the option with an Israeli flag and suddenly the website is in Arabic. That's too funny to pass up.
Probably not so funny other way around hah
It would be way more user-friendly to use the language in the HTTP headers. As a web developer the fact that websites are too stupid to do this really grinds my gears. This is just as bad as assuming the language/region from the geolocation of the IP address.
C’mon guys…
It wouldn't be too much work to hook the request language up to a CMS and then a translation service. You could produce in a couple of popular languages upfront and then when someone with a new language visits a landing page, translate it at high priority (few seconds), then the cascade the next most likely click-throughs in order of popularity (or callout weight if it's new). The translations can then be queued for review, and it will mean you only translate when you need to, and the user only experiences a second or so delay as the translation streams the content above the fold.
the last one piss me off so much, especially when they redirect you and you don't have anyway to load the English version...
It’s like all the developers in the field got handed access to some IP dataset and they’re just looking for reasons to use it. Screw the users I guess?
The customer gets what the customer wants.
I've tried countless times to convince them to just use the browser locale, but most of them somehow keep insisting on using geolocation...
Even worse when a version is actually different. I had to check the US prices in a store once, it decided "nah mate, your IP's not American, clearly you're a bloody idiot, here's your native version" and even when I manually changed the url to US English, as they did languages based on part of the path, it still decided clearly I must not know what I want. I couldn't even try to infer the price, as the product didn't exist on my version of the site.
And aside from that and language pet peeves, what if you're on Holiday? Or live in an area that speaks a lot of languages close together?
As Cousin Mose said, the language is in the header, the fact that some web devs decide the IP address is clearly a better way to figure out what language you want is insane
My Pixel started giving me distances in miles once because I had the system language to English. I needed to change it to English (German) to show me meters. I don't know if they reverted that but at this point I am too afraid to change it.
I have my Google Account set to English, but YouTube still autotranslates all video titles of newer videos to German for some reason...
That's just how locales work. When you set the language, you also get the associated date/time representation, unit system, etc
But you should be able to set the locale separately from language. You can easily do that on any Unix/Linux system. In your locale.conf, set LANG to your language and all other LC_* variables to your preferred locale.
Systems that do not allow this are badly designed. For a lot of multilingual people, locale and preferred language are independent.
Yeah but it didn't say locale or location, it said system language, that is what i was confused about language =/= location.
And that is just an example of horrible UI. Locales should not be tied to those things. Maybe set the defaults but not forced.
My pixel set to Australian English works fine in metric. I presume you chose British English where they use miles rather than kilometres, of course that works for me as I also want Australian spellings
Yes, but it doesn't solve the problem. Even when a website does that, they might still have a switcher to let you override.
We do both.
A) use the language set by the user in their os/browser B) switcher shows the language name in that language
Done, easy, etc. IMO the hard part are great translations and designs that work in languages where every word is a novel. And yet, here we are.
Accept Language headers are sadly an easy browser fingerprint. I therefor have it set to English even though that's not my native language.
There's also the case where you might have misclicked when changing your language, so your argument isn't really a complete solution. It just helps but doesn't fix the main problem.
If you set your language on a website what’s the difference between them using the header versus using the selected language for fingerprinting?
I understand what you’re saying but even I, a person who splits all their traffic between three different VPN tunnels and goes way too far with DNS blocking don’t really care about fingerprinting based on language.
If the person really cares so much they can set the browser language back to English then manually change it on each website they visit. We shouldn’t punish everyone on such a silly privacy preference.
Edit: Yeah of course just downvote me, don’t bother to engage in any kind of dialog.
I'm pretty sure nobody's doing that based on geoip. Client-side, the browser exposes the user's languages choices. And server side, the HTTP header can help. But geoip is totally unreliable, even a broken salesman would not sell that as a feature.
Well ok they would sell it but get a very heavy glance from the dev team.
Have you used the web and/or VPN lately? I send the language header but am bombarded by content in the wrong language all the time.
YouTube (and Google in general) has been horrible for multilingual users (and users who want to see content in a different language than the default for whatever country they're browsing from) for quite some time, but lately it's getting downright unusable without untranslator browser extensions.
this is a region switcher, rather than a language switcher (the website may of course be conflating the two, though)
You are right, it is a region switcher. I didn't realize that, maybe because the "change region" button was in a language I didn't know? :)
Be that as it may, I honestly don't see what difference that would make in regards to OP's point... While it is spmewhat rather ironic, their argument over choice of word(s) in this particular situation is - imo, anyway- not one of semantics, but more of localization.
Either way, whether this is a language selector or region switcher (or any variation on such a theme for that matter), I believe the point OP was - correctly, if you ask me - making is: Whenever a UX/UI element is needed to prompt for proper display language, each language should be displayed however it appears in its native tongue as opposed to how it appears in whatever language is currently selected.
As an added bonus, this also solves the problem of a user inadvertently changing the language (or forgetting to lock their workstation when leaving briefly and returning to find it changed to "help them remember to lock their station when not in active use" allegedly... not that that's happened to anyone I know or anything) and being unable to change it back due to not knowing how to spell "English" in Japanese, for example.
Be that as it may, I honestly don’t see what difference that would make in regards to OP’s point…
OP said that it's from the Fairphone website. The website has separate settings for language and region, language is shown in English and in the language itself, i.e. "Dutch / Nederlands", region is shown in the current language. So the website is actually doing what OP wants.
Ive had multiple situations on websites or in games where i accidentally switched the language to like- japanese or something and then had to fumble around trying to switch it back. On websites at least you can translate to find the right option but i recently installed a game on my steamdeck and the input was all screwed up, and while trying to fix it i accidentally switched the language and then navigated away from the menu. Trying to get back to the right setting with broken input and not understanding anything wasnt fun.
This should be a universal symbol. Like a flag in the corner you can pretty safely assume might be for language. And then yeah each language listed in that language.
Which flag do we use for English?
I won't allow the stars and stripes
Why would they use the American flag for English? We speak American. /s kinda?
Every time I make a tool like this, I try to wind up any Americans in the company by putting the US flag as English (simplified) and the Union Jack as English
It's a fun back and forth we have switching it between the two (inevitably someone makes a PR to put it back, and we go on)
I have seen at least one site where they used the English flag. Luckily I have watched the European Cup a few times and could recognize it.
Wow, the actual English flag, not the Union Jack?

I imagine that would trip up quite a few people even though there is a cheeky aspect of technical correctness to it.
Have different locales for uk and us
because most web developers are morons :/
It's more like "localization is hard and you have a week to add support for it"
Valid comment to some degree, but putting language options in the selected language is always dumber than providing them in the only world language.
The only thing I know about i18n is that it is an annoying shitload of language installer packages for both firefox and libreoffice ^^ That said, however, how you need training for a localization package to provide a language menu(!) - not the translations, mind you - in English, is beyond me. I can't follow the point you seem to be trying to make. There's no reason to not hardcode (in English) a language selection menu, and then display the list of available site languages (and these should be a country flag with the name of language next to it in what may be the language itself)
well obviously you shouldn’t use a Taiwan flag to represent Traditional Chinese if you’re selling in China, dumbass, you shouldn’t need special training to know that… [..] at least a few of the 8 million Ukrainians who speak Russian probably aren’t keen on identifying themselves in their profile with a Russian flag either”
fair enough, that is a good point.
Again, and I feel like I’m repeating myself here, my point isn’t that you’re incorrect, it’s that getting on your high horse about it and calling people dumb
No, I wasn't calling people dumb, I was calling "most web developers" morons, and I stand by that. Most web developers are morons. And the language topic at hand is just one of many symptoms of that. Way more annoying than that is that almost all websites have been fubared with stupid frameworks and interactive sites transmitting each keypress and reloading parts of the page while you are trying to use them / whatever was in your focus before. Interactive websites can be done right, but most of the time they are not, and it's the fault of stupid marketing people and crappy web developers / designers who do NOT refuse to implement shitty marketing ideas.
Most web developers are morons in the sense that most people are morons. They're not especially moronic.
A lot of problems on the web aren't coming from the developers. They're management pushing for stuff.
Like, at an old company the UI had really bad mouse tunnels (mouse over menus and sub menus that close if you mouse out). Terrible interface. But someone in management liked it and no one would approve changing it. Easy to look at it and say we're all morons, but most of the stupid there was from leadership.
Like, at an old company the UI had really bad mouse tunnels (mouse over menus and sub menus that close if you mouse out). Terrible interface. But someone in management liked it and no one would approve changing it. Easy to look at it and say we’re all morons, but most of the stupid there was from leadership.
If more people had a backbone and spoke out / refused to implement shitty stuff, this wouldn't happen. Also, many design choices are entirely on the web developer. Thus morons. I'm not gonna change my opinion until websites become usable again, you're wasting your time on me.
If more people had a backbone and spoke out / refused to implement shitty stuff, this wouldn’t happen.
Thus, it's more than just the web developers 😄 . Product needs to have a backbone to stand up to their boss, too. I fought really hard to get rid of the mouse tunnels at that job, but was blocked by product and one of the directors of eng. It was mostly [office] political nonsense
Also, many design choices are entirely on the web developer.
Not at most of the companies I've worked out. There's a design person or team. Eng can give feedback, but it's pretty rare for them to be given a blank check.
I’m not gonna change my opinion until websites become usable again, you’re wasting your time on me.
That's fine. Some web developers are morons, but some of everyone are morons. We can partially agree.
The languages in a language menu should each be written in their own language. So German should be "Deutsch", English should be "English", Japanese should be "日本語", etc.
If people really insist then at least have a flag emoji
No, flags for languages are a bad thing.
- If you put a Swiss flag, what language would it be? (They speak 4 languages in Switzerland)
- What flag would you use for English? The UK? The US?
More details here: https://localizejs.com/articles/why-using-flag-icons-can-confuse-your-users
I mean, if they insist on everything being in Dutch then at least include a flag. If you're going this deep on the UK obviously having the list in the native language is preferable.
The reason for the list above being all in Dutch might be because it's a list of countries, not a list of languages. (I speak some Dutch)
You use both obviously
that's all fine and dandy until you get a porch of geese angry at you for using the brazilian flag or vice versa
Unicode consortium stopped accepting new flags. Far, far from all current languages are in there. Don't expect there to be an emoji for every language, and fewer and fewer as the current version ages and flags change
And that's regardless of that flags are often a poor language selector (south african flag can mean a lot of things), but if you insist then SVGs of what regions you want to support might be a good replacement
Unicode uses the ISO 3166-1 alpha-2 two letter county codes to avoid dealing with flags themselves.
Those are designed for nation-states, and controlled by the ISO 3166 Maintenance Agency.
Adding the British regions was a mistake imo.
The language selectors in the system I have built are either English or native. And I can tell you, implementing and verifying over 100 languages in their native writing is quite a challenge.
top 99 comments