Internationalization and localization
|
Internationalization and localization are means of adapting products such as publications or software for non-native environments, especially other nations and cultures.
Contents |
Alternative names
Internationalization is often abbreviated as I18N (or i18n or I18n), by IBM and others, where the number 18 refers to the number of letters omitted. "Localization" is often abbreviated l10n in the same manner. Both notions are sometimes collectively termed globalization (g11n), but that word has a more common meaning. Also seen in some circles, but less commonly, are "p13n" for personalization and "r3h" for reach, as in the reach of a website across countries and markets.
Scope
Focal points of internationalization and localization efforts include:
- Date/time format (UTC in internationalized environments)
- Currency
- Language (alphabets, numerals and left-to-right script vs. right-to-left) (see for example Unicode)
- Profanity
- Names and titles
- Social Security numbers and passports
- Telephone numbers, addresses and international postal codes
- Weights and measures
The distinction between internationalization and localization is subtle but important. Internationalization is the adaptation of products for potential use virtually everywhere, while localization is the addition of special features for use in a specific locale. Subjects unique to localization include:
- Language translation,
- Special support for certain languages such as East Asian languages,
- Local customs,
- Morality,
- Local content,
- Symbols,
- Aesthetics,
- Cultural values and social context.
Difficulties
In making software products, internationalization and localization pose challenging tasks for developers, particularly if the software is not designed from the beginning with these concerns in mind. A common practice is to separate textual data and other environment-dependent resources from the program code. Thus, supporting a different environment, ideally, only requires change in those separate resources without code modification; greatly simplifying the task.
The development team needs someone who understands foreign languages and cultures and has a technical background; such a person may be difficult to find. Moreover, the duplication of resources could be a maintenance nightmare. For instance, if a message displayed to the user in one of several languages is modified, all of the translated versions must be changed. Software libraries that aid this task are available, such as Gettext.
Since free software can be freely modified and redistributed, it is more apt to internationalization. Most proprietary software is only available in languages considered to be economically viable. The KDE project, for example, has been translated into over 70 languages.
Locale
In computing, locale is a set of parameters that defines the user's language, country and any special variant preferences that the user wants to see in their user interface. Usually a locale identifier consists of at least a language identifier and a region identifier.
Relation to globalization
Internationalization is sometimes used interchangeably with globalization to refer to economic and cultural effects of an increasingly interconnected world.
While internationalization most commonly refers to the addition of a framework for multiple language support, especially in software, it sometimes refers to the process whereby something (a corporation, idea, highway, war, etc.) comes to affect multiple nations. This usage is rare; globalization is preferred. Because of globalization, many companies and products are found in multiple countries worldwide, giving rise to increasing localization requirements.
Localization may describe production of goods nearer to end users to reduce environmental and other external costs of globalization.
See also
- Bidirectional script support
- CJK (Chinese, Japanese, Korean)
- Glocalization
- Sustainable development
- Multilingual text rendering engines:
- Uniscribe (Windows)
- Apple Type Services for Unicode Imaging (New Macintosh)
- WorldScript (Old Macintosh)
- Pango (Open source)
External links
- Hurricane Transparent Website Localization Platform (http://www.translationbooth.com/hurricane/)
- Introduction to i18n of software (http://www.debian.org/doc/manuals/intro-i18n/)
- Open directory of links to internationalization resources and related material (http://www.i18ngurus.com/)
- Information for developers about localisation of Free and Open Source Software (http://localisationdev.org/)
- W3C specifications
- Text layout (http://www.w3.org/TR/css3-text/#text-layout)
- Directional focus navigation (http://www.w3.org/TR/css3-ui/#nav-dir)
- Writing mode (http://www.w3.org/TR/xsl/slice7.html#writing-mode)
- IETF specifications
- Internationalizing Domain Names in Applications (IDNA) (http://www.ietf.org/rfc/rfc3490.txt)
- Terminology Used in Internationalization in the IETF (http://www.ietf.org/rfc/rfc3536.txt)
- Free/Open Source Software: Localization Primer (http://www.iosn.net/l10n/foss-localization-primer/foss-localization-primer.pdf) (PDF, 1.25 Megabytes)
- "Free/Open Source Software: Localization" KnowProSE Remix 1.0 (http://www.knowprose.com/fosslocal) (HTML-Wikipedia Remix of PDF primer)
de:Internationalisierung es:Internacionalización fr:Internationalisation hu:Internacionalizálás és honosítás ja:国際化と地域化 pl:I18N ru:Интернационализация sv:Internationalisering