Date post: | 15-Jan-2017 |
Category: |
Software |
Upload: | adam-asnes |
View: | 131 times |
Download: | 0 times |
Internationalization Basics
From Lingoport:Adam Asnes
Agenda
• Intro to Lingoport• Basic terminology and i18n concepts• Top 10 i18n issues• Continuous Globalization
o Software Globalization & Development Cycleso Integrating i18n & L10n with sprints
• ROI• Q&A, Follow-up Resources
Lingoport Suite
Painless support & actionable data to facilitate ongoing software internationalization and
localization.
i18n (i + nternationalizatio + n)o the process of making code world-ready so that it can be
localized to a specific region and language L10n (L + ocalizatio + n)
o the process of adapting the application content to meet the language, cultural and other requirements of a specific target market
G11n (g + lobalizatio + n)o the process of designing and developing a software product that
functions in multiple countries and languages
i18n, L10n, g11n
5
g11n = i18n + L10n
6
I18n Issues OverviewWhat’s not in the code (architecture and design)• Locale• Assumptions about use and
interaction• Flexibility for regulations or
market requirements• 3rd party product
dependencies
What’s in the code• Embedded Strings
o Concatenations
• Locale-Unsafe Methods, Functions, Classes
• Programming Patterns• Static File References
Top 10 i18n Issues
©Lingoport, Inc. 2013 - do not distribute 8
#1 – Character Corruption
Some characters show up corrupted文字化け : (mojibake) "character change"
©Lingoport, Inc. 2013 - do not distribute 9
#2 – Hard-Coded or Embedded Strings
Embedded strings are hard-coded character strings in the source code.
In the example below, some text stays in U.S. English regardless of the user language
©Lingoport, Inc. 2013 - do not distribute 10
#3: Incorrect Date / Time Format
The date or the time shows up with a U.S. English format; here the date is shown as May 6th, 2011
©Lingoport, Inc. 2013 - do not distribute 11
#4: Programming Shortcuts
Developers can take shortcuts in a U.S. English application that do not transfer to an international audience
Here the table names are used to display a selection
©Lingoport, Inc. 2013 - do not distribute 12
#5: Designing without Considering i18n
Designing software without thinking about international markets can lead to re-writes later on
Here, an on-screen keyboard only lets the user type in ASCII characters.
©Lingoport, Inc. 2013 - do not distribute 13
#6: Emails If the application sends email, that part of the software must
be examined carefully Here there is a mix of Japanese and U.S. English text
©Lingoport, Inc. 2013 - do not distribute 14
#7: Parsing and Displaying Numbers
The application fails to parse a number because it was entered with a comma decimal separator, as in the French “12,50” as opposed to the U.S. “12.50”
©Lingoport, Inc. 2013 - do not distribute 15
#8: Static File References
Showing or playing a file in the wrong languageo Html Fileso Videoso Images
©Lingoport, Inc. 2013 - do not distribute 16
#9: Currencies Currencies need special attention Here, the currency symbol is wrong, which makes the result unusable
©Lingoport, Inc. 2013 - do not distribute 17
#10: Understanding Usage Models
In the following link, an honest view as to why the initial QuickBooks introduction to Japan did not go wello http://www.inc.com/chris-beier-and-daniel-wolfman/intuit-quicken-sc
ott-cook-global-expansion-failed.html
©Lingoport, Inc. 2013 - do not distribute 18
Doesn’t Java Support i18n?
Written in Java (or others) does not mean internationalized Here the software does not properly validate entries
static boolean checkString(String argument) { for (int i=0; i<argument.length(); i++) { char a = argument.charAt(i); if ((a >= ‘A’ && a <= ‘Z’) || (a >= ‘A’ && a <= ‘Z’)) continue; else return false;
©Lingoport, Inc. 2013 - do not distribute 19
Tackling i18n Projects Determine the i18n requirements Assess the situation
o Architectural viewo Code specifics
Come up with a plan, a budget, a time lineo Is the plan approved by management?o Rarely ‘easy’ or ‘cheap’ o Build it into each feature
Execute on the software development, QA, Linguistics plan
©Lingoport, Inc. 2013 - do not distribute 20
Agile DevelopmentContinuous Globalization (G11n)
Defect costs per stage
Traditional approach to SW Development in a well defined process
When most i18n & L10n issues are addressed
G11n & Agile i18n & L10n issues oftenFall into backlogs
Continuous G11n
I18n in Software Development
i18n compliance through iterative QA cycles and releases is a waste of money and time
Finding, managing, fixing and verifying i18n bugs is costly. Averages start at $500/bug. Interrupts the flow of development
Releasing core products to worldwide markets faster creates revenue opportunities, not just cost savings
“Reactive internationalization is unpredictable and poorly controlled.” – Gary Lefman, Cisco i18n Architect.
©Lingoport, Inc. 2013 - do not distribute 25
• 5 Teams X 20 sprints/year = 100 Sprints• Each sprint has 5 features = 500 features• 2 days saved per feature = 1,000 days• At $40/hour = $325,000 per year• Productivity increase of 3 people per year
Continuous G11n ROI
Questions & Answers:Contact Resources
Adam AsnesCEO & PresidentLingoport, Inc.
http://www.lingoport.comLingoport Suitei18n e-learningi18n consulting
• http://lingoport.com/blog• http://lingoport.com/resources• http://lingoport.com/products