Internationalization & Pseudo Localization



Similar documents
Table Of Contents. iii

Using HTML5 Pack for ADOBE ILLUSTRATOR CS5

Best Practices White Paper: elearning Globalization. ENLASO Corporation

Field Properties Quick Reference

Software Requirements Specification For Real Estate Web Site

Microsoft Access Basics

Table and field properties Tables and fields also have properties that you can set to control their characteristics or behavior.

TRANSLATIONS FOR A WORKING WORLD. 2. Translate files in their source format. 1. Localize thoroughly

SilkTest Workbench. Getting Started with.net Scripts

Introduction to Microsoft Access 2003

MICROSOFT ACCESS 2003 TUTORIAL

Hypercosm. Studio.

Designing Your Website with Localization in Mind

The Hepldesk and the CLIQ staff can offer further specific advice regarding course design upon request.

Chapter 14: Links. Types of Links. 1 Chapter 14: Links

ReqXChanger Closing the Gap between Requirements and Modelling

Creating and Using Databases with Microsoft Access

One Report, Many Languages: Using SAS Visual Analytics to Localize Your Reports

Chapter 13 Computer Programs and Programming Languages. Discovering Computers Your Interactive Guide to the Digital World

Fig (1) (a) Server-side scripting with PHP. (b) Client-side scripting with JavaScript.

The Unicode Standard Version 8.0 Core Specification

Web CMS Forms. Contents. IT Training

How to translate your website. An overview of the steps to take if you are about to embark on a website localization project.

ACE: Dreamweaver CC Exam Guide

Intro to Mail Merge. Contents: David Diskin for the University of the Pacific Center for Professional and Continuing Education. Word Mail Merge Wizard

Microsoft Using an Existing Database Amarillo College Revision Date: July 30, 2008

ACCESS Importing and Exporting Data Files. Information Technology. MS Access 2007 Users Guide. IT Training & Development (818)

Chapter 5. Microsoft Access

Using SQL Server Management Studio

Advantage of Jquery: T his file is downloaded from

Citrix StoreFront. Customizing the Receiver for Web User Interface Citrix. All rights reserved.

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013

How to Localize Content in Tableau

Outlook Web App User Guide

INTRODUCTION TO CONSTANT CONTACT Marketing Program

Lesson 07: MS ACCESS - Handout. Introduction to database (30 mins)

MadCap Software. Import Guide. Flare 11

MOVES Batch Mode: Setting up and running groups of related MOVES run specifications. EPA Office of Transportation and Air Quality 11/3/2010

CREATING AND EDITING CONTENT AND BLOG POSTS WITH THE DRUPAL CKEDITOR

Web App Development Session 1 - Getting Started. Presented by Charles Armour and Ryan Knee for Coder Dojo Pensacola

ZABBIX. An Enterprise-Class Open Source Distributed Monitoring Solution. Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009

Designing for Magento

A comprehensive guide to XML Sitemaps:

Chapter 24: Creating Reports and Extracting Data

COGNOS 8 Business Intelligence

Webinar: Software & Mobile App Localization

Search help. More on Office.com: images templates

Activity Builder TP-1908-V02

Short notes on webpage programming languages

Adobe Certified Expert Program

Why API? Using the REST API in an education environment. JAMF Software, LLC

HOW TO CREATE AN HTML5 JEOPARDY- STYLE GAME IN CAPTIVATE

Enduring Understandings: Web Page Design is a skill that grows and develops throughout the careful planning and study of software and design.

Scheduling WebEx Meetings

Creating a Database in Access

Microsoft Dynamics GP. Extender User s Guide

You can learn more about Stick around by visiting stickaround.info and by finding Stick Around on social media.

LOG MANAGEMENT Update Log Setup Screen Update Log Options Use Update Log to track edits, adds and deletes Accept List Cancel

Right-to-Left Language Support in EMu

Support/ User guide HMA Content Management System

