Webinar: Software & Mobile App Localization



Similar documents
Designing Your Website with Localization in Mind

Confluence 3.5 JIRA 4.3 Customer Webinar

Designing Global Applications: Requirements and Challenges

Localization Testing in Mobile World Software Testing Conference, 2013

Internationalization & Pseudo Localization

Internationalization Programming for Mobile Applications

Theatres/Channels All theatres. Indirect channel. Author/Owner

SOFTWARE LOCALIZATION FOR AGILE, WATERFALL, AND HYBRID DEVELOPMENT

Python for Series 60 Platform

Product Globalization Service. A Partner You Can Trust

SAP BusinessObjects Document Version: 4.1 Support Package Dashboards and Presentation Design Installation Guide

Microsoft Dynamics GP. Multilingual Checks

The Reporting Console

Language Translation Services RFP Issued: January 1, 2015

Translation and Localization for Global Business

We Answer To All Your Localization Needs!

Hypercosm. Studio.

Mobile Testing, Agile Methodologies & You!

Best Practices White Paper: elearning Globalization. ENLASO Corporation

Red Hat Enterprise Linux International Language Support Guide

Making a Website with Hoolahoop

INTRODUCTION: Localization Guidelines. The Guideline Content Starts on the Following Page

USER GUIDE. Unit 2: Synergy. Chapter 2: Using Schoolwires Synergy

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

from Microsoft Office

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

Ansur Test Executive. Users Manual

X-Edit for Windows Release History

MEAP Edition Manning Early Access Program Hello! ios Development version 14

MICROSOFT OFFICE SHAREPOINT 2007

Reason for Update This new release is mainly intended to address the Windows 2000 Operating System with Océ PostScript Drivers.

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

ilinc Implementation Guide: Preparation, Setup, Rollout, & Follow-up

Operationalise Predictive Analytics

An Introduction to Translation & Localization for the Busy Executive

BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7

Table Of Contents. iii

2015 IBM Continuous Engineering Open Labs Target to better LEARNING

Increasing Productivity and Collaboration with Google Docs. Charina Ong Educational Technologist

Create a Presentation on Marketing. Intel Easy Steps Intel Corporation All rights reserved.

Lee Barnes, CTO Utopia Solutions. Utopia Solutions

VisionView Maintenance Utility Release Notes

Topaz Installation Sheet

COMMON All Day Lab 10/16/2007 Hands on VB.net and ASP.Net for iseries Developers

Selling on strategy. A Step by Step Guide part 2

Customer Support Engineer

The Principle of Translation Management Systems

Localization Engineering: The Dream Job? By Bert Esselink

QuarkCopyDesk ReadMe

Any Software Any Language Instantly!

Infor M3 Report Manager. Solution Consultant

To install Multifront you need to have familiarity with Internet Information Services (IIS), Microsoft.NET Framework and SQL Server 2008.

What fascinates me about BAM is not only its ability to deliver reports at Real Time but also alert Business people when they need them most.

TIBCO Fulfillment Provisioning Session Layer for FTP Installation

Introduction. Why (GIS) Programming? Streamline routine/repetitive procedures Implement new algorithms Customize user applications

Armanino LLP Welcomes You To Today s Webinar: GP Tips and Tricks: Using Credit Cards in GP

