bcb943fa67e5b02466c393ff7f893d5b.ppt
- Количество слайдов: 59
Exchange 2001 PROGRESS WORLDWIDE C 12: “Come in Rangoon!”: Global Accessibility and Deployment Texin, General Product Manager Progress Software
“Come in Rangoon!” “Radio Progress Calling” Exchange 2001, Washington, DC, USA 2 © 2001, Progress Software Corporation
I shoulda known betta! Idioms and humor do not translate. . . “Come in Rangoon!” Even the translators did not know what it meant… Possible French replacement: “Le 22 á Asniéres” a famous (we hope) French joke. Possible Spanish replacement: “¿E-business? Que se ponga. ” Also based on a joke from Spain. (Jose Miguel Gila’s line. ) But the line was not known in Latin America, so: “Adelante Timbuktu!” Exchange 2001, Washington, DC, USA 3 © 2001, Progress Software Corporation
Lessons Learned n n n Rangoon, Burma no longer exists. It is now Yangon, Myanmar Avoid humor. Avoid idioms. Speak simply and directly. Test with native speakers. Test with different dialects. – France vs. Fr. Canada – Spain vs. Latin America Exchange 2001, Washington, DC, USA 4 © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 5 © 2001, Progress Software Corporation
Isn’t the web mostly English? From: http: //www. glreach. com/globstats/index. php 3 Exchange 2001, Washington, DC, USA 6 © 2001, Progress Software Corporation
Internet Commerce (B 2 B + B 2 C) ($Billions) 36% US 61% US Source: ICMM V 7. 0, IDC 2001 Exchange 2001, Washington, DC, USA 7 © 2001, Progress Software Corporation
People Prefer Local Language. . . % Preferring Native Language Sites Source: IDC Project Atlas, 1999 Exchange 2001, Washington, DC, USA 9 © 2001, Progress Software Corporation
…But Commerce Crosses Borders % of Home Web Spending In-Country Source: IDC Project Atlas, 1999 Exchange 2001, Washington, DC, USA 10 © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 12 © 2001, Progress Software Corporation
Definition of terms Internationalization To design and develop an application: n – without built-in cultural assumptions – that is efficient to localize Localization To tailor an application to meet the needs of a particular region, market, or culture n Translation To render an application into another language n Exchange 2001, Washington, DC, USA 13 © 2001, Progress Software Corporation
Regional business requirements n Legal requirements – Privacy laws – Import/Export laws – Advertising – Language n Accounting requirements – Taxes, reporting, currency n Support – Lemon laws Exchange 2001, Washington, DC, USA 14 © 2001, Progress Software Corporation
Regional business requirements n Hardware and infrastructure varies – Cost of phone or net services – Availability and speed e. g. landline vs cellular – Market leadership n Japan’s NTT Do. Co. Mo i-mode vs. WAP – Display devices use different form factors n n Preference for terminal, GUI, browser or phone Computer literacy Exchange 2001, Washington, DC, USA 15 © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 16 © 2001, Progress Software Corporation
Let’s start our application design with an icon for our home page n n n Exchange 2001, Washington, DC, USA 17 The place to return to The place to begin from Place of safety Baseball’s home base Click your heels 3 times… But, these associations are not universal © 2001, Progress Software Corporation
Let’s start our application design with an icon for our home page n n n Exchange 2001, Washington, DC, USA 18 French: démarrage (start) Ger. Startseite (start page) Japan: Ho-mu pe-ji In many regions, homes do not look like this. So this icon is a poor choice, but due to wide exposure may now be recognized although still not understood. © 2001, Progress Software Corporation
User interface design Choosing graphics and text n n n Avoid puns and word play (ini 2 reg) Avoid metaphors (home, desktop, toolkit) Avoid body parts and positions (eyes, hands, feet) n n Avoid sports references (homerun) Avoid animal symbols (owl, dog, cow, …) Avoid religious symbols (stars, crosses) Be aware that reading directions can be left to right or right to left. Exchange 2001, Washington, DC, USA 19 © 2001, Progress Software Corporation
Exchange 2001, Washington, DC, USA 20 © 2001, Progress Software Corporation
What does this say? The detergent cleans dirty shirts. . . Unless you are a right-to-left reader from the Middle-East. . . Exchange 2001, Washington, DC, USA 21 © 2001, Progress Software Corporation
User interface design Avoid putting text in images n Graphics expensive to update Font difficult to create Background difficult to replace New text may interfere with image n Solution: Use Tooltips n n n Exchange 2001, Washington, DC, USA 22 © 2001, Progress Software Corporation
User interface design Use generalization and abstraction (Icons courtesy of The Icon Book, W. Horton) Exchange 2001, Washington, DC, USA 23 © 2001, Progress Software Corporation
User interface design Formatted or structured data n n n Date, Time, Year, Calendar, Workweek Number, Precision, Size Rounding, Currency Title, Name Order, Address Page Size, Measurement units Exchange 2001, Washington, DC, USA 24 © 2001, Progress Software Corporation
User interface design Color and sound n Red n White Danger in the U. S. Purity in U. S. Marriage in China Funeral color in Asia n Error Beeps: A source of great embarrassment. Exchange 2001, Washington, DC, USA 25 © 2001, Progress Software Corporation
User interface and reports Plan for translation n Translation can be larger than original text English: Speed Limit German: Geschwindigkeits-Begrenzung n Translators need context and flexibility – Avoid building sentences from fragments – Avoid dynamic widget creation – Word order may change Don’t do this: “There are ” + i + “tables in” + j “files. ” Do this: Substitute(“There are &1 tables in &2 files. ”, i, j). Substitute(“Dans les fichiers &2, il y avait &1 tables”, i, j). Exchange 2001, Washington, DC, USA 26 © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 27 © 2001, Progress Software Corporation
Character handling Character sets n A collection of symbols – Letters, Digits – Punctuation – Arithmetic – Special symbols e. g. © ® § ¶ ¥ £ – Line drawing – Control codes Exchange 2001, Washington, DC, USA 28 © 2001, Progress Software Corporation
Character handling Code pages n n Each symbol assigned a numeric value Vary by language, device, operating system Ä = 196 in ISO 8859 -1 (Unix) Ä = 142 in IBM 850 (Dos) Exchange 2001, Washington, DC, USA 29 © 2001, Progress Software Corporation
ISO Latin-1 (ISO 8859 -1) Code Page 32 64 96 128 160 192 224 Exchange 2001, Washington, DC, USA 30 © 2001, Progress Software Corporation
Russian Windows Code Page CP 1251 32 64 96 128 160 192 224 Exchange 2001, Washington, DC, USA 31 © 2001, Progress Software Corporation
Japanese, Chinese, Korean Languages with >255 characters Use Double-byte Character Sets (DBCS) Mixed size characters: 1 or 2 bytes ASCII compatible Text: # Chars: # Bytes: S 1 1 S 2 2 S 3 3 L T L T S 4 4 5 5 6 6 7 4 5 6 7 8 9 10 S 8 11 How long is a DBCS string? Exchange 2001, Washington, DC, USA 32 © 2001, Progress Software Corporation
Deploying across platforms/devices Real World Example: Russia Client Windows 1251 Unix ISO 8859 -5 Printer KOi 8 -R Database Server Dos R-code Files ? ? Database code page DOS ibm 866 Exchange 2001, Washington, DC, USA 33 © 2001, Progress Software Corporation
Progress Solution Every blue line is a conversion -CPINTERNAL 1251 Client -CPINTERNAL ISO 8859 -5 -CPPRINT KOi 8 -R Database Server Dos Files ISO 8859 -5 R-code Labeled Database labeled -CPSTREAM IBM 866 Exchange 2001, Washington, DC, USA 34 © 2001, Progress Software Corporation
Unicode Character Set A Worldwide, Multilingual Code Page Example Unicode Characters Exchange 2001, Washington, DC, USA 35 © 2001, Progress Software Corporation
Progress and Unicode UTF-8 is multi-byte form of Unicode e. g. É is 1 character, 2 bytes, 1 column n Programming is same as Double-byte n – Modify LENGTH, SUBSTRING, OVERLAY – Specify RAW, CHARACTER, COLUMN – Use -CHECKDBE to find changes Exchange 2001, Washington, DC, USA 36 © 2001, Progress Software Corporation
Unicode Configurations 4 GL client with any code page Java or Active. X Unicode client 4 GL client with any other code page Exchange 2001, Washington, DC, USA UTF-8 Batch client UTF-8 App. Server 37 UTF-8 Progress Database Server UTF-8 Progress Database SQL-92 UTF-8 client SQL-92 UTF-8 Database © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 38 © 2001, Progress Software Corporation
Processing of a URL http: //www. progress. com n n n web server Give browser a URL http requests the page request routed to web server processes request and serves a page http back to browser receives, parses html and displays page Exchange 2001, Washington, DC, USA 39 http url html pages to serve © 2001, Progress Software Corporation
But users, servers and pages can be anywhere and in any language http: //www. progress. jp http: //www. progress. no code page EBCDIC code page GB 2312 Sprechen sie html Deutsch? Exchange 2001, Washington, DC, USA html Parlez-vous français? 40 © 2001, Progress Software Corporation
Let’s look at an example web page Exchange 2001, Washington, DC, USA 41 © 2001, Progress Software Corporation
The same web page viewed in Japan Exchange 2001, Washington, DC, USA 43 © 2001, Progress Software Corporation
The same web page viewed in Japan The browser has no information about the code page of the web page. It uses a default value which in this case, is very wrong and even confuses the markup (see beauté). Exchange 2001, Washington, DC, USA 44 © 2001, Progress Software Corporation
Solutions n n n Tell user “set browser code page” User picks url based on code page Entity names é ç è ê € note: names are case-sensitive n NCRs (Numeric Character References) – e. g. Use 20 AC; for Euro – Netscape 4. 72 doesn’t recognize – File size expands – easier to automate than entity names Exchange 2001, Washington, DC, USA 45 © 2001, Progress Software Corporation
Example with entity names and NCRs
Bienvenue au cours Web. SpeedNous espé rons que vos applications ebusiness fonctionneront en franç ais. Les franç ais achè tent les produits suivant sur internet; vê tements produits de beauté
… … Don’t forget to put in Euros ( 20 AC; ) not Dollars ($) Exchange 2001, Washington, DC, USA 46 © 2001, Progress Software Corporation
Or specify the charset in the HTML! n n Set character set in http protocol Set http charset using the HTML element META – Use the IANA name for the character set This is the preferred approach! Exchange 2001, Washington, DC, USA 47 © 2001, Progress Software Corporation
Declaring language and locale LANG, SPAN, DIV
Processing of a URL n n n http: //www. progress. com Give browser a URL web Returned page offers ISO 8859 -2 server language, locale choices http url Choosing determines the next page returned Declared Charset in HTML allows browser to html pages perform conversions and to serve correct display html Accept-charset, Acceptlanguage can be used to French, Russian, Web. Speed aid selection cp 1250 cp 1252 Exchange 2001, Washington, DC, USA 51 © 2001, Progress Software Corporation
Tips for Web Internationalization n User selects region & language on initial web page – Don’t assume language = region – Don’t use country flag for language n Users expect local URLs – xxx. jp, xxx. cn, xxx. uk, xxx. de, … Exchange 2001, Washington, DC, USA 52 © 2001, Progress Software Corporation
Examples Progress local URLs progress. co. at progress. be progress. cz progress. de progress. dk progress. com. ec progress. no progress. com. ru progress. co. cr progress. com. gt progress. com. mx progress. com. pk progress. com. ro progress. se progress. sk progress. ph Exchange 2001, Washington, DC, USA Austria Belgium Czech Republic Rep. of Germany Denmark Ecuador Norway Russian Fed. Costa Rica Guatemala Mexico Pakistan Romania Sweden Slovakia Philippines 53 © 2001, Progress Software Corporation
Examples Progress(-)software local URLs progress-software. com. au progress-software. com. ar progress-software. be progress-software. com. br progress-software. fr progress-software. com. hk progress-software. co. jp progress-software. nl progress-software. se progress-software. ch progress-software. co. uk progresssoftware. co. uk -software. es Spain progress-software. pl progress-software. fi Exchange 2001, Washington, DC, USA Australia Argentina Belgium Brazil France Hong Kong Japan Netherlands Sweden Switzerland United Kingdom progress Poland Finland 54 © 2001, Progress Software Corporation
XML declares the encoding in the opening declaration xml version="1. 0" encoding="UTF-8" ? > n You can use other encodings, but Unicode is the only one with guaranteed support n XML: lang equivalent to lang in HTML n
What colour is it?
What color is it?
Exchange 2001, Washington, DC, USA 55 © 2001, Progress Software CorporationApply HTML charset via Web. Speed n n n Modify web-disp. p to emit the character set statement in the header of every html page Use the IANA name for the character set, not the Progress character set name Routine for converting session: cpinternal is simple. Exchange 2001, Washington, DC, USA 56 © 2001, Progress Software Corporation
Function Get-Mime-Code. Page (available on the CD) /* Function to return the IANA name for a code page, given the Progress code page name. Example usage: DISPLAY Get-Mime-Code. Page(session: cpinternal). */ FUNCTION Get-MIME-Code. Page RETURNS CHARACTER (INPUT progress-Code. Page as CHARACTER). DEFINE VARIABLE PRO-cplist AS CHAR INIT “ 1250, 1251, … UTF-8”. DEFINE VARIABLE MIME-cplist AS CHAR INIT “windows-1250, windows-1251, … UTF-8”. DEFINE VARIABLE I AS INTEGER. I = LOOKUP(progress-Code. Page, PRO-cplist). If I = 0 THEN RETURN “”. ELSE RETURN ENTRY(I, MIME-cplist). END FUNCTION. Exchange 2001, Washington, DC, USA 57 © 2001, Progress Software Corporation
Translation strategies n User chooses language, locale n HTML labeled with IANA code page n Unicode database n Translations in Rcode or database Exchange 2001, Washington, DC, USA 58 © 2001, Progress Software Corporation
Progress Service Capabilities Consulting packages for I 18 N, L 10 N n Getting You Started … Internationalization – Identify resources – Provide planning and logistics – Leverage Progress expertise – Leverage I 18 N, L 10 N expertise n Training – Internationalization + – Translation Manager For info: David Mc. Bain dmcbain@progress. com Exchange 2001, Washington, DC, USA 59 © 2001, Progress Software Corporation
FOR MORE INFORMATION Internationalization Guide 4524 Translation Manager 4539 Visual Translator 4540 White Papers at Exchange 2001, Washington, DC, USA www. progress. com 60 © 2001, Progress Software Corporation
Global Accessibility and Deployment Agenda Importance of localization Definition of terms Regional business requirements User interface requirements Character processing on the web Internet, Web. Speed, XML Translation strategies Summary Exchange 2001, Washington, DC, USA 61 © 2001, Progress Software Corporation
Summary Your I 18 n tasklist n n Localization is important on the web Have native, in-market users assess s/w Assess regional business requirements User Interface and Reports – Simple, direct language is most efficient – Avoid humor, word play, symbolism – Generalize and abstract to create graphics – Avoid putting text in graphics – Plan for text expansion and reformatting – Avoid dynamic widget and text creation Exchange 2001, Washington, DC, USA 62 © 2001, Progress Software Corporation
Summary Your I 18 n tasklist n Code pages – – n n Label text with the correct code page Label *ML with the correct code page Use the Progress code page parameters Migrate to Unicode Use lang attribute for better browser and search engine support Translation strategy – Use Translation Manager for R-Code – Use database for server-side text Exchange 2001, Washington, DC, USA 63 © 2001, Progress Software Corporation
Questions Exchange 2001, Washington, DC, USA 64 © 2001, Progress Software Corporation