STATGRAPHICS Online. Statistical Analysis and Data Visualization System. Revised 6/21/2012. Copyright 2012 by StatPoint Technologies, Inc.

Integrating Microsoft Word with Other Office Applications

MS Access Lab 2. Topic: Tables

Advanced BIAR Participant Guide

Bulk Upload Tool (Beta) - Quick Start Guide 1. Facebook Ads. Bulk Upload Quick Start Guide

Universal Health Record Patient Access v2.2.4 User Guide

Apollo ACC PCI Registry Export Basics

Administrator s Guide

IE Class Web Design Curriculum

SES Project v 9.0 SES/CAESAR QUERY TOOL. Running and Editing Queries. PS Query

Intro to Web Development

Localization Engineering: The Dream Job? By Bert Esselink

Audio Localization & Subtitle Translation Best Practices

MS Access: Advanced Tables and Queries. Lesson Notes Author: Pamela Schmidt

We are focused on providing you the very best service including all the tools necessary to establish and maintain a successful website.

Web Developer Tutorial: SEO with Drupal: Page Title Module

What's New in ADP Reporting?

Adobe Flash Catalyst CS5.5

Mobile Game and App Development the Easy Way

WebSphere Business Monitor

Spotify Homepage Takeover

HP AppPulse Mobile. Adding HP AppPulse Mobile to Your Android App

INTERNATIONALIZATION FEATURES IN THE MICROSOFT.NET DEVELOPMENT PLATFORM AND WINDOWS 2000/XP

Wave Analytics Data Integration

Developer s Guide. Revised June 19, 2015

MAKING ON-LINE SCIENCE COURSE MATERIALS EASILY TRANSLATABLE AND ACCESSIBLE WORLDWIDE: CHALLENGES AND SOLUTIONS

Data Export User Guide

Transcription:

DATA SHEET 08 01 2012 Internationalization & Pseudo Localization Use Lingotek pseudo localization to test localizability of websites, software, and online content such as mobile apps, elearning, surveys, and video games. Proving your content is properly internationalized will save time, reduce costs, and ensure high quality localization. Contents 1) Internationalization...2 1.1 Benefits of Internationalization...2 1.2 7 Elements of Localizability...2 2) Pseudo Localization...4 2.1 Benefits of Pseudo Localization...4 2.2 Pseudo Localization in Lingotek s Platform...4 2.3 Checklist of Elements to Inspect with Pseudo-localized Files...5 2.4 Pseudo Localization Example...6 3) Change the Way your Company Internationalizes...6 3.1 Do It Yourself...6 3.2 Make Companywide Change Easier...6 3.3 Invite Lingotek to help with Company Training...6 3.4 Additional Resources...7 For questions about this datasheet, contact Adam Wooten, Lingotek s Director of Translation Services at awooten@lingotek.com or 801.331.7777 Copyright 2012 Lingotek, Inc. / No portion of this document may be copied or reproduced without crediting and obtaining express permission from Lingotek THE TRANSLATION NETWORK 801.331.7777 www.lingotek.com services@lingotek.com

1) Internationalization Internationalization is preparation that ensures faster, cheaper, and easier localization. 1.1 Benefits of Internationalization According to the Localization Industry Standards Association, years of anecdotal evidence show that proper internationalization cuts localization time and costs by 50%. One way to look at internationalization $1,000 fix in 1 language in internationalization $20,000 OR fix in 20 languages + in localization $20,000 fix for each update in 20 languages 1) Regional Settings Can settings for the following be changed automatically according to locale? Currency formats (e.g. $,,,, etc.) Measurement formats (e.g. metric) Number formats (e.g. decimal separators: other countries use commas where the U.S. would use a decimal point 1,000.00 vs 1.000,00 ) Time/date and calendar formats (e.g. other countries list day before month) Address and phone number formats (e.g. zip codes) Sorting rules (e.g. A-to-Z vs Asian character sets) 2) Character Sets Do various character sets display correctly? It is better to fix localization problems once in the source language files so they do not need to be fixed multiple times in multiple localized languages. 1.2 7 Elements of Localizability The main elements of localizability include the following: 1) Regional settings 2) Character sets 3) Translatable text 4) Over-externalization 5) Text expansion 6) Image text 7) Concatenated strings Example Set European Double byte & Asian Right-to-left Example Characters Español, Français, Português, Русский 中 文 简 体, 中 文 繁 體, 日 本 語 תירבע ةيبرعلا 2

