No - as I said the pages I'm talking about provide no method to change the language.
> To the first approximation, nobody knows what Accept-Language is.
By nobody, you mean end users? No, of course they don't, but they know if their device displays english or thai menus/buttons/etc to them.
So you're suggesting that this is not a case of idiot developers but instead that the Accept-Language header is not reliable, because there are whole countries of non-english speakers using devices that are mistakenly set to English, and they never worked out how to change the language to their local language, so they just randomly hit buttons/menu items they don't understand?
Jap, that might be the case ... for 0.001% of the users. I think using the browsers "Accept-Language" (beside manual language switch in the page) is the only way to go, because it respects the user decision. If the user is not able to make the decision: who are you (=developer) to make this decision?
Jap, i think "users agree" is more to the point (i'm not nativ english speaking). The user "agrees" in some way (because he does not change, or let it change) to the "Accept-Language" header sent by the browser (which correlates to the used browser language (developers switching this value excluded))
No, there are whole lot of non-English speakers whose chrome is set to English but prefers content to be local. (I am one of them.) Accept-Language is definitely not reliable. The only question is which is more reliable, compared to GeoIP.
I speak Korean. For me, it's a personal taste. I actually set Accept-Language to Korean even if my browser UI is English.
This is becoming less a problem than in the past, but consider the case that your browser of choice is not available in your language of choice. For example, you speak Korean but there is no Korean version of the browser. Then it is natural to have English browser UI with preference for Korean content.
More commonly, the browser may be available in your language but translation can be incomplete (only half the menu is translated, etc.), wrong (two different menu items are translated same -- did and does happen), or ugly (your language is going through the turbulent time debating how best to translate computer terms, and browser was translated by particularly opinionated people whose opinion you disagree with). Or some site may have compatibility problem with localized browser (getting rarer, but was problematic in the past). Or...
Actually i still don't get it. The two described use cases result in a "Accept-Language" header that will be send to the server. So its the best choice to deliver the content in the language that the "Accept-Language" header says to use.
If we are talking about location based content, for example sports news, its a slightly different story and needs a additional user option, or forced user option (like netflix videos that are only allowed to be viewed in US).
What I have written so far is based on my direct experience. Here are some other cases:
You absolutely need to run program X, which only runs on English version of Windows. (Developers of program X do not know nor care about internationalization). Therefore you run English version of Internet Explorer.
Older versions of Internet Explorer only sends language(en) without sending locale(en-US). You speak English, live in England (or India), and don't want to get US page.
You are bilingual (remember, lots of people outside US are bilingual), for example live in India and speak English and "mother tongue" very well. You prefer English for computer user interface, but prefer content in local languages.
No - as I said the pages I'm talking about provide no method to change the language.
> To the first approximation, nobody knows what Accept-Language is.
By nobody, you mean end users? No, of course they don't, but they know if their device displays english or thai menus/buttons/etc to them.
So you're suggesting that this is not a case of idiot developers but instead that the Accept-Language header is not reliable, because there are whole countries of non-english speakers using devices that are mistakenly set to English, and they never worked out how to change the language to their local language, so they just randomly hit buttons/menu items they don't understand?