14.1. bs^ir^qfkd=obcib`qflk= Ñçê=emI=rkfuI=~åÇ=léÉåsjp=eçëíë

Selling on Strategy Part 2

Translation Proxy A New Option for Managing Multilingual Websites

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

Pcounter Web Report 3.x Installation Guide - v Pcounter Web Report Installation Guide Version 3.4

Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB)

OFFICE KEYBOARD (MT1210 & MT1405) OFFICE FEATURES

Looking Good! Troubleshooting Display Problems

OX Spreadsheet Product Guide

CS106A, Stanford Handout #38. Strings and Chars

Accelerate Testing Cycles With Collaborative Performance Testing

Building A Very Simple Web Site

Net Developer Role Description Responsibilities Qualifications

If you want to skip straight to the technical details of localizing Xamarin apps, start with one of these platform-specific how-to articles:

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

White Paper. Translation Quality - Understanding factors and standards. Global Language Translations and Consulting, Inc. Author: James W.

SENSE/NET 6.0. Open Source ECMS for the.net platform. 1

Kalaam Media. Scope of work to build a website

Top 10 Oracle SQL Developer Tips and Tricks

OPTIMIZING CONTENT FOR TRANSLATION ACROLINX AND VISTATEC

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Resco CRM Guide. Get to know Resco CRM

SEIZING THE OPPORTUNITY IN INTERNATIONAL MARKETS

Oracle Application Express MS Access on Steroids

ON24 Platform 10 Webcasting Industry Standard for Demand Generation and Customer Engagement

SOFTWARE TESTING TRAINING COURSES CONTENTS

Administrator Manual Across Personal Edition v6 (Revision: February 4, 2015)

Introduction to UNIX and SFTP

Maximizing the Data Exploration Capabilities of Power View. Melissa Coates. SQL Saturday Kalamazoo 11/2/2013. BI Architect, BlueGranite

Windows XP Chinese Character Support Installation Instruction

Cataloging in East Asia Library of Yale University

SAFECode Security Development Lifecycle (SDL)

Transcription:

Webinar: Software & Mobile App Localization Presented by: Jon Ritzdorf March 22, 2012

s2 Webinar Tips Minimize control panel To ask questions use Questions area

Slide 2 s2 Only use this slide if we're using GTM sengelsen, 3/19/2012

Presenter Jon Ritzdorf Globalization Architect

Agenda > Understanding Internationalization Common Challenges & Solutions Global Readiness Testing > Localization Process Preparation Translation/Review Testing > Checklist >Q & A

UNDERSTANDING INTERNATIONALIZATION

Illustrating Internationalization We color everything with our cultural norms Internationalization (i18n): Priming the walls to accept any color English becomes just another language

Internationalization > Focused on enabling your software to support global markets without engineering changes to the core application each time you add a market!

Two Core Enablements 1.Language 2.Locale

Language Pitfalls Strings & Display Input & Output Language Collation & Sorting Search > The most critical of all issues > Results in user abandonment of software

Strings: Externalization > Ideally, software strings are all externalized in a resource format Content in resource file separate from code Shared code Content in language X Content in language Y Content in language Z greetings= Hello. inquiry = How are you? farewell = Goodbye. greetings= Olá. inquiry = Como você está? farewell = Tchau. greetings= 你 好 inquiry = 你 好 嗎? farewell = 再 見 messages = ResourceBundle.getBundle(currentLocale); System.out.println(messages.getString("greetings")); System.out.println(messages.getString("inquiry")); System.out.println(messages.getString("farewell"));

Display: Expansion Browse Close Durchsuchen Schließen 20-50% > Give ample whitespace for UI controls (20-50%+ vs. English)

Display: Fonts & Corruption > Ouch! It was supposed to be Korean No font support Corrupted

Input: Alphabetic Languages European Korean

Input: East Asian Input Method Editors (IME) An interpreter between your typed output and the input that is entered into the system to point to to stab to insert to hold up, to offer 指 す to shine on to color, to pour into

Input: Support > Do all your input fields accept natural keyboard input for your desired language(s)?

Four Solutions for Language 1. Use interface fonts that support multiple languages 2. Use Unicode throughout 3. Flexible UI layouts or provide length limitations 4. Test for real language input

Locale Pitfalls Dates, Time & Calendars Personal Data Conventions Locale Number & Currency Conventions Icons/Graphics > High annoyance factor > Will be frustrating or offensive to the user, but it is still possible to use the software

Dates 03/01/12 USA: March 1, 2012 France: January 3, 2012 Japan: January 12, 2003 Taiwan (Political): January 12, 1914

Calendars > First day of the week? Sunday Americas East / SE Asia Monday Most of Europe Saturday Middle East

Times, Numbers & Currencies 12-hr. or 24-hr. Unit or currency conversion? Comma, period or space?

Personal Data: Names > Easy to fit a name into a compartmentalized data structure of 2 or 3 separate parts

Personal Data: Names China & Japan 2-5 characters, cannot be broken up, might have English and/or romanized name too 李 振 藩 (Lee Jun-fan) 本 田 宗 一 郎 (Honda Sōichirō) Bruce Lee Hungary last name first, no such thing as middle names Kovács Júlia Family name Given name Malaysia & Indonesia Anything goes, even given names with no family name Fam Khiuk Yen Finy Wirawan Suharto Megawati Soekarnoputri

Four Solutions for Locale 1. Know target languages and locales before development Français 中 文 2. Identify culturally specific areas in your app SSN: 3. Rely on existing APIs for date/time/number support 4. Get familiar with the conventions of the target locales

Global Readiness Testing Test the language and locale support of your software before going too far along INTERNATIONALIZATION Global Readiness Testing locale & languageneutral support LOCALIZATION Cosmetic Testing Linguistic Testing cosmetic UI checks; locale-specific functional checks In-context language verification within runtime UI

Global-Readiness Testing Looking for the ability of software to: Adapt to user locale preferences in target market(s) Adapt to user language preferences for intended market(s) Accept, parse and output language data for intended market(s)

LOCALIZATION PROCESS

Illustrating Localization Adding local color to our primed walls Localization (l10n): From the blank wall you create Chinese, French, Turkish English! Remember, English is just another language!

Localization > After internationalization > Focused on adapting your software to support local markets > Creating a look and feel appropriate for a specific market

Localization: In Three Steps 1 Plan Deliverables 2 Translate/ Review Cultural Assessment 3 Test Setup File Formats Resources Build Release & Update Schedules Language Assets Cosmetic & Linguistic QA

1. Planning Deliverables What needs to accompany the software? Release notes, EULA, ReadMe, Help system, Wiki, Documentation, Quick Guide, Packaging? Local requirements? Required by law that software/firmware sold in the target market be accompanied by {x}?

1. Planning File Formats Software strings are ideally delivered in a resource file specific to the platform Platform (Programming/Scripting Languages) Microsoft - Win32 (Visual C++, VB 6) Microsoft -.NET (C#, VB.NET, ASP.NET) Java (Java/JSP) Open-Source (Python/Tcl/awk/Perl/PHP) Ruby on Rails Resource.rc.resx.properties.po.yml DB Databases.csv,.xml

1. Planning Release Schedule Delayed Release English released 1 month French, German and Italian started French, German and Italian released Staggered/Consecutive Release English released French finalized and released 1 week 1 week German finalized and released 1 week Italian finalized and released Simultaneous Release Simship French, German and Italian released with the English

1. Planning Release Schedule English schedule = international? Cyclical ( Waterfall Dev.) Ex: two releases per year Rolling ( Agile Dev) Ex: {x} updates per year, every 2 weeks or so Sporadic/Random ( Ad hoc Dev.) Ex: on request from your customers

2. Translation/Review Culture Cultural considerations? Review UI images/icons esp. for Mobile! Does the icon make sense outside of the USA? Cultural, political or religious interpretation?

2. Translation/Review Resources Who will translate & review the content? A language vendor Internal employees Former employees Trusted end-users Resellers Combination

2. Translation/Review Assets Glossaries? Style Guides? Is this a gadget, doohickey, thingamajig or contraption? Formal: Proceed Casual: Next Intimate: Rock On! What register does your international audience use?

2. Translation/Review Assets Recyclability of translations for updates and future product releases? Translation Memory Terminology Databases

3. Testing Setup Platform, OS, Browser: Localized versions? Hardware and firmware?

3. Testing Builds Builds and versions can get complicated very quickly COMPILE Localized Resource file Localized Binary Build Tree = C#.NET

3. Testing Cosmetic & Linguistic QA The UI of software must be checked in context per language to catch any bugs INTERNATIONALIZATION Global Readiness Testing locale & languageneutral support LOCALIZATION Cosmetic Testing Linguistic Testing cosmetic UI checks; locale-specific functional checks In-context language verification within runtime UI

Going Global Checklist Pre-handoff Test pass(es) for potential internationalization issues completed beforehand All software strings externalized to resource formats Clear on what is to be sent for translation Clear on language & QA stakeholders

Going Global Checklist Handoff Include only what is relevant for translation Demo version of the English app for reference Special Instructions (as needed) Examples: String length limits Build instructions

Going Global Checklist Testing Set up? Platforms, OSes, browsers, localizations? Who does what? Scope? language-focused test script user test cases Bug tracking/logging?

Conclusion 1. Know your markets and their respective languages and cultural conventions 2. Internationalization 1 st, Localization 2 nd 3. Make sure you have defined everyone s role in the overall process (i.e., who does what?)

QUESTIONS

Resources Top 10 Software Localization Tips http://www.acclaro.com/software-localization-tips Top 10 Mobile App Localization Tips http://www.acclaro.com/mobile-application-software-localization Top 10 Software Globalization Testing Tips http://www.acclaro.com/software-globalization-testing-tips Software Localization Blog Posts http://www.acclaro.com/translation-localization-blog-category/software Software/Mobile Apps Websites Documentation Marketing Multimedia Jon Ritzdorf Globalization Architect jritzdorf@acclaro.com 914-433-4908 Based in Irvington, New York