On the other hand, are corrupted/junk characters appearing in place of foreign characters? See the following example from Wikipedia: Output encoding Setting in Browser Result Arabic example: ناسنإلا قوقحل ىملاعلا نالعإل ISO 8859-1 ï» Ø Ù Ø Ø¹Ù Ø Ù Ø Ù Ø¹Ø Ù Ù Ù Ù ØÙ Ù KO18-R О ь ы ь ь ы ь ы ь ы ь ь ы ы ы ы ь ы ы ы ь ы ь ы ьёь ы UTF-8 ISO 8859-5 ялпиїй иѕийй иїй иїй ийиїй й й й ий й й иїй иѕй игиїй CP 866 О ь ы ь ь ы ь ы 8859-6 ISO ع ظ ع ع عظ ع ع ع ع ظ ظ ع ظ ع ظ ع ظ ظ ISO 8859-2 ďťżř Ů ŘĽŘšŮ Ř Ů Ř Ů ŘšŘ Ů Ů Ů Ů ŘŮ Ů Ů Ř Ů ŘĽŮ ŘłŘ Ů Be aware - track your encoding! Unicode supports most (90) of the world s scripts (writing system). Most companies will choose UTF-8. For more information, read Internationalization and the Case for Unicode and other articles at Unicode.org. 3) Translatable Text Is all translatable text externalized into resource files and/or tagged so that it can be extracted with filters? This allows you to reap the following benefits: Reduce or eliminate the costly and time-consuming manual labor otherwise needed for text extraction and replacement Reduce human touch points to reduce human error (changes/omissions) 4) Over-Externalization Avoid over-externalization. Ensure non-translatable strings (i.e. code) are not included with the text extracted for translation. Translators are best at translation, not programming, so it is best to keep them from touching anything they shouldn t When over-externalized code is translated, it can essentially break the application and prevent the localized version from compiling correctly 5) Text Expansion Text tends to expand in translation, so leave room for text expansion, either with existing sizing or with dynamic resizing. For example, Spanish text usually expands 20% to 30% longer than English. English text usually expands 20% to 60% longer than Japanese. Translated buttons that do not properly handle expansion Expansion percentages are even greater for very short strings of text. Strings <7 characters can expand 100% to 300%. 6) Image Text Embedded or hardcoded text requires more time and money for localization. Sometimes, localization of such text required complete recreation of the original image. Whenever possible, separate text from images in different layers. In websites and web applications, CSS and javascript can be used to create an embedded appearance. At a minimum, save the original, editable image files (i.e. in Photoshop, Illustrator or Visio files) for reuse in localization. 7) Concatenated Strings Limit concatenation. String concatenation is the operation of linking two or more character strings end to end. For example, this is how dynamic feedback from your bank is delivered over the phone. Many concatenations can cause problems for translators. Translators often need to restructure sentences or indicate word gender/plurality, but that can be awkward or impossible with many variables. Even when accommodating concatenations is possible, it is still less cost-effective. It is better to provide complete strings and move variables to the outside of strings. 3

