VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
Best Practices for Software Localization
1. T H E D E V E L O P E R ’ S D O Z E N :
BEST PRACTICES
FOR SOFTWARE
LOCALIZATION
12
2. The global software market is currently valued at almost
half a trillion dollars and growing across all sectors.
But despite meeting budget and time targets, today’s
applications will be rejected if they don’t meet user expectations.
Factors contributing to software failure include:
• Marketing and customer support
• Lack of required features and functions
• Lack of corporate sponsorship
• Scope creep and loopholes in project management
READY TO
GO GLOBAL?
2
Some of these challenges are not within a
developer’s control, but a key factor for user
satisfaction—localization—is.
3. From independent mobile apps to complex
multi-user systems, localization is the key to
driving software sales and acceptance.
Localization increases:
• Global reach
• Brand credibility
• Market relevance
• User satisfaction and involvement
• ROI—without added risk
WHY
LOCALIZATION?
3
4. Localization is the process of adapting a product or
content to a specific locale or market. Translation is only
one of several elements in the process.
• Successful localization ensures that key functional
elements appear to have been designed specifically
for the target market, regardless of language, culture,
or location.
• Becoming localization-ready requires an up-front
planning investment, but the payoff is market agility
that enables quick and efficient delivery of software to
the widest possible audience.
LOCALIZATION ELEMENTSAdapting graphics to target markets
Modifying content to suit the tastes
and consumption habits of other markets
Adapting design and layout to properly
display translated text
Converting to local requirements
(such as currencies and units of measure)
Using proper local formats for dates,
addresses and phone numbers
Addressing local regulations
and legal requirements
4
5. START SMART: PLAN WITH
A GLOBAL MINDSET
Planning software localization with a
global mindset will help avoid the ninety-
ninety rule and streamline localization into
multiple languages and markets.
• The rule states: The first 90 percent
of the code accounts for the first 90
percent of the development time.
The remaining 10 percent of the code
accounts for the other 90 percent of
the development time.
Humorous, to be sure, but disastrous for
global development. What can be done
outside of giving 180%?
The following best practices are basic
requirements for avoiding localization
failure and creating software fit for a
global audience.
5
6. 0 1 . D E S I G N W I T H L O C A L I Z A T I O N I N M I N D
7. DESIGN WITH LOCALIZATION IN MIND
Minimize schedule delays and cost overruns by
developing a localization-friendly design from the start.
A localization-friendly design features source code
and structure that helps:
• Prevent replication of source bugs in target files
• Prevent avoidable translation errors
• Prevent common software localization errors,
including functional, display, abbreviation, and
over- and under-localization
7
8. 0 2 . B U I L D A L I B R A R Y O F
I N T E R N A T I O N A L I Z E D O B J E C T S
9. BUILD A LIBRARY OF INTERNATIONALIZED OBJECTS
Internationalization enables localization. Building
a library of internationalized objects minimizes
rework when localizing into multiple languages.
These can include:
• User interface design elements
• Sort and search functionality
• Multi-byte character support (Asian languages)
• Bi-directional or right-to-left support (Arabic &
Hebrew languages)
• Address, number, date, and currency formats
9
10. BUILD A LIBRARY OF
INTERNATIONALIZED OBJECTS
What is internationalization?
• Before you localize, you must internationalize.
• Internationalization makes localization possible
by ensuring that your architecture and code are
global-ready from both technical and
functional perspectives.
• This prerequisite process is vital for affordable,
replicable, high-quality localization.
• Abbreviated as i18n.
10
12. KEEP TEXT SHORT
All languages have different sentence structures,
different rules for pluralization, and use different
amounts of words to express an idea.
Minimize translation problems with clear and
concise source content:
• Use brief sentences
• Use Standardized English word order
whenever possible
• Avoid long noun strings
• Avoid synonyms; use just one term to identify
a single concept
• Avoid acronyms; these require extra translation
and will lose any secondary meanings
12
14. When translated into other languages, content
strings can grow longer (English – German) or shrink
(English to Asian languages). At a minimum, plan for
30% text expansion.
For example, the Italian translation for “On” and “Off”
expand more than 100%:
Disabilitato
(Italian)
Abilitato
(Italian)
ON OFF
PLAN FOR TEXT EXPANSION
14
15. PLAN FOR TEXT EXPANSION
This chart from the Microsoft Developer Network is a great guideline:
ENGLISH LENGTH
(IN CHARACTERS)
EXPANSION % FOR
LOCALIZED STRINGS
1 to 4 100%
5 to 10 80%
11 to 20 60%
21 to 30 40%
31 to 50 20%
Over 50 10%
15
16. 0 5 . D O N ’ T R E U S E T H E S A M E T E X T
I N D I F F E R E N T C O N T E X T
17. DON’T REUSE THE SAME TEXT
IN DIFFERENT CONTEXT
The English language has many words
that can be used as both nouns and
verbs, such as:
• File
• Share
• Design
There are also words that can be both
adjectives and verbs, such as:
• Open
• Clear
• Free
Decide on a single use for text, use
it consistently, and identify it through
resource commenting.
17
18. 0 6 . D O U S E I C O N S — B U T W I T H C A R E
19. DO USE ICONS—BUT WITH CARE
Icons—without text—require less translation and
can reduce cost. However, not all symbols are
universal or neutral.
• For example, a U.S.-style mailbox doesn’t
translate to many other cultures.
• Avoid images of hands or feet, animals, and
other symbols which can have unexpected
or unwelcome meanings. Do your research
on specific market considerations.
19
20. 0 7 . D O N ’ T H A R D C O D E T E X T O R P U N C T U A T I O N
21. DON’T HARDCODE TEXT OR PUNCTUATION
Instead, do the following:
• Separate resources displayed to the user (titles, product
names, error messages) into resource files distinct from
source code
• Use resource commenting to eliminate translation errors
• String IDs should include a description of the role,
function, or meaning of each string
21
What is hardcoded text?
Hardcoded text is text embedded in the source
code. When you’re ready to localize, this text must be
extracted for translation. Your language service provider
(LSP) can run a parser to identify translatable text, but it
is best to minimize it at the design level.
22. 0 8 . P R E V E N T O V E R - A N D U N D E R - L O C A L I Z A T I O N
23. PREVENT OVER- AND UNDER-LOCALIZATION
Both instances are caused by incorrectly prepping a
file for translation.
Over-localization occurs when strings intended to
remain in English are erroneously translated.
Under-localization occurs when items that need to be
localized were not included in the file.
Minimize these errors with:
• Do-Not-Translate (DNT) lists provided to your LSP
• Resource separation and commenting
• Pseudo-localization
23
25. SOURCE (ENGLISH) TARGET (SPANISH)
let string1=“free” Free=Gratis
let string2=“shipping” Shipping=Envío
var shipping=string1+string2
Concatenating the correctly
translated string results in a
mistranslation:
//label now equals
“free shipping”
Gratis Envío instead
of Envío Gratis
AVOID CONCATENATION
Free Shipping
One String
Free shipping
Concatenated string
Free shipping
Correct Translation
Envío Gratis
Mistranslation
Gratis Envío
Gratis Envío
25
Concatenation is the combining of
two separate strings.
It is used by developers to reduce
the size of a string, but causes
many problems for localization.
Concatenation makes it difficult to
correctly localize strings, as word
order and grammar rules vary
across languages.
For example, “free shipping” is a
common English concatenation,
resulting in mistranslation:
26. 1 0 . U S E P S E U D O - L O C A L I Z A T I O N
27. USE PSEUDO-LOCALIZATION
Pseudo-localization is a localizability testing technique
that replaces localizable text with automatically
generated “dummy” translations. This process
reduces risk and reveals potential problems before
translation investment is made.
Pseudo-localization can uncover:
• Functional issues
• Examples of hardcoded text
• User interface (UI) layout issues
• Character corruption
• Non-Unicode issues
• Bidirectional or mirroring issues
27
28. 1 1 . M A K E S U R E T O U S E U T F - 8 E N C O D I N G
UTF-8
29. MAKE SURE TO USE UTF-8 ENCODING
UTF-8 is the most popular format for Unicode,
described by Dr. Ken Lunde as:
“the world’s first intelligent character encoding.”
Unicode is supported by all major hardware and
software companies and is required by standards
such as XML, Java, and JavaScript.
Using UTF-8 ensures easy and correct translation
into all languages, especially Asian CJKV (Chinese,
Japanese, Korean, and Vietnamese) languages.
29
30. 1 2 . W H E N I N D O U B T , C O N S U L T W I T H A N E X P E R T
31. WHEN IN DOUBT, CONSULT WITH AN EXPERT
In addition to localization checklists provided for
Android, iOS, and Windows development, your LSP
can provide insights and optimized processes that
save time, money, and rework.
Reach out with questions early in the process to
ensure your development is localization-ready.
31
33. KEY TAKEAWAYS
Localizing software increases global reach and
enables app providers to deliver greater value to
more users.
Approach localization as a strategy, not a task,
for global success.
Before localizing, internationalize by ensuring
code and architecture can handle multiple
languages and cultural conventions.
Successful localization considers key
functional elements as well as cultural
considerations such as graphics, data
compliance, language requirements,
bandwidth restrictions, and device preferences.
Planning with a global mindset will help
avoid the ninety-ninety rule.
Localization is the key to driving
software sales and acceptance.
33