1 / 24

Software Globalization

Software Globalization. Alan Chang Software Engineer May 27, 2003. What is Software Globalization?. G11N 11 means the number of letters between the first and last letters of the word “ g lobalizatio n ” Includes: Software Internationalization Software Localization.

rod
Download Presentation

Software Globalization

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Globalization Alan Chang Software EngineerMay 27, 2003

  2. What is Software Globalization? • G11N • 11 means the number of letters between the first and last letters of the word “globalization” • Includes: • Software Internationalization • Software Localization Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  3. Why Software Globalization? • Earn more money from non-English markets with little extra development efforts • Business Week: worldwide software revenues will be worth $270 billion by 2003 • Global Reach: Global e-commerce will reach $6.8 trillion by 2004 • More than 40% of Trend Micro’s revenue is from non-English markets Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  4. Software Internationalization • I18N, First step of G11N • 18 means the number of letters between the first and last letters of the word "internationalization" • One Binary, Runs Globally • one set of source codes and main binary is produced to support all the global markets • can be localized later without any code change, merely by translating text, resizing UIs and supplying new graphics Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  5. Typical Software I18N Issues • Writing System • Charset, Codeset, Encoding, Codepage • String manipulation • …… • Culture Sensitive Data Formatting • Numeric Formatting • Date/Time Formatting • Message Formatting • …… Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  6. I18N Issue Example : Codepage Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  7. I18N Issue Example : Codepage Conversion String in EUC-JP encoding: Same EUC string displayed under Japanese Windows environment: Same EUC string displayed correctly after being converted into Shift-JIS encoding: Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  8. I18N Issue Example : String Manipulation • General Issues of Character: • Variable length, Fixed length, Multi-byte, Single-byte • Modal,Non-Modal • Iteration • (NON-I18N) ++psz, --psz, _strinc, _strdec… • Character Classification/Searching • (NON-I18N) isalpha, isdigit, strchr, strrchr … • Character Manipulation/Calculation • (NON-I18N) tolower, toupper … • (NON-I18N) char c = ‘R’; c += 1; /* is c == ‘S’???*/ Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  9. I18N Issue Example : String Manipulation Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  10. I18N Issue Example :Numeric Formatting • Group and decimal separators • 1,234.56 (US) • 1.234,56 (DE) • 1 234,56 (FR) • Numeric shapes • 2 二 貳 ๒ ٢ • Negative numbers • -1,234 1,234- • Percentage symbols and placement • 45% .45 45 pct %45 Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  11. I18N Issue Example :Monetary Formatting • The currency symbol is same on all platforms • Developer might make culture assumption that the “$” is used as currency symbol around the world • Monetary format examples: • $1,234.56 (US) • 1.234,56 € (DE) • ¥1,234.56 (JA) Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  12. I18N Issue Example :Date/Time Formatting • Short, Medium, Long, Full • 11/06/2001 (Short) • Monday, October 22, 2001 2:23AM (Long) • Calendar System • 平成, AD, BC, 農曆, 民國 (Era) • Thursday,木曜日,Donnerstag,星期四 (Day of the Week) • October, Octobre, 十月 • AM PM, 早上 下午,午前 • Time Zone • GMT, GMT-8 (Standard Time) • Daylight savings Time (Local Time with offset) • Europe/Dublin, PST, PDT (Time Zone ID) Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  13. I18N Issue Example :Date/Time Formatting (cont.) • Date format examples: • Thu 01/17/2002 (US) • Thu 17/01/2002 (UK) • Do 17.01.2002 (DE) • 2002/01/17 木 (JA) Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  14. I18N Issue Example :Message Formatting • “There are %d virus found in file %s !!“ • sprintf(szMyMsg, szFormat, nFile, szFileName); • “在 %s 中找到%d 隻病毒 !!” • sprintf(szMyMsg, szFormat, szFileName, nFile); Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  15. I18N Issue Example :Address/Phone Number Formatting • The address pattern is same on all platforms • Developer might make culture assumption that the address pattern, “Street Number”, “City”, “State”, “ZIP” can cover all the world • Same situation may occur in the phone number format Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  16. I18N Issue Example :Buffer Capacity • Developers might allocate a buffer which is not big enough to load the resource string after translation • Result is crash or chopped string Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  17. I18N Issue Example :UI Truncation & Layout • If an English string on UI becomes longer after translation, then it might be truncated or wrapped because of the limited UI layout • Also called Localizability problem Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  18. I18N Issue Example :Hard-Code String • Developers might hard-code messages and forgot to move it to resource file • Result is the message always in English no matter on which platform after localization • Most often I18N bug Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  19. Software Localization • L10N, Second step of G11N • 10 means the number of letters between the first and last letters of the word “localization" • Customization for target market • Usually involves translating text and supplying new graphics Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  20. Typical Software L10N Issues • Culture Difference • UI Text Translation • UI Layout Customization • Documentation Translation • Icon Localization • Legal Issues • …… Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  21. L10N Issue Example : Website Layout Localization Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  22. Good Practices for Software Globalization • Verify the needs of Software Globalization for your products • Consider about Software Globalization in the early stage of product development cycle • Avoid culture assumptions • Externalize L10N related resources • Adopt industry standard solution (Microsoft NLS APIs, IBM ICU, Unicode) • Think more for L10N while coding Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  23. A Cold Joke of Globalization • What year should be the start year of millennium • 2000? • 2001? • This is my answer: • 2001 will be the answer from better G11N aspect. • Because no one will be confused by the date 01/01/01 Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

  24. Q&A Trend Micro CONFIDENTIAL - ENGINEERING DOCUMENT

More Related