The following examples show how string concatenation might typically be used and then a better way to write such strings for internationalization: Typical string concatenation 1: The accounts will be deleted 2: The files will be deleted one after the other %s has %d minutes remaining to complete %d questions Better internationalized strings 1: The accounts will be deleted one after the other 2: The files will be deleted one after the other User: %s Minutes remaining: %d Questions remaining: %d 2) Pseudo Localization Pseudo localization also goes by the following names: Pseudo translation Test translation Round-trip test translation Translation simulation Dummy translation It is a matter of simulating translation by automatically replacing text with test characters while preserving non-translatable code and simulating expansion or contraction. 2.1 Benefits of Pseudo Localization Pseudo localization enables quick testing of 5 of the 7 elements of localizability: 1) Regional settings 2) Character sets 3) Translatable text 4) Over-externalization 5) Text expansion 6) Image text 7) Concatenated strings Pseudo Localization helps test at least 5/7 elements elements of localizability Multiple Character Sets Lingotek automatically suggests sets of example characters that match the languages requested for translation. Additional custom characters may also be used. Simulation of Expansion and Contraction A percentage between -50% and 100% may be selected to simulate expansion or contraction. Insertion of Marker Characters Prefix and suffix marker characters may be inserted to easily determine where strings begin and end, thus indicating if expansion is handled adequately. Preservation of Non-Translatable Code Variables and other code are preserved to ensure the pseudo-localized files will compile correctly. The results help to ensure a company is reaping the benefits of proper internationalization, including shorter time lines, reduced costs, and more reliable quality. 2.2 Pseudo Localization in Lingotek s Platform Lingotek s pseudo localization includes the following features: Automatic Character Replacement Using the same filters that extract and replace text during actual translation, Lingotek automatically replaces all text with test characters. The above screenshot displays the pseudo localization options available within Lingotek s Collaborative Translation Platform. 4

2.3 Checklist of Elements to Inspect with Pseudo-localized Files Pseudo-localized files can help ensure websites and software will be localized quickly and cost-effectively. How localizable is your application or website? Compile the pseudo-localized files (provided by Lingotek) and determine if you can answer yes to the following questions. As necessary, adjust the source files and repeat the pseudo localization process with Lingotek. Element Description What to look for in the website or application? Over-externalizing Ensure non-translatable Did the website or application compile correctly? strings are not included with the extracted text for translation Character sets Ensure that the website or Do all the characters display correctly in the application correctly supports compiled website or application? all necessary character sets correctly Translatables Ensure non-translatable Has all the text in the application been replaced strings have been externalized by the pseudo-localized characters? in resource files and / or tagged so that they can be extracted with filters Expansion Ensure dialog boxes and forms Do the prefix and suffix markers (i.e. { and } ) allow for text expansion either appear correctly at the beginning and end of each with existing sizing or dynamic string? resizing Image text Identifies text that is embedded Does no English text remain embedded into images and must require in images? extra time for localization Other elements of localizability to examine Element Description What to look for Concatenations Ensure there are not In the decompiled website or application, do you too many concantenations that avoid many variables and / or other code dividing a may cause problems for single string of text in a way that might prevent translators easy sentence restructuring or word reordering by the translator? Regional settings Ensure regional settings Can the following settings be changed (including time and date for each locale? formats) have not been hard- Currency formats coded Sorting rules (e.g. A-Z vs character sets) Measurements formats (e.g. decimal separators) Time / date and calendar formats Address and phone number formats 5

2.4 Example: Pseudo Localization Here are two examples of what pseudo localization might look like for the following screenshot: The first screenshot shows what the pseudo localization might look like if the application still needs to be internationalized before translation begins. If adjustments need to be made, pseudo localization should be repeated until the pseudo localized application (or website) looks like the second example, where no problems are identified. 2.4.1 Example: Multiple Internationlization Issues Identified 3) Change the Way Your Company Internationalizes Be the hero who makes localization more rapid, cost-effective, and problem-free at your company. 3.1 Do It Yourself Ask your Lingotek representative to create a pseudo localization for you or use Lingotek s Collaborative Translation Platform to do it yourself. Then use the checklist provided to identify areas for improvement. Your next localization project will run much more smoothly. Even if you do not request it separately, pseudo localization is a free, standard part of every Lingotek localization project. This example identifies the following potential internationalization problems: 1) Some text remains in English, which means one of the following: Not all translatable text is externalized in resource files or tagged for translation OR Not all translatable text has been separated from images 2) Characters are not displaying properly - in this case, they appear as question marks - so there are apparently issues with encoding and character support 3) Suffix markers are cut off in two strings, indicating that text expansion is not handled properly 2.4.2 Example: No Internationlization Issues Identified 3.2 Make Companywide Change Easier Clients repeatedly tell us they have a difficult time convincing fellow developers, designers, and writers to follow principles of proper internationalization until they finally show them the pseudo localization and a light bulb turns on. Something about visually identifying the problems finally causes the concepts to click with colleagues. People who have been resisting instructions to internationalize a website or something similar finally get it and make course corrections very quickly. Try using a pseudo localization to illustrate opportunities for internationalization and convince your most stubborn colleagues. 3.3 Invite Lingotek to Help with Company Training Lingotek has shared these free do-it-yourself tips in many conference presentations, webinars, and one-onone tutorials. Invite us in to explain these principles to your team. We can even pseudo localize your own content beforehand to display the most relevant examples in the presentation. In this successfully internationalized version, all text is properly replaced with pseudo translations, all characters display correctly, and prefix and suffix markers show proper handling of text expansion. 6

3.4 Additional Resources Check out the following additional resources and reference materials on the topic of internationalization: 1) Internationalization Tips & Guides from Tech Giants Microsoft: http://msdn.microsoft.com/en-us/goglobal/bb892890 IBM: http://www-01.ibm.com/software/globalization/ and http://userguide.icu-project.org/i18n Oracle: http://developers.sun.com/global/ and http://www.openoffice.org/specs/collaterals/guides/i18n_in_software.html Apple: https://developer.apple.com/internationalization/ Google: https://developers.google.com/search?q=internationalization Facebook: http://developers.facebook.com/docs/internationalization/#best Mozilla: http://www-archive.mozilla.org/docs/reflist/i18n/ Adobe: http://blogs.adobe.com/globalization/reference_materials/ and http://www.adobe.com/cfusion/search/index.cfm?term=internationalization Yahoo!: http://search.yahoo.com/search?p=internationalization&vs=developer.yahoo.com%2cdeveloper.yahoo.net and http://yuilibrary.com/yui/docs/intl/ 2) Internationalization Tips & Guides from Other Projects Debian http://www.debian.org/doc/manuals/intro-i18n/ Ruby http://guides.rubyonrails.org/i18n.html Perl http://perldoc.perl.org/perllocale.html PHP http://php.net/manual/en/book.intl.php Python http://docs.python.org/library/i18n.html XML http://www.w3.org/tr/xml-i18n-bp/ 3) Internationalization Books & Tutorials A Practical Guide to Localization by Bert Esselink http://benjamins.com/#catalog/books/liwd.4 Going Global with Javascript & Globalize.js by Jukka Korpela http://www.bytelevelbooks.com/books/global_javascript.html Java Internationalization by David Czarnecki and Andrew Deitsch http://www.amazon.com/java-internationalization-series-david-czarnecki/dp/0596000197 Web Internationalization Tutorial by Tex Texin & Yves Savourel http://www.xencraft.com/training/webstandards.html Copyright 2012 Lingotek, Inc. No portion of this document may be copied or reproduced without crediting and obtaining express permission from Lingotek THE TRANSLATION NETWORK www.lingotek.com Translation Software: sales@lingotek.com (801) 662-0050 (877) 852-4232 opt 2 - Toll free Translation Services: services@lingotek.com (801) 331-7777 opt 1 (877) 852-4231 opt 1 - Toll free Support: support@lingotek.com (801) 331-7777 opt 3 9 am - 6 pm MDT 7