Software Internationalization and Localization
Software internationalization prepares an application for different languages, regions, and writing systems. Localization then adapts that prepared application for a particular locale without changing its core design.
itSoftware engineering | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Intro
Software Internationalization and Localization
Internationalization and localization are different jobs. Internationalization, often written i18n, is the product design and engineering work that removes barriers to future adaptation. Localization, or l10n, adapts that product for one target locale.
Translation is part of localization, but it is not the whole job. A localized product may need different date, time, number, currency, address, name, keyboard, sorting, and text-direction behavior. W3C describes internationalization as the work that makes those adaptations possible without rebuilding the product.
The useful mental model is this:
stable product data and behavior
+ locale preference
+ locale data and translated messages
-> locale-appropriate presentation and interaction
Keep the stable facts separate from their presentation. Store an instant as an instant, an amount as an amount, and a person’s name in a form that preserves the information your product needs. Format those values for the locale at the boundary where people read or enter them. Unicode Technical Standard 35 recommends storing and communicating language-neutral data, then formatting it for the client.
Continue the course
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://www.w3.org/International/questions/qa-i18n.en
Supports
- Definitions and relationship of internationalization and localization
- Localization concerns beyond translation
- Unicode, bidirectional text, language identification, and locale-sensitive preferences
- The value of designing for adaptation before localization
- https://www.w3.org/International/techniques/authoring-html.en
Supports
- Right-to-left text and markup considerations in web content
- Direction-aware interface and content decisions
- https://www.unicode.org/reports/tr35/
Supports
- LDML as a structured locale-data exchange format
- Language-neutral data followed by locale formatting
- Locale identifiers, matching, number formatting, date formatting, collation, person names, keyboards, and message formatting
- CLDR as a common locale-data base
- https://cldr.unicode.org/
Supports
- Common Locale Data Repository project and locale-data scope
- https://www.rfc-editor.org/rfc/rfc5646
Supports
- Tags for identifying languages
