Presentation

advertisement
Intro to Internationalization and
Localization
Localization World Conference 2010, Seattle
Angelika Zerfass
zerfass@zaac.de
Adam Asnes
adam@lingoport.com
Internationalization:
Your Company, Code and Building it for the World
Adam Asnes
adam@lingoport.com
+1.303.444.8020
Internationalization Challenge
• Adapt software to display and manage
worldwide character set requirements and
cultural formats
– Compare data processing
• US English, German, Chinese, Japanese, Hebrew
Internationalization and Localization Fit
• Internationalization
– Development oriented consulting and products
– Adapt products so they can be localizable for any
market
• Localization
– Tailored translation specific to market needs
– Coordinated management of strings for translation
– Linguistic Testing and more
Globalization Implications
• Global initiatives
– Expanding opportunities, New customers
• Competitive pressure
• Lost time to market
• Iterative code fixing, problems keep slipping
through
• Development costs in the hundreds of
thousands to millions of dollars
Is It Internationalized?
• Developers often underestimate i18n
requirements
• Most don’t know the answer
• Agile or other feature and release requirements
often overrun less formally measured i18n
requirements
• There is a Management Value in being able to
confirm global readiness
Internationalization Challenge
• Software Data Path - it’s not just the display
Display
Input
Transform
Store
Transform
Retrieve
I18n Architectural Challenge
Marketing Requirements
Locale behavior
Database
Character
encoding
support
Application Code
e.g. Java, C++, VB
U/I
e.g. JSP,
ASP, ASPX
3rd Party Products
Business Logic
Platforms, Browser Support Requirements
I18n trouble spots – developer’s challenge
• Embedded Text &
images
• Character set support
• String Concatenation
• Date/time formatting
• Sorting & searching
• Currency
• Transaction process
• User Locale Handling
•
•
•
•
•
•
•
•
•
Telephone formats
Postal formats
Region-specific functions
Shipping conditions
Numerical formats
Page layout
Reporting, workflow
Database enabling
Multi-byte enabling
Practical Challenges
• Sift through hundreds of thousands or millions of
lines of code
• Managing fixing complex problems among
teams of developers and outsourced resources
• Creating a product that looks, feels and behaves
natively to its worldwide users
• Source code must be adapted to seamlessly
adapt to any language, streamlining support and
updates
Traditional Approach
- repeat,
and
repeat, and repeat,
Localize and see what
you’re missing
Test, Pseudo-Localize
Externalize and refactor
one by one
GREP, overwhelm
developers
View pages. Pour
through code for strings,
methods, etc.
and repeat
Globalyzer Server and Clients
Server
Client
Command Line
Sample Internationalization Issues
Example: Hard-Coded English Text
1 million lines of source code
Typically Found:
At least 40,000 Embedded Strings which cannot be efficiently
translated
String orderStatus = “Your order has been
processed. A confirmation e-mail will be
sent to you shortly.”;
Example: US-Centric Date Formatting
Typically Found:
Over 10,000 Locale-Sensitive Formatting Calls
sStartTime =
Format(rsData("StartTime"),
"mm/dd/yyyy")
“Double-Byte” Character Encoding:
The Binary Capital Letter A
“UTF-16 Unicode
Double-byte encoding for all Languages
00000000
01000001
ISO-Latin1 (and even UTF-8)
Single-byte encoding for Western European Languages
01000001
Example: Encoding Corruption
Attempted to add a Chinese Unit Name via an example ASP page
Example: Correct Encoding
Successfully added Chinese Subject, Location & Notes text
Not Just for Older Applications
• Issues for every programming langauge
• Most newer programming languages are simpler
to internationalize
– That’s good for business actually
– More predictable processes, costs and results
I18n Needs: Stakeholders
Our Software must be in
Japanese, French,
German, Chinese, and
Spanish by November
Multi-tiered application?
String extraction?
Database components?
Unicode?
Testing Plan?
Localization a downstream concern
• “Somebody else’s problem” in the world of many
developers
• Creates an opportunity to educate and shepherd
through globalization
Release Planning
•
•
•
•
Agile
Sequencing with testing
You never stop internationalizing
Maintain your business drivers - REVENUE
Internationalization
Adding a way
to attach
things to a
mobile phone
so that it is
more
attractive for
users in Asia
Adding the
possibility to set
the steering wheel
on the right-hand
side
Easily switch the
cover of a fridge
door – a pink
cover would sell
more fridges in
Asia than a white
cover
Internationalization
Documentation
Internationalization of Documentation
•
•
•
•
One style does not fit all
Text and graphics / paper size
Provide whitespace for text expansion during localization
Marketing material cannot be translated but usually has to be recreated in the target language to be effective
• Renault Slogan
– Germany: Creáteur d'Automobiles
– UK: Cars for you
Germany
Japan
Text and Graphic
When text is
separated by a
graphic, the
translator cannot
use a translation
memory system
effectively.
Text Expansion
• Expansion rate per language
• Source text pages should leave enough space for translation
28
English
Font size 10
German
Font size 10
Text expands
Chinese
Font Size 10.5
Text decreases
Multilingual Workflow
Management
29
Tools and Technologies in Localization
Tools and Technologies
• Control of terminology in authoring process
– Up to controlled language for use with machine translation
• Translation Tools
– Translation Memory System
– Terminology Database (term check in authoring and translation
environment)
• Interfaces to project management systems
• Interfaces to content management systems
• Use of standard formats (TMX, XLIFF…)
Tools
• Most solutions focus on one specific area of the process
– Select tools that already have an interface with each other
– Create your own interfaces (if API is available)
• Content creation and localization belong together and should be
seen as inter-dependent, not isolated processes
Technologies
• Standard formats for
– exchange of translation memory data (TMX – Translation Memory
Exchange format)
– exchange of terminology data (TBX – Termbase Exchange format)
– file format-independent localization format (XLIFF – XML Localization
Interchange File Format)
• They don't solve all problems, but the most pressing ones
Managing Localization
The Traditional Process
Leveraging
Content
providers
Preparing
Effort assessment
Linguistics
assets:
TMs
Terms
Glossaries
Content
Repository
Translating
Content
providers
Reviewing
Packaging and
delivery
Updating
Linguistics
assets
Project Phases
•
Kick off meeting
– Touch on a all aspects of project, size, timeline, number of languages etc.
•
Analysis of source material
– Outline potential L10n/I18n issues with source code, documentation…
•
Scheduling and budgeting
– Based on size, timeline, number of languages etc. schedule resources, quotes,
•
Terminology setup
– Create glossary leveraging existing glossaries, adding additional terminology
•
•
Preparation of Source Material
Translation of Software / Documentation
– Translation, editing and proof-reading (TEP) of software
•
Testing the Software
– Testing of software for functional, linguistic and cosmetic defects
•
Screen Captures / DTP
Communicate
– The Project Manager is the central point for all communication
•
•
•
•
•
•
•
client PM
client market centers
product developers / product designers
authors
Translators / proofreaders / reviewers / editors
testers
Designers / DTP
– Timely communication on process, problems and suggestions
for solutions can greatly impact the success of a project
Questions and Answers
Adam Asnes
adam@lingoport.com
Resources
http://lingoport.com
Whitepapers, newsletter &
articles
http://i18nblog.com
Latest updates
Angelika Zerfass
zerfass@zaac.de
Resources
www.zaac.de
Presentation downloads in English
and German
http://www.zaac.de/uebersetzer.html
Download