Brenda Inman
St. Jude Medical
Manager, Localization
Cultural Awareness, Localization, and
Impact on Content Creation of User
Information Destined for Overseas
Markets
How St. Jude Medical
has built localization into
content creation
Best Practices
•Facilitate localization
•Reduce cost and effort
•Reduce potential mistakes
•Increase clarity for end-users
•Optimize time to market for localized product
Examples
•Cultural and linguistic differences that may not
be immediately obvious
Best Practices
• Plan for localization, do not rush
• Write code in a localization-friendly way
• Perform "pseudo localization" to identify
hard coded strings
• Never hardcode date, time, numeral
separators, or currency formats
• More things to keep in mind
Plan for localization, do not rush
• Localization scheduling and scoping
– Translation & review
– Initial testing
– Regression testing
Be prepared for multiple
rounds of translation and
testing. Often translated
strings exceed character
limits and must introduce
abbreviations that aren’t
necessarily common in that
language.
Best Practices
• Plan for localization, do not rush
• Write code in a localization-friendly way
• Perform "pseudo localization" to identify
hard coded strings
• Never hardcode date, time, numeral
separators, or currency formats
• More things to keep in mind
Localization-friendly encoding
Use Unicode … why?
Unicode provides a unique number for every
character, no matter what platform, no matter what
program, no matter what language
•Unicode supports most of the world’s scripts
•UTF-8 encoding
•www.unicode.org - search “Internationalization
and the Case for Unicode”
Separate strings from code
• More efficient
– Developing a new international version of
the application only involves creating a
new language resource file because each
version has the same code
• Reduce cost & effort
– Manage one set of code rather than a
separate set of code for each language
• Reduce risk
– By placing all relevant string resources in one file, you ensure a
more efficient localization process and reduce the chance of
leaving some strings un-localized
Source code & string resource files
Best Practices
• Plan for localization, do not rush
• Write code in a localization-friendly way
• Perform "pseudo localization" to identify
hard coded strings
• Never hardcode date, time, numeral
separators, or currency formats
• More things to keep in mind
Pseudo localization
If English text shows
up in your pseudo
localized UI, it
means that the string
is
hard coded
Pseudo localization simulates
translation by replacing text with
test characters while preserving
non-translatable code and
simulating expansion and
contraction
“Forgotten” strings
Best Practices
• Plan for localization, do not rush
• Write code in a localization-friendly way
• Perform "pseudo localization" to identify
hard coded strings
• Never hard code date, time, numeral
separators, or currency formats
• More things to keep in mind
Date format
English (US) Wednesday, October 12, 2014
English (UK) Wednesday 12th October 2014
Spanish (Spain) miércoles, 12 de octubre de 2014
Japanese
German mittwoch, 12. Oktober 2014
Arabic ،‫الربعاء‬12،‫أكتوبر‬2014
English (US) 10/12/14
English (UK) 12/10/14
Spanish (Spain) 12/10/14
Japanese 2014/10/12
2014 年 10 月 12 日(水曜日)
• Date formats vary
from language to
language and if
they are hard-
coded they cannot
be localized.
• They will appear
wrong and
confusing to the
end-user
Time format
• 24-hour clock
• Colon, comma, or
period as separator
• GMT (Greenwich Mean
Time) + or –
• Some time zones use
30 or 45 minute offsets*
• Avoid time references
to USA time (3 pm PST)
* India, Sri Lanka,
Afghanistan, and Australia
30 minutes; Nepal and
areas of New Zealand 45
minutes
Numeral separators
Style Country
1,234,567.89
China, Ireland, Israel, Japan, Korea, Malaysia, Mexico, New Zealand,
Philippines, Singapore, Taiwan, Thailand, United Kingdom, United States
1234567,89
Albania, Belgium, Bosnia, Brazil, Bulgaria, Czech Republic, Denmark,
Estonia, Finland, France, French Canada, Germany, Greece, Hungary,
Italy, Latin Europe, Lithuania, Netherlands (non-currency numbers),
Poland, Portugal, Romania, Serbia, Slovakia, Slovenia, Spain, Sweden
1234567.89 Australia, English Canada, China
1.234.567,89
Brazil, Denmark, Germany, Greece, Indonesia, Italy, Netherlands
(currency), Portugal, Romania, Slovenia
12,34,567.89 India*
1'234'567.89 Switzerland
* The Indian numbering system is used throughout India, Pakistan, Bangladesh, Nepal,
and Sri Lanka. It is based on the Vedic numbering system in which numbers over 9,999
are written in two-digit groups (or a mix of two- and three-digit groups) rather than the
three-digit groups used in most other parts of the world.
Numeral shape & correspondence
Numbers may be shaped differently or not have a one-to-one
correspondence to other languages or locales
٠١٢٣٤٥٦٧٨٩Arabic
Japanese
Currency
In some languages the currency symbol is
displayed before the numbers and in other
languages is displayed after the numbers or even
in between the number and the decimal
• 2€50 - France
• $123.45 - Canadian English
• 123.45$ - Canadian French
• 1.000 TL or ₺1.000 - Turkish
Lira
Hard coded font names
• Do not hard code font names
– “Arial” font face name on an Arabic machine
is “Arial, 178”
• Do not assume that a font is installed
– The user might delete or uninstall fonts
• Do not assume a selected
font supports the desired
script
– Miriam (a Hebrew font) can’t
be used to represent the
Japanese hiragana script
Font sizes
• Do not hard code the
font size used
• Make this variable
customizable according
to the script to be
displayed
Font size
Best Practices
• Plan for localization, do not rush
• Write code in a localization-friendly way
• Perform "pseudo localization" to identify
hard coded strings
• Never hardcode date, time, numeral
separators, or currency formats
• More things to keep in mind
More things to keep in mind
• Leave plenty of space for text expansion in
other languages
• Avoid acronyms, concatenations, substitutions,
and reuse of single strings
• Do not use (s) for plural
• Beware of forced line breaks in text strings
• Use caution when using symbols and
punctuation
Text expansion
Avoid designing software so that the English
strings “just fit”
•Some languages expand by 30%, some contract
by 30%
•Strings <7 characters can expand 100-300%
Use a dynamic UI to avoid issues with expansion and
contraction
Avoid
• Acronyms
– DOB = Date of Birth, common acronym in the US but
not necessarily globally recognized
– Device S/N = “N. di serie del dispositivo” (Italian)
Avoid
1. The patient data folders
2. The patient data files
A. will be deleted one after the
other
1. Las carpetas de datos del
paciente
2. Los archivos de datos del
paciente
A. séran eliminadas una después de
la otra (if concatenated with 1),
OR séran eliminados uno
después del otro (if concatenated
with 2)
Use complete strings in resource files
The patient data folders
will be deleted one after the other
The patient data files
• Concatenations
Concatenated strings and strings that are
used in multiple contexts are likely to have
grammar and gender agreement issues
Avoid
• Reuse of single-word strings
Use complete strings in resource files
Avoid
• Substitutions
1. La stampante è accesa
2. Il dispositivo è acceso
%s has %d minutes remaining to complete %n tests
John has 5 minutes remaining to complete 10 tests
Use short descriptors rather than full sentences---
User: %s Minutes remaining: %d Tests remaining: %n
จอห์นมี 5 นาทีเพื่อให้การทดสอบ 10
The %s is on
1. Printer
2. Device
Do not use (s) for plural
• The red button turns the device(s) on
• Il pulsante rosso accende il dispositivo
• Il pulsante rosso accende i dispositivi
• The owner(s) must fill in the warranty form
• El propietario debe rellenar el formulario de garantía
• Los propietarios deberán rellenar el formulario de
garantía
• You have %s unread message(s)
• Hai 1 messaggio non letto
• Hai 5 messaggi non letti
Forced line breaks
• With text expansion and different sentence word
order rules the line breaks might need the breaks in
different locations
– Chinese, Japanese, Korean, andThai follow special rules for line breaks
and don’t necessarily indicate the distinction between words by using
spaces.TheThai language doesn’t even use punctuation.
Insert USB flash drive:n
from sensor package orn
with file from web siten
NOTE: Will take a fewn
seconds to detect USBn
flash drive.
Inserire la chiavetta USB:n
dalla confezione del sensore on
con il file dal sito webn
NOTA: Ci vorranno alcunin
secondi per rilevare la chiavetta USB.
Use caution
• Symbols
– Checkmark (), number sign/pound/hash (#):
In Sweden and other countries, the checkmark indicates
“wrong” (väärin) and “R” (rätt) indicates “correct”
In Japan, Korea, and Taiwan “ ” is used◯
• Punctuation
– Question mark (?)
In Greek “ ; ”
In Arabic “ ‫؟‬ ”
• Emphasis
– Bold can “muddy” complex Asian characters, usually replaced
with a larger size character or different font
– Italic almost never used with Asian scripts as it destroys the
aesthetics of the characters, usually replaced with a larger size
character or different font
Cultural Awareness, Localization and the Impact on Content Creation of User Information Destined for Overseas Markets with Brenda Inman and Diana Ballard
Summary
• Plan ahead for localization
• Use Unicode UTF-8 encoding
• Use a dynamic UI
• Separate text strings from code
• Be aware of cultural differences (date, time,
currency, numbers)
• Avoid substitutions, concatenations, single-string
reuse, forced line breaks
• Use caution with symbols and punctuation
Cultural Awareness, Localization and the Impact on Content Creation of User Information Destined for Overseas Markets with Brenda Inman and Diana Ballard

More Related Content

PPT
Issues in Globalization of E-Learning Content and Accessibility
PPT
Stretching translation dollars for your district final
 
PDF
Via language webinar_tips_to_streamline_and_save_on_healthcare_translations
 
PDF
K12Translate Webinar Slides: Engaging ELL Parents
 
PDF
How to build language technology resources for the next 100 years
PPT
Nybro visual aids
PPTX
The Content of Stories / The Story of Content with Justin Bookey
PPTX
The Customer Experience Recognition Awards with Andrew Bredenkamp
Issues in Globalization of E-Learning Content and Accessibility
Stretching translation dollars for your district final
 
Via language webinar_tips_to_streamline_and_save_on_healthcare_translations
 
K12Translate Webinar Slides: Engaging ELL Parents
 
How to build language technology resources for the next 100 years
Nybro visual aids
The Content of Stories / The Story of Content with Justin Bookey
The Customer Experience Recognition Awards with Andrew Bredenkamp

Viewers also liked (20)

PPT
Cultural awareness & the EFL classrooms
PPTX
Real World Lessons in Content Process Follow-Through with Russell Sparkman
PPTX
Take Your Content Global — Content Globalization, The Final Frontier with Fel...
PPTX
Expert Panel: Overcoming Challenges in Content Localization moderated by Fabi...
PPTX
Nurturing with the Right Content to Build Loyalty and… Sales with Jon Wuebben
PPTX
How DITA Got Her Groove Back: Going Mapless with Don Day
PPTX
Localization Planning and The Content Strategy of Things with Bill Swallow
PPTX
Designing Interactive Content for Lead Generation with Scott Brinker
PPTX
Full-on DITA Strategies Beyond Technical Publications with Rob Hanna, ECMs
PPTX
Featured Presentation: Enhancing Customer Experiences With Intelligent Conten...
PDF
Addressing the Increasing Challenges Facing Medical Device Content with Ann R...
PPT
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
PDF
Jasper: the AI-powered recruiter bot
PDF
ThingsCon Amsterdam 2016 - Alper Cugun
PPTX
Conversational UI, chatbot, AI - simply explained
PDF
101 Conversational User Interfaces
PPTX
Conversational apps UX best practices
PDF
Converations on conversational Ux
PDF
designing conversations: Conversational interfaces, Bot Interactions, Chatb...
Cultural awareness & the EFL classrooms
Real World Lessons in Content Process Follow-Through with Russell Sparkman
Take Your Content Global — Content Globalization, The Final Frontier with Fel...
Expert Panel: Overcoming Challenges in Content Localization moderated by Fabi...
Nurturing with the Right Content to Build Loyalty and… Sales with Jon Wuebben
How DITA Got Her Groove Back: Going Mapless with Don Day
Localization Planning and The Content Strategy of Things with Bill Swallow
Designing Interactive Content for Lead Generation with Scott Brinker
Full-on DITA Strategies Beyond Technical Publications with Rob Hanna, ECMs
Featured Presentation: Enhancing Customer Experiences With Intelligent Conten...
Addressing the Increasing Challenges Facing Medical Device Content with Ann R...
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Jasper: the AI-powered recruiter bot
ThingsCon Amsterdam 2016 - Alper Cugun
Conversational UI, chatbot, AI - simply explained
101 Conversational User Interfaces
Conversational apps UX best practices
Converations on conversational Ux
designing conversations: Conversational interfaces, Bot Interactions, Chatb...
Ad

Similar to Cultural Awareness, Localization and the Impact on Content Creation of User Information Destined for Overseas Markets with Brenda Inman and Diana Ballard (20)

PDF
Single-Sourcing and Localization stc16
PPTX
SIGNWRITING SYMPOSIUM PRESENTATION 11: SignPuddle Standard For SignWriting Text
PDF
Best Practices for Software Localization
PDF
Oracle ADF Architecture TV - Design - Designing for Internationalization
PDF
Single-Sourcing and Localization
PPTX
Reading Notes : the practice of programming
PDF
Laura Dent: Single-Source and Localization
PDF
A Short Guide to Currency Number Date Formats
PDF
Zendesk Style Guide - Dutch (v3).pdf
PPTX
The 10 Commandments of Building Global Software
PPTX
Written communication
PPTX
How Much Cake to Eat: The Case for Targeted MT Engines
PPT
1.2 Evaluation of PLs.ppt
PDF
Optimizing Multilingual Search: Presented by David Troiano, Basis Technology
PPTX
Java basics
PDF
Expand Your App's Global Potential With Internationalization
PDF
The Intricacies of DITA Content Localization
PDF
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overview
PDF
高品質軟體的基本動作 101 + 102 for NUU
PPTX
International Search & Social Marketing and Emerging Markets: What Merchants ...
Single-Sourcing and Localization stc16
SIGNWRITING SYMPOSIUM PRESENTATION 11: SignPuddle Standard For SignWriting Text
Best Practices for Software Localization
Oracle ADF Architecture TV - Design - Designing for Internationalization
Single-Sourcing and Localization
Reading Notes : the practice of programming
Laura Dent: Single-Source and Localization
A Short Guide to Currency Number Date Formats
Zendesk Style Guide - Dutch (v3).pdf
The 10 Commandments of Building Global Software
Written communication
How Much Cake to Eat: The Case for Targeted MT Engines
1.2 Evaluation of PLs.ppt
Optimizing Multilingual Search: Presented by David Troiano, Basis Technology
Java basics
Expand Your App's Global Potential With Internationalization
The Intricacies of DITA Content Localization
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overview
高品質軟體的基本動作 101 + 102 for NUU
International Search & Social Marketing and Emerging Markets: What Merchants ...
Ad

More from Information Development World (20)

PDF
What Does it Mean to Be Helpful? with Scott Abel, The Content Wrangler
PPTX
Putting Design Thinking to Work with Buck Bard of Canary.Works
PDF
[Workshop Part 1-3] Modernizing Your Technical Resource Center - Assessing th...
PPTX
[Workshop Part 1-4] Modernizing Your Technical Resource Center - Assessing th...
PDF
[Panel] Convincing Your Company to Improve Your Technical Resource Center
PDF
Applying Agile and Lean Thinking to Content Development and Delivery with Rya...
PPTX
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
PPTX
[Case Study] Content User Experience - Quality versus Quantity with Eeshita G...
PDF
The Science Behind Good Page Design
PDF
Forget Artificial Intelligence - Stop Squandering Human Intelligence with Mik...
PPTX
Organizing Content the Right Way with Jeannette Stewart of Translation Commons
PPTX
[Workshop Part 2-4] Driving Toward the Future State with Joe Gelb of Zoomin S...
PDF
The Value Proposition of Content Strategy with Anna Schlegel, NetApp
PPTX
Data-Driven to Know We Have Effective Content with Jenifer Schlotfeldt and Co...
PPTX
Leveraging Microcontent for Effective Customer Experiences with Rob Hanna, Pr...
PPTX
[Case Study] Harnessing Engaging Content for a Richer Customer Experience wit...
PPTX
What's Your Problem? Creating a Project Brief to Build Consensus with Doreen ...
PPTX
Building Conversational Interfaces - The Do's and Don'ts with Ondrej Sirocka
PPTX
When Rule-Based Chatbots Hit the Wall - How to Overcome their Limitations wit...
PDF
The Value of Visual Content and the Simplified User Interface with Daniel Fos...
What Does it Mean to Be Helpful? with Scott Abel, The Content Wrangler
Putting Design Thinking to Work with Buck Bard of Canary.Works
[Workshop Part 1-3] Modernizing Your Technical Resource Center - Assessing th...
[Workshop Part 1-4] Modernizing Your Technical Resource Center - Assessing th...
[Panel] Convincing Your Company to Improve Your Technical Resource Center
Applying Agile and Lean Thinking to Content Development and Delivery with Rya...
[Case Study] Adopting an Agile Content Development Process with Debra Brinson...
[Case Study] Content User Experience - Quality versus Quantity with Eeshita G...
The Science Behind Good Page Design
Forget Artificial Intelligence - Stop Squandering Human Intelligence with Mik...
Organizing Content the Right Way with Jeannette Stewart of Translation Commons
[Workshop Part 2-4] Driving Toward the Future State with Joe Gelb of Zoomin S...
The Value Proposition of Content Strategy with Anna Schlegel, NetApp
Data-Driven to Know We Have Effective Content with Jenifer Schlotfeldt and Co...
Leveraging Microcontent for Effective Customer Experiences with Rob Hanna, Pr...
[Case Study] Harnessing Engaging Content for a Richer Customer Experience wit...
What's Your Problem? Creating a Project Brief to Build Consensus with Doreen ...
Building Conversational Interfaces - The Do's and Don'ts with Ondrej Sirocka
When Rule-Based Chatbots Hit the Wall - How to Overcome their Limitations wit...
The Value of Visual Content and the Simplified User Interface with Daniel Fos...

Recently uploaded (20)

PPTX
Internet of Everything -Basic concepts details
PDF
CEH Module 2 Footprinting CEH V13, concepts
PDF
A symptom-driven medical diagnosis support model based on machine learning te...
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
PDF
Auditboard EB SOX Playbook 2023 edition.
PDF
Rapid Prototyping: A lecture on prototyping techniques for interface design
PDF
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
PPTX
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
PDF
Ensemble model-based arrhythmia classification with local interpretable model...
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
Decision Optimization - From Theory to Practice
PDF
4 layer Arch & Reference Arch of IoT.pdf
PDF
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
PDF
Human Computer Interaction Miterm Lesson
PPTX
SGT Report The Beast Plan and Cyberphysical Systems of Control
PDF
SaaS reusability assessment using machine learning techniques
PDF
Electrocardiogram sequences data analytics and classification using unsupervi...
PDF
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
PDF
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
Internet of Everything -Basic concepts details
CEH Module 2 Footprinting CEH V13, concepts
A symptom-driven medical diagnosis support model based on machine learning te...
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
Auditboard EB SOX Playbook 2023 edition.
Rapid Prototyping: A lecture on prototyping techniques for interface design
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
Ensemble model-based arrhythmia classification with local interpretable model...
Co-training pseudo-labeling for text classification with support vector machi...
Decision Optimization - From Theory to Practice
4 layer Arch & Reference Arch of IoT.pdf
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
Human Computer Interaction Miterm Lesson
SGT Report The Beast Plan and Cyberphysical Systems of Control
SaaS reusability assessment using machine learning techniques
Electrocardiogram sequences data analytics and classification using unsupervi...
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf

Cultural Awareness, Localization and the Impact on Content Creation of User Information Destined for Overseas Markets with Brenda Inman and Diana Ballard

  • 1. Brenda Inman St. Jude Medical Manager, Localization Cultural Awareness, Localization, and Impact on Content Creation of User Information Destined for Overseas Markets How St. Jude Medical has built localization into content creation
  • 2. Best Practices •Facilitate localization •Reduce cost and effort •Reduce potential mistakes •Increase clarity for end-users •Optimize time to market for localized product Examples •Cultural and linguistic differences that may not be immediately obvious
  • 3. Best Practices • Plan for localization, do not rush • Write code in a localization-friendly way • Perform "pseudo localization" to identify hard coded strings • Never hardcode date, time, numeral separators, or currency formats • More things to keep in mind
  • 4. Plan for localization, do not rush • Localization scheduling and scoping – Translation & review – Initial testing – Regression testing Be prepared for multiple rounds of translation and testing. Often translated strings exceed character limits and must introduce abbreviations that aren’t necessarily common in that language.
  • 5. Best Practices • Plan for localization, do not rush • Write code in a localization-friendly way • Perform "pseudo localization" to identify hard coded strings • Never hardcode date, time, numeral separators, or currency formats • More things to keep in mind
  • 6. Localization-friendly encoding Use Unicode … why? Unicode provides a unique number for every character, no matter what platform, no matter what program, no matter what language •Unicode supports most of the world’s scripts •UTF-8 encoding •www.unicode.org - search “Internationalization and the Case for Unicode”
  • 7. Separate strings from code • More efficient – Developing a new international version of the application only involves creating a new language resource file because each version has the same code • Reduce cost & effort – Manage one set of code rather than a separate set of code for each language • Reduce risk – By placing all relevant string resources in one file, you ensure a more efficient localization process and reduce the chance of leaving some strings un-localized
  • 8. Source code & string resource files
  • 9. Best Practices • Plan for localization, do not rush • Write code in a localization-friendly way • Perform "pseudo localization" to identify hard coded strings • Never hardcode date, time, numeral separators, or currency formats • More things to keep in mind
  • 10. Pseudo localization If English text shows up in your pseudo localized UI, it means that the string is hard coded Pseudo localization simulates translation by replacing text with test characters while preserving non-translatable code and simulating expansion and contraction
  • 12. Best Practices • Plan for localization, do not rush • Write code in a localization-friendly way • Perform "pseudo localization" to identify hard coded strings • Never hard code date, time, numeral separators, or currency formats • More things to keep in mind
  • 13. Date format English (US) Wednesday, October 12, 2014 English (UK) Wednesday 12th October 2014 Spanish (Spain) miércoles, 12 de octubre de 2014 Japanese German mittwoch, 12. Oktober 2014 Arabic ،‫الربعاء‬12،‫أكتوبر‬2014 English (US) 10/12/14 English (UK) 12/10/14 Spanish (Spain) 12/10/14 Japanese 2014/10/12 2014 年 10 月 12 日(水曜日) • Date formats vary from language to language and if they are hard- coded they cannot be localized. • They will appear wrong and confusing to the end-user
  • 14. Time format • 24-hour clock • Colon, comma, or period as separator • GMT (Greenwich Mean Time) + or – • Some time zones use 30 or 45 minute offsets* • Avoid time references to USA time (3 pm PST) * India, Sri Lanka, Afghanistan, and Australia 30 minutes; Nepal and areas of New Zealand 45 minutes
  • 15. Numeral separators Style Country 1,234,567.89 China, Ireland, Israel, Japan, Korea, Malaysia, Mexico, New Zealand, Philippines, Singapore, Taiwan, Thailand, United Kingdom, United States 1234567,89 Albania, Belgium, Bosnia, Brazil, Bulgaria, Czech Republic, Denmark, Estonia, Finland, France, French Canada, Germany, Greece, Hungary, Italy, Latin Europe, Lithuania, Netherlands (non-currency numbers), Poland, Portugal, Romania, Serbia, Slovakia, Slovenia, Spain, Sweden 1234567.89 Australia, English Canada, China 1.234.567,89 Brazil, Denmark, Germany, Greece, Indonesia, Italy, Netherlands (currency), Portugal, Romania, Slovenia 12,34,567.89 India* 1'234'567.89 Switzerland * The Indian numbering system is used throughout India, Pakistan, Bangladesh, Nepal, and Sri Lanka. It is based on the Vedic numbering system in which numbers over 9,999 are written in two-digit groups (or a mix of two- and three-digit groups) rather than the three-digit groups used in most other parts of the world.
  • 16. Numeral shape & correspondence Numbers may be shaped differently or not have a one-to-one correspondence to other languages or locales ٠١٢٣٤٥٦٧٨٩Arabic Japanese
  • 17. Currency In some languages the currency symbol is displayed before the numbers and in other languages is displayed after the numbers or even in between the number and the decimal • 2€50 - France • $123.45 - Canadian English • 123.45$ - Canadian French • 1.000 TL or ₺1.000 - Turkish Lira
  • 18. Hard coded font names • Do not hard code font names – “Arial” font face name on an Arabic machine is “Arial, 178” • Do not assume that a font is installed – The user might delete or uninstall fonts • Do not assume a selected font supports the desired script – Miriam (a Hebrew font) can’t be used to represent the Japanese hiragana script
  • 19. Font sizes • Do not hard code the font size used • Make this variable customizable according to the script to be displayed
  • 21. Best Practices • Plan for localization, do not rush • Write code in a localization-friendly way • Perform "pseudo localization" to identify hard coded strings • Never hardcode date, time, numeral separators, or currency formats • More things to keep in mind
  • 22. More things to keep in mind • Leave plenty of space for text expansion in other languages • Avoid acronyms, concatenations, substitutions, and reuse of single strings • Do not use (s) for plural • Beware of forced line breaks in text strings • Use caution when using symbols and punctuation
  • 23. Text expansion Avoid designing software so that the English strings “just fit” •Some languages expand by 30%, some contract by 30% •Strings <7 characters can expand 100-300% Use a dynamic UI to avoid issues with expansion and contraction
  • 24. Avoid • Acronyms – DOB = Date of Birth, common acronym in the US but not necessarily globally recognized – Device S/N = “N. di serie del dispositivo” (Italian)
  • 25. Avoid 1. The patient data folders 2. The patient data files A. will be deleted one after the other 1. Las carpetas de datos del paciente 2. Los archivos de datos del paciente A. séran eliminadas una después de la otra (if concatenated with 1), OR séran eliminados uno después del otro (if concatenated with 2) Use complete strings in resource files The patient data folders will be deleted one after the other The patient data files • Concatenations Concatenated strings and strings that are used in multiple contexts are likely to have grammar and gender agreement issues
  • 26. Avoid • Reuse of single-word strings Use complete strings in resource files
  • 27. Avoid • Substitutions 1. La stampante è accesa 2. Il dispositivo è acceso %s has %d minutes remaining to complete %n tests John has 5 minutes remaining to complete 10 tests Use short descriptors rather than full sentences--- User: %s Minutes remaining: %d Tests remaining: %n จอห์นมี 5 นาทีเพื่อให้การทดสอบ 10 The %s is on 1. Printer 2. Device
  • 28. Do not use (s) for plural • The red button turns the device(s) on • Il pulsante rosso accende il dispositivo • Il pulsante rosso accende i dispositivi • The owner(s) must fill in the warranty form • El propietario debe rellenar el formulario de garantía • Los propietarios deberán rellenar el formulario de garantía • You have %s unread message(s) • Hai 1 messaggio non letto • Hai 5 messaggi non letti
  • 29. Forced line breaks • With text expansion and different sentence word order rules the line breaks might need the breaks in different locations – Chinese, Japanese, Korean, andThai follow special rules for line breaks and don’t necessarily indicate the distinction between words by using spaces.TheThai language doesn’t even use punctuation. Insert USB flash drive:n from sensor package orn with file from web siten NOTE: Will take a fewn seconds to detect USBn flash drive. Inserire la chiavetta USB:n dalla confezione del sensore on con il file dal sito webn NOTA: Ci vorranno alcunin secondi per rilevare la chiavetta USB.
  • 30. Use caution • Symbols – Checkmark (), number sign/pound/hash (#): In Sweden and other countries, the checkmark indicates “wrong” (väärin) and “R” (rätt) indicates “correct” In Japan, Korea, and Taiwan “ ” is used◯ • Punctuation – Question mark (?) In Greek “ ; ” In Arabic “ ‫؟‬ ” • Emphasis – Bold can “muddy” complex Asian characters, usually replaced with a larger size character or different font – Italic almost never used with Asian scripts as it destroys the aesthetics of the characters, usually replaced with a larger size character or different font
  • 32. Summary • Plan ahead for localization • Use Unicode UTF-8 encoding • Use a dynamic UI • Separate text strings from code • Be aware of cultural differences (date, time, currency, numbers) • Avoid substitutions, concatenations, single-string reuse, forced line breaks • Use caution with symbols and punctuation