A Guide to Website Localisation

I came across a great post today about Website Localisation thanks to John Yunker of Global by Design.

Here’s my summary of the article:

42% of Internet users are in Asia
14% in the USA
24% in Europe
20% in Africa, Middle East, Latin America & Oceania/Australia

Use of Arabic online increased 25X over the past 10 years
Chinese increased 12X
Spanish increased 7X
English usage online increased less than 3X over the same period

So, web designers and developers need to think global from the start.

How can smaller companies/sites copy the tricks of the big boys regarding localisation?

1. Minimal use of images. Remove the possibility of having culturally specific / inappropriate content from the web app.

2. Use UTF-8 encoding always and everywhere. It solves most, if not all, of the hassles when trying to represent weird characters on a web page.

3. Separate content from design. This is the biggie for me and is the starting point to make use of services like LocaleApp. By abstracting all text from the application, web developers are able to develop once and deploy globally. Once this is done, adding a new language to an existing web site becomes a cost/benefit exercise rather than a technical battle.

4. No embedded text. It’s virtually impossible to translate text embedded in images or flash files, so it’s best to steer well clear of either.

5. Speed matters. If your audience is in an area of the world where broadband connections are expensive or not available at all, a bloated website will never be seen on a slow dial-up connection. Design for fast loading web pages (a good idea anyway).

From our recent talk about localisation at the Scottish Ruby Conference, I’d like to add these pieces of advice to web developers:

6. Think about locales, not languages. A locale is a combination of language and location and translations will differ accordingly. Think about the four official languages of Switzerland (fr-CH, de-CH, it-CH and rm-CH). Think about the varied usage of English in different countries (en-GB, en-US and en-CA)

7. Never concatenate strings, otherwise known as never try to assemble phrases from fragments. For example, translating the phrase “Page 1 of 2” you might be tempted to translate the words “page” and “of” separately, and assemble the phrase using variables for page numbers. However, this would prevent you from rearranging the order of the words, or reconstructing the phrase to work in different languages. For example, in Japanese, the phrase is ordered like so: 2 of 1 page. You need to present this entire phrase to a translator “Page {current page} of {total pages}” so that it can be accurately translated as a whole into any language. This is the biggest single mistake we made when localising Kyero.com in 8 languages.

8. Context is king. Translators need to know how and where a phrase is being used in order to provide an accurate translation. For example the English word “floor” equates to two different words in Spanish depending on the type of floor referred to: “Planta” for the floor number of a multi-level building and “Suelo” for the floor under your feet.

9 Gender and pluralisation. Starting a multilingual web app in English and then adding on other locales is tricky because English has fairly simple gender and pluralisation rules. In other languages (French for example), the gender and pluralisation changes depending on the subject and context. It’s another reason to stay away from string concatenation and constructing complex sentences wherever possible. (Aside: Unicode.org has great resources for understanding the rules of each locale.)

10. Integrate localisation into your development process. Aside from abstracting all text out of the application, think about database tables that may need translating, or large blocks of text that might need handling (T’s and C’s etc.) Do you version control your source code? Do you develop in an agile environment and push code from development to staging to live? If so, think about the implications of version controlling your language files too.

11. Check translation Quality. Are you fluent in Russian, Arabic, Chinese or Pirate? If not, how will you know if your translated phrases are accurate? It’s a good idea to include a review process into your localisation work-flow.

Finally, here’s a list of localisation resources web devs might find useful

This entry was posted in LocaleApp and tagged , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *