SlideShare a Scribd company logo
1 of 29
Internationalization
I18n
Ewa Barczykowska
i18n? L10n? g11n?
• Internationalization – design so that it can be adapted
• Localization – translate and adapt designed software to specific
region or language
• Globalization - (internationalization + localization)
Internationalization
Internationalization – process of designing software that can be
potentially adapted to various languages and regions without
engineering changes
Design aspects to consider when doing
internationalization of a product:
• User interaction (how a user will be interacting with your product)
• Currency is hard coded?
• Data formats are hard-coded?(01/12/2016 or 12/01/2016?)
• Fixed length GUI screens or dialog boxes, read-and-print messages?
• ASCII code or character constraints?
• Slang? Technical jargon?
• String operations like concatenation or substring search is present?
• Diagrams and images have embedded translatable text?
Design aspects to consider when doing
internationalization of a product – ctn.:
• Are icons, bitmaps, screens, dialog boxes are separated from the code
and stored in resource files?
• If the code uses scrolling of text – do the screens/dialogs allow for
provisions for direction change in scrolling such as top to bottom,
right to left, bottom to top, left to right? Arabic vs. English
Fake language testing
• Helps simulating the functionality of the product for different
language, using software translators.
Pig Latin (single-byte fake language)
Wide Latin (double-byte fake language)
RPx
mutator
Fake language testing objectives
• Software functionality is tested for European single-byte language
(Pig Latin)
• Software functionality is tested for double-byte language (Wide
Roman)
• Ensure all strings are displayed properly on the screen
• Ensure that screen width, size of pop-ups, and dialog boxes are
adequate for string display with the fake languages
Localization
Localization - process of adapting computer software to different
languages and regional differences
Localization
This most time-consuming and expensive part is. Localization may
include:
• Subtitles or dubbing for video, voice-over
• Altering images that contain text to contain text or generic icons
• Different translation length and different character size (Chinese,
Korean, Japanese) can cause layout problems
• Portuguese, Brazilian Portuguese
• Formatting of numbers or date and time format (thousand is 1.000 or
1,000?)
Localization – cnt.:
• Writing direction (left-to write, right-to-left), for example Arabic language is
written from right to left, unlike English. Display problems might ensue
• Different characters/set of letters, i.e. वह, ńźŁę, äöüß
• Complex text layout where characters change shape according to context
• Capitalization
• Different numeral systems
• Different pluralization rules may complicate programs that dynamically
display numerical content
• Different punctuation, e.g. “” in English and <<>> in French
• Keyboard shortcuts
c
National conventions, e.g. Between US and
Europe
• Paper size
• Telephone formats
• Postal address format, postal codes
• Currency symbols and their position
• Systems of measurements
• Battery sizes
• Voltage and current standards
Legal compliance
• Disclaimers required
• Different consumer labelling requirements
• Regulations on encryption
• Compliance with internet censorship
• Requirements for accessibility
• Collecting different taxes/custom duties
• Government assigned numbers have different formats
Differences in culture:
• Local holidays
• Personal name and title conventions, honorific, prefix, suffix
• Aesthetics
• Colour symbolism
• Ethnicity, clothing and architecture of locations pictured
• Local customs and conventions (taboos, blood type superstitions in
Japanese culture, local religions, astrological signs)
Top 10 translation errors – example data
Expansion of text - English versus other
languages. How much space do we need?
Layout defect:
Name conventions defect/enhancement:
Concatenation defect:
Tooltip not translated:
Concatenation:
Translation:
Display problem/Translation:
Part of the phrase is displayed in English,
hard-coding:
Layout problem in Korean:
Translation, context related error:
Corrupted character:
Questions?
Thank you!
References:
• https://en.wikipedia.org/wiki/Internationalization_and_localization
• Ibrahim Mehru, Globalization Verification Test (GVT) and IBM Pseudo
Translator (RPX), IBM, Globalization Centre of Competency, Toronto,
Cannada
• Srinivasan Desikan, Gopalaswamy Ramesh, Software Testing
Principles and Practices, Pearson, 2014, p.211-227

More Related Content

What's hot

How to build language technology resources for the next 100 years
How to build language technology resources for the next 100 yearsHow to build language technology resources for the next 100 years
How to build language technology resources for the next 100 yearsGuy De Pauw
 
Async programming in f
Async programming in fAsync programming in f
Async programming in fBeauLiu
 
Resume of Robert Hevert 2016
Resume of Robert Hevert 2016Resume of Robert Hevert 2016
Resume of Robert Hevert 2016Robert Hevert
 
Beyond English - Make Your Android App a Global Success
Beyond English - Make Your Android App a Global SuccessBeyond English - Make Your Android App a Global Success
Beyond English - Make Your Android App a Global SuccessMotorola Mobility - MOTODEV
 
My trans kit checklist gw1 ds1_gw3
My trans kit checklist gw1 ds1_gw3My trans kit checklist gw1 ds1_gw3
My trans kit checklist gw1 ds1_gw3David Sommer
 
Internationalization with Rails
Internationalization with RailsInternationalization with Rails
Internationalization with RailsKatherine Muedas
 

What's hot (8)

How to build language technology resources for the next 100 years
How to build language technology resources for the next 100 yearsHow to build language technology resources for the next 100 years
How to build language technology resources for the next 100 years
 
Async programming in f
Async programming in fAsync programming in f
Async programming in f
 
Resume of Robert Hevert 2016
Resume of Robert Hevert 2016Resume of Robert Hevert 2016
Resume of Robert Hevert 2016
 
1. reason why study spl
1. reason why study spl1. reason why study spl
1. reason why study spl
 
Beyond English - Make Your Android App a Global Success
Beyond English - Make Your Android App a Global SuccessBeyond English - Make Your Android App a Global Success
Beyond English - Make Your Android App a Global Success
 
My trans kit checklist gw1 ds1_gw3
My trans kit checklist gw1 ds1_gw3My trans kit checklist gw1 ds1_gw3
My trans kit checklist gw1 ds1_gw3
 
Internationalization with Rails
Internationalization with RailsInternationalization with Rails
Internationalization with Rails
 
TimKroehlingResume
TimKroehlingResumeTimKroehlingResume
TimKroehlingResume
 

Similar to Introduction to Internationalization

What Every Translator Should Know About Software Localization
What Every Translator Should Know About Software LocalizationWhat Every Translator Should Know About Software Localization
What Every Translator Should Know About Software Localizationallinportuguese
 
Internationalization & localization testing
Internationalization & localization testingInternationalization & localization testing
Internationalization & localization testingRobin0590
 
Localization Testing Company for Business Efficiency
 Localization Testing Company for Business Efficiency  Localization Testing Company for Business Efficiency
Localization Testing Company for Business Efficiency Puran Mehra
 
Issues in Globalization of E-Learning Content and Accessibility
Issues in Globalization of E-Learning Content and AccessibilityIssues in Globalization of E-Learning Content and Accessibility
Issues in Globalization of E-Learning Content and AccessibilityGreg SHIN
 
Mobile App Localization Best Practices
Mobile App Localization Best PracticesMobile App Localization Best Practices
Mobile App Localization Best PracticesAndovar
 
How To Build And Launch A Successful Globalized App From Day One Or All The ...
How To Build And Launch A Successful Globalized App From Day One  Or All The ...How To Build And Launch A Successful Globalized App From Day One  Or All The ...
How To Build And Launch A Successful Globalized App From Day One Or All The ...agileware
 
There should be a tool for that - GameQALoc Barcelona 2016
There should be a tool for that - GameQALoc Barcelona 2016There should be a tool for that - GameQALoc Barcelona 2016
There should be a tool for that - GameQALoc Barcelona 2016Adolfo Gomez-Urda
 
Balance and Compromise: Issues in Content Localization
Balance and Compromise: Issues in Content LocalizationBalance and Compromise: Issues in Content Localization
Balance and Compromise: Issues in Content LocalizationLise Bissonnette Janody
 
3 s glbal presentation on unicode development
3 s glbal presentation on unicode development3 s glbal presentation on unicode development
3 s glbal presentation on unicode developmentSujit Ghosh
 
Devoxx: Developing for the Rest of the World
Devoxx: Developing for the Rest of the WorldDevoxx: Developing for the Rest of the World
Devoxx: Developing for the Rest of the WorldEric Frohnhoefer
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationChris Muir
 
Programming language design and implemenation
Programming language design and implemenationProgramming language design and implemenation
Programming language design and implemenationAshwini Awatare
 
Software Internationalization & Localization: Basic Concepts
Software Internationalization & Localization: Basic ConceptsSoftware Internationalization & Localization: Basic Concepts
Software Internationalization & Localization: Basic Conceptsguest1f8175
 
Laura Dent: Single-Source and Localization
Laura Dent: Single-Source and LocalizationLaura Dent: Single-Source and Localization
Laura Dent: Single-Source and LocalizationJack Molisani
 
Intro to Programming Lang.pptx
Intro to Programming Lang.pptxIntro to Programming Lang.pptx
Intro to Programming Lang.pptxssuser51ead3
 
Globalization Testing of Products and Application
Globalization Testing of Products and ApplicationGlobalization Testing of Products and Application
Globalization Testing of Products and ApplicationPuran Mehra
 
Globalize Your Message with Localization by Meena Verma
Globalize Your Message with Localization by Meena VermaGlobalize Your Message with Localization by Meena Verma
Globalize Your Message with Localization by Meena VermaMeena Verma
 
Ui testing on multi lingual
Ui testing on multi lingualUi testing on multi lingual
Ui testing on multi lingualtharayadav
 

Similar to Introduction to Internationalization (20)

What Every Translator Should Know About Software Localization
What Every Translator Should Know About Software LocalizationWhat Every Translator Should Know About Software Localization
What Every Translator Should Know About Software Localization
 
Internationalization & localization testing
Internationalization & localization testingInternationalization & localization testing
Internationalization & localization testing
 
Localization Testing Company for Business Efficiency
 Localization Testing Company for Business Efficiency  Localization Testing Company for Business Efficiency
Localization Testing Company for Business Efficiency
 
Issues in Globalization of E-Learning Content and Accessibility
Issues in Globalization of E-Learning Content and AccessibilityIssues in Globalization of E-Learning Content and Accessibility
Issues in Globalization of E-Learning Content and Accessibility
 
Mobile App Localization Best Practices
Mobile App Localization Best PracticesMobile App Localization Best Practices
Mobile App Localization Best Practices
 
How To Build And Launch A Successful Globalized App From Day One Or All The ...
How To Build And Launch A Successful Globalized App From Day One  Or All The ...How To Build And Launch A Successful Globalized App From Day One  Or All The ...
How To Build And Launch A Successful Globalized App From Day One Or All The ...
 
There should be a tool for that - GameQALoc Barcelona 2016
There should be a tool for that - GameQALoc Barcelona 2016There should be a tool for that - GameQALoc Barcelona 2016
There should be a tool for that - GameQALoc Barcelona 2016
 
Balance and Compromise: Issues in Content Localization
Balance and Compromise: Issues in Content LocalizationBalance and Compromise: Issues in Content Localization
Balance and Compromise: Issues in Content Localization
 
3 s glbal presentation on unicode development
3 s glbal presentation on unicode development3 s glbal presentation on unicode development
3 s glbal presentation on unicode development
 
Devoxx: Developing for the Rest of the World
Devoxx: Developing for the Rest of the WorldDevoxx: Developing for the Rest of the World
Devoxx: Developing for the Rest of the World
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
 
Programming language design and implemenation
Programming language design and implemenationProgramming language design and implemenation
Programming language design and implemenation
 
Software Internationalization & Localization: Basic Concepts
Software Internationalization & Localization: Basic ConceptsSoftware Internationalization & Localization: Basic Concepts
Software Internationalization & Localization: Basic Concepts
 
Culture Usability
Culture UsabilityCulture Usability
Culture Usability
 
Laura Dent: Single-Source and Localization
Laura Dent: Single-Source and LocalizationLaura Dent: Single-Source and Localization
Laura Dent: Single-Source and Localization
 
Intro to Programming Lang.pptx
Intro to Programming Lang.pptxIntro to Programming Lang.pptx
Intro to Programming Lang.pptx
 
Compilers.pptx
Compilers.pptxCompilers.pptx
Compilers.pptx
 
Globalization Testing of Products and Application
Globalization Testing of Products and ApplicationGlobalization Testing of Products and Application
Globalization Testing of Products and Application
 
Globalize Your Message with Localization by Meena Verma
Globalize Your Message with Localization by Meena VermaGlobalize Your Message with Localization by Meena Verma
Globalize Your Message with Localization by Meena Verma
 
Ui testing on multi lingual
Ui testing on multi lingualUi testing on multi lingual
Ui testing on multi lingual
 

Introduction to Internationalization

  • 2. i18n? L10n? g11n? • Internationalization – design so that it can be adapted • Localization – translate and adapt designed software to specific region or language • Globalization - (internationalization + localization)
  • 3. Internationalization Internationalization – process of designing software that can be potentially adapted to various languages and regions without engineering changes
  • 4. Design aspects to consider when doing internationalization of a product: • User interaction (how a user will be interacting with your product) • Currency is hard coded? • Data formats are hard-coded?(01/12/2016 or 12/01/2016?) • Fixed length GUI screens or dialog boxes, read-and-print messages? • ASCII code or character constraints? • Slang? Technical jargon? • String operations like concatenation or substring search is present? • Diagrams and images have embedded translatable text?
  • 5. Design aspects to consider when doing internationalization of a product – ctn.: • Are icons, bitmaps, screens, dialog boxes are separated from the code and stored in resource files? • If the code uses scrolling of text – do the screens/dialogs allow for provisions for direction change in scrolling such as top to bottom, right to left, bottom to top, left to right? Arabic vs. English
  • 6. Fake language testing • Helps simulating the functionality of the product for different language, using software translators. Pig Latin (single-byte fake language) Wide Latin (double-byte fake language) RPx mutator
  • 7. Fake language testing objectives • Software functionality is tested for European single-byte language (Pig Latin) • Software functionality is tested for double-byte language (Wide Roman) • Ensure all strings are displayed properly on the screen • Ensure that screen width, size of pop-ups, and dialog boxes are adequate for string display with the fake languages
  • 8. Localization Localization - process of adapting computer software to different languages and regional differences
  • 9. Localization This most time-consuming and expensive part is. Localization may include: • Subtitles or dubbing for video, voice-over • Altering images that contain text to contain text or generic icons • Different translation length and different character size (Chinese, Korean, Japanese) can cause layout problems • Portuguese, Brazilian Portuguese • Formatting of numbers or date and time format (thousand is 1.000 or 1,000?)
  • 10. Localization – cnt.: • Writing direction (left-to write, right-to-left), for example Arabic language is written from right to left, unlike English. Display problems might ensue • Different characters/set of letters, i.e. वह, ńźŁę, äöüß • Complex text layout where characters change shape according to context • Capitalization • Different numeral systems • Different pluralization rules may complicate programs that dynamically display numerical content • Different punctuation, e.g. “” in English and <<>> in French • Keyboard shortcuts
  • 11. c
  • 12. National conventions, e.g. Between US and Europe • Paper size • Telephone formats • Postal address format, postal codes • Currency symbols and their position • Systems of measurements • Battery sizes • Voltage and current standards
  • 13. Legal compliance • Disclaimers required • Different consumer labelling requirements • Regulations on encryption • Compliance with internet censorship • Requirements for accessibility • Collecting different taxes/custom duties • Government assigned numbers have different formats
  • 14. Differences in culture: • Local holidays • Personal name and title conventions, honorific, prefix, suffix • Aesthetics • Colour symbolism • Ethnicity, clothing and architecture of locations pictured • Local customs and conventions (taboos, blood type superstitions in Japanese culture, local religions, astrological signs)
  • 15. Top 10 translation errors – example data
  • 16. Expansion of text - English versus other languages. How much space do we need?
  • 24. Part of the phrase is displayed in English, hard-coding:
  • 25. Layout problem in Korean:
  • 29. References: • https://en.wikipedia.org/wiki/Internationalization_and_localization • Ibrahim Mehru, Globalization Verification Test (GVT) and IBM Pseudo Translator (RPX), IBM, Globalization Centre of Competency, Toronto, Cannada • Srinivasan Desikan, Gopalaswamy Ramesh, Software Testing Principles and Practices, Pearson, 2014, p.211-227