My name, written in Thai (I think)

It's possible to become complacent about how complex internationalisation can be. For folks writing programs that run on a given platform, it should be really easy of course - you just use the APIs provided, and your program takes advantage of the platform i18n support.

As a user, when internationalisation is done properly, you shouldn't even know it's there. Occasionally it reveals itself as you get an email from your Chinese friend, and his name renders in Chinese characters correctly.

However, once in a while, it's good to look under the hood to see the massive amount of engineering effort that has gone in so that scripts in all languages render, wrap and justify correctly. Sobering stuff. A good example of this, is Richard Ishida's Writing Systems Tutorial which runs over the various issues that the people building i18n support into your favourite platform had to deal with (be it Java, Solaris or Mozilla)

If you're still not convinced about how complex this stuff is, have a quick look at this page which demos line wrapping algorithms for various different scripts. I was impressed anyway... As a programmer, having a platform do all the hard work for you instead of having to worry about all of these issues is fantastic. These days, a modern OS will provide internationalisation, localisation and accessibility support - and so long as you write according to the APIs, you can be sure that your program will have the widest possible user-base.

The first time I came across J2EE, it was a similar situation : "What, you mean I don't have to worry too much about transactions, persistance, security and remote-access - wow, where do I sign up ?!"


Comments:

[Trackback] Tim Foster pointed to a Writing Systems Tutorial by Richard Ishida, material developed for the Internationalization & Unicode Conferences. The title is An Introduction to Writing Systems: A review of script characteristics affecting computer-b...

Posted by The Pathedral and the Kazoo (TPaK) on July 13, 2004 at 11:55 AM IST #

i18n can't possibly be invisible to the developer. Issues such as BiDi and logical structure of sentences are really things that developers have to be aware of. Even an i18n aware site such as Google, fucks up on occasion, their GMail service simplified things by converting everything to UTF-8 rendering the E-Mail service pretty much useless to anyone who uses a language whose script is not latin: http://jroller.com/page/vprise/20040706#gmail_i18n_woes I HIGHLY recommend the EXCELLENT Java internationalization book from Orielly (I have no stake or involvment with the books authors/publishers etc...). Its a great book that was just facinating for someone like myself who knew quite a bit on i18n before hand, I still learned a lot.

Posted by Shai Almog on July 13, 2004 at 04:37 PM IST #

I understand Shai's comments - my point was, that if an application is written according to the API on the platform, then i18n is easier. As with, say transactions and J2EE, you do still need to appreciate the issues. For example, our translation editor can do bidi, font-shaping and all the rest of the fantastic things that Java i18n provides, and we didn't need to think about it. Server-side mail apps like GMail may have benefited from using javax.mail which appears to provide support for the common i18n issues in internet mail programs, but I guess they chose not to. <shrug/>

Posted by Tim Foster on July 13, 2004 at 05:05 PM IST #

used to work for Sun for 3 years on i18n/L10n, i know that pain. many Thai customers went away from Sun, just because their existing applications can run well with Thai language on Solaris, Netscape/Mozilla, Java. -- many app (as i've experienced, Oracle, Siebel, ERSI ArcGIS, ..) use their own widgets, and thus not instantly support Thai in some level. even iPlanet/Sun ONE Application Server does has the same problem (but it should be already solved .. hopefully). nice to see that you can write Thai script :)

Posted by bact' on July 29, 2004 at 01:39 PM IST #

Post a Comment:
  • HTML Syntax: NOT allowed

This blog copyright 2009 by timf