⬅  Return

Software Internationalization (I18n) and Localization (L10n)


W3C Internationalization

https://www.w3.org/standards/webdesign/i18n

Overview

Internationalization (I18n) and localization (L10n) in software development are two important concepts that involve designing and developing software products that are adapted to different languages, cultures, and regions.

The term “internationalization” is often abbreviated as “I18n” because there are 18 letters between the “I” and the “n” in the word. Similarly, the term “localization” is often abbreviated as “L10n” because there are 10 letters between the “L” and the “n”.

While I18n refers to the process of designing software products for global audiences, and L10n refers to the process of adapting software products for specific locales or regions, these concepts are closely related.

History

In the early days of I18n, software developers would often create separate versions of software for different languages and regions. It was a time-consuming process.

The concept of I18n libraries emerged in 1980s. One of the earliest I18n guideline was the X/Open Portability Guide, by X/Open group (the Open Group for Unix Systems), which included a section on internationalization where it provided guidelines for creating software that could be easily adapted to different languages and regions. One of the recommendations it covered is a modular approach to software design, so that different components of the interface to be easily localized for different languages and regions.

XPG3-XPG4 Base Migration Guide

(XPG3-XPG4 Base Migration Guide)

Common I18n Components

An I18n system often includes the following components:

  • character encoding
  • language support
  • date and time formatting
  • currency and number formatting
  • user interface design
  • culturally-specific references and norms
  • regional regulations

Different organizations and projects could have different specs on what their I18n guideline / design should cover. Here are a few modern references and applications:

Final Words

To recap, Internationalization (I18n) and Localization (L10n) and two closely related concepts in modern software development. They are important considerations for software products built for global audiences. The specific strategy for I18n and L10n will depend on the needs and requirements of the software product, as well as the target markets and user base.