Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

We are defining a language selector for 400 languages. Given the massive number of languages compared to other websites, we applied several mechanisms to reduce the complexity of the language list. The current design is shown below.

Design for the language selector

The mechanisms applied are the following: - Provide a short list to anticipate user needs. A list of six languages is provided based on the browser settings, the geographic area of the user, and previous selections. If the language is not in the list, the user can access a larger list of languages with the aids listed below.

  • Flexible search. The user can type the language he is looking for to reduce the list of possible languages. Search will be flexible so the user can type the language name in a different language.

  • A map for filtering. A world map divided in three regions is used to filter the language list (with the user region selected by default). The world has been divided in just three regions since defining more regions requires more precision in the selection and geography knowledge.

  • A list of languages arranged by script type and region. The list of languages has been divided in different geographic zones and languages are arranged by script type (to make it easy for the user to identify zones of interest in the big list). The list also highlights the languages which are likely the user is interested in.

More context information can be obtained from the project website.

Considering that language selection is a mechanism with a transient posture and it should not interfere the main flow of actions from the user. Is there any other mechanism (or combination of such) that can help to reduce a long language list with minimal distraction for the user?

share|improve this question
1  
You have already done the thing I would recommend... flexible text search. I can find no fault in your described implementation though there could be unmentioned details that are sub-par. –  Myrddin Emrys May 22 '12 at 18:33
    
Quick question: do we know the language the viewer reads? In other words, must this interface be completely language agnostic? There are use cases either way (English user choosing a language vs unknown user selecting interface language) –  Myrddin Emrys May 22 '12 at 21:19
1  
I would generally expect that the language someone would want would be in their browser settings or location would get it - so your initial list of six would catch the vast majority of cases. The case where this is likely to break is when someone is not using their own computer, especially if they're travelling/living abroad. Are there other scenarios you're considering? The only thing I might add is an option to remember the language selected. For Wikimedia I can imagine it might also be quite handy to be able to multiply select a few languages for those blessed with more than one! –  Peter Bagnall May 22 '12 at 21:29
3  
You are definitely on the right track. For your six languages, I would recommend the follow order: 1) browser settings 2) geo location 3) regional location 4)xxxxxx 5)xxxxx 6) English. Always have English on the top six, since this can be fallback option. In my example 1) English, 2) Thai 3) Thai/Chinese 4) xxxxx 5)xxxxx 6) English. –  Daniel May 23 '12 at 2:55
    
...continuing. I live in Thailand, but I don't speak Thai. My native language is Portuguese, but I always use English. Sure, you don't want to repeat languages on your top six, so you need to figure out that too. –  Daniel May 23 '12 at 3:03
show 12 more comments

2 Answers

It's not a complete answer to your questions, but you should at the very least default to the language specified in the Accept-Language request header. That header will give you the language(s) the user's browser is set up to use (in order of preference).

share|improve this answer
    
I agree, using defaults usually is the quickest way help a user choose with minimal effort. –  AsafBO Sep 30 '13 at 6:59
add comment

The flexible search sounds perfect... except that there's a chance the user can't read your instructions to search for a language, so a map is a great backup. The map should be able to zoom in to a country level, since continents have so many languages.

share|improve this answer
    
Not all languages are associated with individual countries. Some are associated with contiguous non-country areas. I'm not sure it makes sense to have a country level map. Since you'd then have to go an attribute each language to a country, and any mistakes on your part could easily violate the user's mental model. –  Racheet Sep 30 '13 at 8:39
    
Associating a single language with a country might also get you into political trouble e.g Belgium, Canada, India... –  oefe Sep 30 '13 at 19:11
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.