practical tips on building an international presence
Most of the time the HTML for a site doesn’t need to change as you localise an already internationalised site for a specific locale. Though your website needs the flexibility to specify locale-specific markup, so it is well worth having a system in place that allows that. And implemented properly, a mechanism for specialising templates [...]
The amount of work required to internationalise a website is woefully underestimated, and sometimes, the codebase is compromised to the extent that many features or capabilities are impossible to deliver with the existing code. In many cases, complete ground-up rewrites are needed to separate cleanly the business logic from the localisation requirements of countries. Mostly [...]
The natural internationalisation stumbling block, particularly for technical people, is that localisation isn’t just about translating static text strings. Surprisingly, many developers and programmers fail to consider that sentences in one natural language cannot be simply translated one word at a time to another language. Differences in grammar Every human language has its own grammatical [...]
Translating text dynamically generated at request time is more complicated than static non-changing text. Depending on the reason why the text needs to be flexible at request time means taking a different approach. In the last post we looked at simple static text replacement where the text doesn’t change from request to request. But as [...]
The first major step to localising a website or web application is to translate all the static text strings into the preferred language. Static text being text that doesn’t change from request to request. The typical approach to translating this text is to replace every piece of static text with a variable reference that points [...]
Localising sites should not be about recreating the same images over and over with different text and then spending days fixing layout bugs as each locale needs a different widths to comfortably fit in each text label.