(Part-1) Internationalization & Localization Definitions
Tags: internationalization, localization, i18n, l10n
Published: 2022-09-22 18:34:10

# **Internationalization (I18N) & Localization (L10N)**

- [Definitions:](#definitions) 
- [Technical Notes:](#technical-notes)

## **Definitions:**
#### **Globalization (G11N): 🌍** 
Includes non-engineering business units and categories like marketing, legal, sales, etc.
#### **Internationalization (I18N): 🗺️**
is the design and development of a product, application or document content that **enables** easy localization for target audiences that vary in culture, region, or language.
#### **Translation (T9N): ✍️**
is the most granular level, the **process of converting text strings from one language into another**.
#### **Localization (L10N): 🎌**
refers to the **adaptation** of a product, application or document content to meet the language, cultural and other requirements of a **specific target market** (a *locale*). is the process of translating the internationalized app into specific languages for particular locales, such as Arabic in Egypt (ar-EG) or English in the UK (en-UK).

-----
## **Technical Notes:**
- **Internationalization** typically entails:
  - *Separating localizable elements from source code* or content, such that localized alternatives can be loaded or selected based on the user's international preferences as needed.
  - Enabling the use of *Unicode*, or ensuring the proper handling of legacy *character encodings* where appropriate, taking care over the concatenation of strings, *avoiding dependance in code of user-interface string values*, etc.
  - Support *bidirectional text,* or for identifying language. Or adding to CSS support for *vertical text or other non-Latin typographic features.*
  - Enabling code to support local, regional, language, or culturally related preferences. Examples include *date and time formats, local calendars, number formats and numeral systems, sorting and presentation of lists, handling of personal names and forms of address*, etc.

Notice that the above items do not necessarily include the localization of the content, application, or product into another language; **they are design and development practices** which allow such a migration to take place easily in the future but which may have significant utility even if no localization ever takes place.

Internationalization significantly affects the ease of the product's localization. Retrofitting a linguistically- and culturally-centered deliverable for a global market is obviously much more difficult and time-consuming than designing a deliverable with the intent of presenting it globally. (Think back to the Y2K -Year 2000 problem- effort and trying to "undo" two-character year fields that were built on the assumption of "19xx").

- **Localization** is not only synonym for translation of the user interface and documentation, it is more complex issue. It can entail customization related to:
  - Numeric, date and time formats
  - Use of currency
  - Keyboard usage
  - Collation and sorting
  - Symbols, icons and colors
  - Text and graphics containing references to objects, actions or ideas which, in a given culture, may be subject to misinterpretation or viewed as insensitive.
  - Varying legal requirements.

![Localization](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hfhi8r4zpekhwy52kgtq.png)