1

Is there any standards/guidelines/good practices for making websites with support of different content and UI? I'm interesting in articles/tutorials, that cover this topics.

E.g. there going to be website for multiple countries. And user should have possibility to select UI and content languages separately.

I assume that not all content will be translated, so there should be some mechanism for showing "default language" content for specific page. But again, should this "default" be per site, or per country?

E.g. in some countries (Belgium, Finland) there are several official languages. If one language is unavailable, should default be second one, or English? Another example: many people prefer English UI (no mater of their origin), but want local scales (inches, meters) and local services.

I don't care much about programing languages now, just want to understand what users are expected, what should be scope, and what are good practices.

3 Answers3

1

I just spent several weeks exploring this topic for our company. We are a $2.5B solar manufacturing company with plants across the world, and we need to i18n our applications. We needed to research the areas you mentioned, and more. I found the following book invaluable in my research.

It is: .NET Internationalization by Smith-Ferrier You can find it here.

Very highly recommended.

Randy Minder
  • 47,200
  • 49
  • 204
  • 358
1

There is some discussion on SO about this already see here and here .

Community
  • 1
  • 1
PurplePilot
  • 6,652
  • 7
  • 36
  • 42
  • Thx, that contain many valuable information. It help me to understand that each case is very special, and in some cases (e.g. mine) it is better to have just separate websites. – Konstantin Petrukhnov Jan 14 '11 at 11:42
1

Boy, that's quite a question I doubt a quick paragraph would answer adequately.

IN terms of what users expect, I assume you mean which locale (language/country mostly) to use or to choose. It's called "locale negotiation' and there are a few standard ways of presenting it. Look at what google or ikea do, you'll get a basic idea : which language to use, which settings for basic items like time format, currency, numbers formatting, etc.

The i18n step is mostly a software engineering step and you have to take into account a bunch of stuff. Depending on your target locales (when language/countries) you want to address, you work is going to be more or less encompassing. For instance, if you stay with France Italy Germany Spain (FIGS in 1i8n parlance), you by-pass a bunch of issues, like Hebrew left to right, Japanese imperial calendar, UI redesign for left to right languages etc.

Best practices include dealing with locale-sensitive methods (methods which may give you troubles for a particular language/country locale), like text ordering (alphabets are not the same everywhere, so is the order in which we look for words). They also include putting hard code user visible text in resource files that translators can deal with and your software can read depending on the locale. You also have to handle other resources, such as video or sound or images, with a minimum framework to get the right one depending on the locale.

You may have to deal with i18n issues in databases or in source code (most of the work), and then depending on your application, some of the behavior may have to be modified (a la strategy design pattern for instance). An example would be the taxes in the US is computed quite differently than in, say, Germany.

I don't know if you'd like more on the subject. It's a start anyways.