Introduction to Localization Localization World Conference Berlin 2009 Richard Sikes, Angelika Zerfass, Daniel Goldschmidt.

  • Published on
    26-Dec-2015

  • View
    215

  • Download
    3

Embed Size (px)

Transcript

  • Slide 1
  • Slide 2
  • Introduction to Localization Localization World Conference Berlin 2009 Richard Sikes, Angelika Zerfass, Daniel Goldschmidt
  • Slide 3
  • Agenda Introduction the problem, problem definition Tools Localization Process 101
  • Slide 4
  • Agenda Localization, internationalization, Globalization, translation, regionalization too many ation terms During the next three sessions we will make sense of them for you
  • Slide 5
  • Agenda Globalization to understand requirements (for going global) Internationalization to enable products to meet requirements Localization to fulfill requirements
  • Slide 6
  • The problem
  • Slide 7
  • The Problem A known company developed a powerful product for CRM (Customer Relationship Management System) The first and main market was, as usual, the USA The board decided that it is time to penetrate new markets: Europe, Far- East, Middle East The R&D department claimed no problem, we are fully UNICODElets go!
  • Slide 8
  • The Problem Ouch
  • Slide 9
  • The Problem #1 String Externalization All the GUI (graphical user interface) had to be translated to the target languages But lots of strings were hard-coded (written directly into the code)
  • Slide 10
  • The Problem #2 - Sorting After translating the GUI, the first installation took place in Spain Some customers were unhappy: Many indexes and lexical orders were corrupted In Traditional Spanish, the letters CH and LL have their own positions in the sort order A, B, C, CH, DK, L, LL, M, etc. Curioso Chalina Luz Llama
  • Slide 11
  • The Problem The second installation in Germany had three problems: The search function didnt work The financial and numerical functions were buggy Many strings were cutoff in the GUI
  • Slide 12
  • The Problem #3 Collation Combining characters: ( Latin Small letter U with diaeresis 0x00DC) U (Latin Small letter U 0x0055, Combining diaeresis 0x0308) (Latin Small letter with Cedilla 0x00E7) c (Latin Small letter C 0x0063, Combining Cedilla 0x0327) =fi Case sensitive/insensitive Accent sensitive/insensitive Upper case (Latin Small letter Sharp S)= SS
  • Slide 13
  • The Problem #4 Numerical format 4.500 (UK) 4.500 (DE) 4,500 (UK) = 4.500 (DE) 4.500 (UK) = 4,500 (DE)
  • Slide 14
  • The Problem #5 - Length German strings are usually longer than in most languages English: Redo German: Wiederherstellen English: Skip German: Zeilensprung
  • Slide 15
  • The Problem #6 Date Format The client from Spain called after 2 months; the license had expired earlier then expected! Does 01/07/2006 mean: July, first 2006 Or January, seven th 2006?
  • Slide 16
  • The Problem #6 Date Format, Calendars The first day of the week is Monday... or Sunday (weekend) Year length Week numbers (ISO? Other?) Last Monday
  • Slide 17
  • The Problem #7 - Encoding The installation in Russia was catastrophic: All imported data from the legacy systems was full of question marks. All data inserted by the user couldnt be retrieved from the database This was the first installation using a non Western European encoding!
  • Slide 18
  • The Problem #8 - Segmentation In Japan the problem even got worse: the parsers stopped working. In Japanese, there are no white spaces in-between words. The tokenizers didnt work properly Tokenization is the process of demarcating and possibly classifying sections of a string of input characters.
  • Slide 19
  • The Problem #9 Politics The Hebrew website had some minor issues: When localizing a website for Israel, which map shall we use: The one with Judea and Samaria The one with the Palestinian Authority The one without the occupied territories Judea and Samaria vs. occupied territories
  • Slide 20
  • The Problem #10 Grammar Singular? Plural? Male, female, something else? How to translate concatenated strings?
  • Slide 21
  • The Problem #10 Grammar String concatenation example: The Winfax Installer has found %s. Case Microsoft S=Outlook Netscape S=Netscape Mail Notes S=Notes Email Else that you have no email provider.
  • Slide 22
  • The Problem #11 Graphics & Symbols The OK gesture: English-speaking: OK France: zero, nothing, worthless Mediterranean: a rude sign Japan: money Brazil & Germany: vulgar, obscene gesture
  • Slide 23
  • The Problem more issues Color scheme Time zone Paper sizes (A4 vs. Letter) Phone numbers Address format Temperature Measurements
  • Slide 24
  • Culture is Everywhere If I'm selling to you, I speak your language. If I'm buying, dann mssen Sie Deutsch sprechen (then you must speak German) Willy Brandt
  • Slide 25
  • Problem Definition
  • Slide 26
  • Globalization Adaptation of marketing strategies to regional requirements of all kinds. Internationalization Engineering of a product to enable efficient adaptation of that product to local requirements. Localization Localization is the process of adapting a (software) product and accompanying materials to suit a target-market locale. Terms
  • Slide 27
  • Locale A locale is a geographic region defined by a combination of language and cultural norms. Locale is not to be confused with language.For example fr-FR, fr-CA, fr-CH. Fully supporting locales requires: Globalization to understand requirements Internationalization to enable products to meet requirements Localization to fulfill requirements
  • Slide 28
  • GLOBALIZATION Expansion of marketing strategies to address regional requirements of all kinds INTERNATIONALIZATION Engineering of a product to enable efficient adaptation to local requirements LOCALIZATION Adapting software and accompanying materials to suit target-market locales GERMAN FRENCH GERMAN FRENCH CHINESE GERMAN FRENCH CHINESE JAPANESE GLOBALIZATION Expansion of marketing strategies to address regional requirements of all kinds INTERNATIONALIZATION Engineering of a product to enable efficient adaptation to local requirements GERMAN FRENCH CHINESE JAPANESE PORTUGUESE Globalization Internationalization Localization
  • Slide 29
  • Costs that are generated in one place become visible in another.
  • Slide 30
  • Globalization Expansion of marketing strategies to address regional requirements of all kinds
  • Slide 31
  • Globalization IMPLICATIONS: International market research Prioritize local markets through business case analysis Development of separate business cases for emerging markets Product planning with serving of diverse markets in mind Tracking of revenues by locale Extensive liaison with foreign sales offices and resources Globalization is a mind set as much as a task set.
  • Slide 32
  • Internationalization Engineering of a product to enable efficient adaptation to local requirements
  • Slide 33
  • Internationalization IMPLICATIONS: Removal of cultural assumptions (such as date formats) Implementation of support for global norms (such as language character sets or accounting procedures). Internationalization is an expansion of product capability to be local-generic.
  • Slide 34
  • Localization The process of adapting software and accompanying materials to suit a target-market locale with the goal of making the product "transparent" to that locale, so that native users would interact with it as if it were developed there and for that locale alone.
  • Slide 35
  • Localization IMPLICATIONS: Language and character set support Support for various format settings such as decimal delimitation, time/date display, and other such norms. Conformance with locale-specific technical norms. Localization imposes constraints on softwares regional applicability.
  • Slide 36
  • Localization Success Product appears to be developed in the target market Failure: We can easily notice that the program was adapted (Please read the instructions on the package of hygiene products in the bathroom)
  • Slide 37
  • Internationalizing the UI
  • Slide 38
  • The Other Side of the Fence What Localization Managers Often Face Internally Lack of Understanding re Localization Issues and Processes Poorly Internationalized Software Underestimation of the Ripple Effect Caused by Changes Inadequate Version Control Core Project Slippage Marketing Managers Who Cant Plan Ahead Changing Priorities Inadequate International Quality Assurance FUD About Localization HOW CAN YOU HELP?
  • Slide 39
  • Building sentences out of two or more separate parts using replaceable string variables. Changes in situation will cause the calling string to call a different sub-string. This can lead to various types of problems: Linguistic logic hiccoughs The translator cant determine what or where the sub- strings are Programmers LOVE concatenation! Concatenation Definition
  • Slide 40
  • Concatenation Example The Winfax Installer has found %s. Case Microsoft S=Outlook Netscape S=Netscape Mail Notes S=Notes Email Else that you have no email provider.
  • Slide 41
  • Concatenation Excel example
  • Slide 42
  • Concatenation String probably not found by translator or hard coded.
  • Slide 43 {$1}/g; $content.= $_; } close FILE; print $content; } sub error_out { my (%HTML); $HTML{CGI} = $cgi; $HTML{ERROR} = shift; print_form("$path_templates/error.html",\%HTML); } CGI code snippet in PERL">
  • sub print_form { my ($content); my ($template,$HTML) = @_; open (FILE, " Generalization Localization -> Customization">
  • Localization vs. Internationalization Internationalization -> Generalization Localization -> Customization
  • Slide 75
  • Localization vs. Internationalization GlobalizationInternationalization =+ Localization English Localization Chinese Localization French Localization Hebrew N X Localization
  • Slide 76
  • Localization vs. Internationalization Internationalization is an essential process for preparing the product for localization The deliverables of the i18n process are two: Generic version of the application Software components of the Localization Kit
  • Slide 77
  • Localization vs. Internationalization You dont need to actually read and write 22 languages i18n is software engineering, not a linguistic process There are cross-over concepts, however, such as: Allowing sufficient white space for language growth in documentation Not hard-coding page references in books Planning website architecture to support multilingual content and navigation i10n is mainly project management!
  • Slide 78
  • The Process
  • Slide 79
  • Whos involved? Content providers (Editors, technical writers, R&D teams etc.) Localization project managers (on publisher side, on vendor side) Localization engineers (on publisher side or vendor side) Translators (In house, freelance, Single Language Vendor, sub contractors) Reviewers (In house, freelance, Single Language Vendor, sub contractors, regional office employees) Quality Assurance specialists (on publisher side, on vendor side) Finance personnel Program managers Product marketing managers Webmasters
  • Slide 80
  • A short To-Do list Researching and gathering components to be localized Preparing the content (text segmentation, resource extraction etc.) Pseudo localization and proactive i18n QA on core code Leveraging against existing TMs Effort estimation, costing Management Approval Work assignment Translation and localization Proof reading / Editing / Reviewing Testing, if applicable TM updates, maintenance of linguistic assets Delivery Billing
  • Slide 81
  • The Traditional Process Translating Content Repository Leveraging Effort assessment Reviewing Updating Linguistics assets Linguistics assets: TMs Terms Glossaries Preparing Packaging and delivery Content providers Content providers
  • Slide 82
  • Preparation
  • Slide 83
  • Research and collect all relevant components - be sure to have everything you need Create LBOM (localization bill of materials) Prepare the content (text segmentation, resource extraction etc.) using the appropriate tools.
  • Slide 84
  • Preparation Run a pseudo-localization to test localization readiness Check: Externalization of strings Adaptation of the GUI (length, date, time, currency etc.) Handling of string concatenations Software functionality Data entry, transfer, persistence, and redisplay and
  • Slide 85
  • Preparation Prepare glossary add new terms/update changed terms If you dont have a glossary prepare one, send it for translation and approve it BEFORE work starts If you as a client own the TM provide vendor with most recent version If your vendor owns the TM be sure the last (clean) version is being used (and also try to change your contract so that you get ownership of the TM)
  • Slide 86
  • Preparation Prepare a Localization Kit: A Localization Kit contains everything that anyone who touches the project needs to know in order to do their work. Localization Kit includes: Product: Text strings Menus Dialogs Shortcut keys Images Functional l10n components (tax rules) Documentation and OLH files Glossaries TMs Localization Guidelines and Expectations
  • Slide 87
  • Preparation Leverage the content against your TMs Get comparative quotes and time estimation Obtain information regarding resource arability
  • Slide 88
  • Preparation: The Vendor The vendor is your best friend! However, this friend sells words (for translation)!
  • Slide 89
  • Preparation: The Vendor What to consider: Rate: 25-30 $cent/word Pace: 1500 words/day Price should include: Translation Editing Proof reading Not included: Project management QA cost DTP Consider training the vendors translators and the proof readers: it will give them insight into the product
  • Slide 90
  • Preparation: The Vendor Be sure to establish the following: Processes Escalation process Location of translators Single focal point Localization material Deliverable TM ownership What are you paying for Bug fixing responsibility Service Level Agreement (SLA)
  • Slide 91
  • Preparation: The Vendor Be sure to determine what you are paying for: Price per word Discount for repetitions Word counting in source language or target language? QA? Bug fixing?
  • Slide 92
  • Translation
  • Slide 93
  • Basic premises: Translation is expensive Example: 1 million words = $250,000 per language A 10 languages local...