270 likes | 399 Views
Open-Source Approaches to Unicode Enablement. Panel Discussion. Agenda. Panel Introductions Library Descriptions and Demos What is Open Source? What is the Open Source experience? Q and A. Frank Tang Helena Shih Ulrich Drepper Tex Texin. Netscape ICU glibc Moderator. Today’s Panel.
E N D
Open-Source Approaches to Unicode Enablement Panel Discussion
Agenda • Panel Introductions • Library Descriptions and Demos • What is Open Source? • What is the Open Source experience? • Q and A San Jose, California, September 2000
Frank Tang Helena Shih Ulrich Drepper Tex Texin Netscape ICU glibc Moderator Today’s Panel San Jose, California, September 2000
Library Descriptions and Demos • GNU libc http://sourceware.cygnus.com/glibc • Mozilla: International Library of Mozilla http://www.mozilla.org/projects/intl • IBM: International Components for Unicode http://oss.software.ibm.com/icu San Jose, California, September 2000
International Library for Mozilla Frank Tang Netscape Communications Mozilla
GNU Libc Ulrich Drepper GNU, RedHat
GNU libc • Library supporting multibyte and wide characters • localedef tool allows definition of locales for any charsets, including UTF8, UCS2 • using charset requires just a description and a conversion module • Wide character is UCS-4, native byte order San Jose, California, September 2000
GNU libc conversion functions • iconv() implementation is unique • Conversions are transitive A to C = A to B to C • In most cases, UCS-4 is used as common denominator San Jose, California, September 2000
Licensing & Development Process • RedHat is completely open source. • Code is licensed as LGPL, assigned to Free Software Foundation (FSF) • This is the same method as GNU • Small teams of developers with a “dictatorial decision maker”. • Comments accepted, taken into account • Extensive peer reviewing San Jose, California, September 2000
International Components for Unicode (ICU) Helena Shih IBM Unicode Technology Center
Unicode support in the Industry • Lack of a complete set of features in most implementations. • Inconsistent across different environments. Win32 vs. POSIX, for example. • Poor portability. • Unable to share the resources with other products. • Almost no extensibility and customization. • Not a concern for most companies when a product is first designed. San Jose, California, September 2000
Netfinity Server ICU Apple G3 Macintosh ICU IBM’s DB/2 Product AS/400 e-Server 720 Microsoft NT Workstation World Wide Web Sun Ultra 60 Workstation S/390 Server San Jose, California, September 2000
ICU Objectives • Single release for world-wide distribution • Quality Unicode & I18N support across platforms • Simplified development localization process • Consistent results in both C/C++ and Java • Powerful, portable API available to the Open-Source development community • Important resources sharing mechanism San Jose, California, September 2000
ICU Features • Parallel to the i18n architecture in JDK • All components multi-thread safe • Full Unicode string manipulation • Complete locale support, e.g. > 145 locales • Fast and flexible character set conversion • Efficient data loading mechanism San Jose, California, September 2000
ICU Features • Hierarchical resource bundles with flexible data storage mechanism • Extensive calendar and timezone support • Date, time, currency, number and message formatting • Locale sensitive sorting (including Thai) • Locale sensitive text boundary detection San Jose, California, September 2000
ICU Features • Customizable transliteration interface • Unicode text compression algorithm • Fast and compliant Unicode 3.0 Bidi algorithm • Most up-to-date Unicode 3.0 support (including Normalization) • All APIs support UTF-16 • Partnership insures balanced viewpoints and practical solutions San Jose, California, September 2000
ICU4J - ICU for Java • IBM developed extensive I18N library • I18N code added to Java JDK 1.1 • Java code ported to C++ -> ICU • ICU available on alphaWorks • Both ICU and Java classes continue development • Sometimes “leapfrogging” each other with features • ICU open source, moves to developerWorks • 2000 March: Java Code open source as “ICU4J” San Jose, California, September 2000
ICU4J Features • Builds on Java 2 feature set • Feature summary: • Advanced text boundary detection • Calendars: Hebrew, Hijri/Islamic, Japanese Gengou, Thai Buddhist • Spelled-out numbers • Normalization • Transliteration • Standard Unicode compression San Jose, California, September 2000
Demos • Locale Explorer • glibc San Jose, California, September 2000
Agenda • Panel Introductions • Library Descriptions and Demos • What is Open Source? • What is the Open Source experience? • Q and A San Jose, California, September 2000
ICU OpenSource Objectives • De facto industry standard for Unicode support • Pervasive globalization technologies • Mature globalization technologies for customers • Support for other important OpenSource products: Linux, Apache, Mozilla, XML etc. San Jose, California, September 2000
Open-Source Models • The Apache model • Web access for CVS repository • Technical committees • Developer community support • icu@oss.software.ibm.com etc. mailing lists • Commercial product partnership • RealNames, versant, GE ... San Jose, California, September 2000
Why contribute to Open Source? • Requires robust I18n and portability • Implementing alone, cost is considerable • Sharing development is cost effective • Shared knowledge with experts • Ability to influence the end-result San Jose, California, September 2000
Why contribute to Open Source? • Provide portability and interoperability • Going to Unicode 3.0 is a sizable effort • Commercial libraries insufficient • Shared effort means our development focus is now aligned with our needs • Share expertise, Give something • Source access-Education, Self-reliance San Jose, California, September 2000
Why contribute to Open Source? • Concerns: • Giving away proprietary technology • Design by committee • Will release schedules fit product schedules? • Will library and product stay in synch? • Do all participants have common objectives? San Jose, California, September 2000
Why contribute to Open Source? • Concerns: • Management Perceptions “If it’s free, it must be for play…” • Entry requirements and qualifications to be able to affect direction or design • Patch integration, Release control and schedules • Build stability San Jose, California, September 2000
Agenda • Panel Introductions • Library Descriptions and Demos • What is Open Source? • What is the Open Source experience? • Q and A San Jose, California, September 2000