ソフトウェアの国際化 - その1
お疲れさまです。代官山のバッカスです。バッカスの Mac Book(クロ♪)は Core 2 Duo 搭載以前に買ったので、最近は 15インチの Mac Book Pro(クロ♪じゃなくてプロ)に触手が動いています。Leopard までにはお金を貯めて64ビットの世界を満喫したいと思っています。
さて、バッカスはこの前の日曜日、ウツ病と称して会社を休んでいる知人の家に行ってきました。スーパーでつまみを山ほど買い込んで、昼間からダラダラとウィスキー(Glenfiddich)を飲んでいました。
昔は胃潰瘍になるのがプログラマーの勲章だったけど、最近はウツ病になるのが勲章だよね。ホンモノのウツ病は朝4時に目が覚めるんだよね、などと話しつつ、ふと本棚の上のカレンダーに目が止まりました。普通のカレンダーだったのですが、珍しく月曜日始まりでした。大抵のカレンダーは一番左が日曜日、一番右が土曜日ですよね。
バッカスは月曜日始まりのカレンダーが好きで、日曜日始まりのカレンダーだと落ち着きません。何も考えずにカレンダーを見て、金曜日の夜に大宴会の予定を入れたつもりが実は木曜日だったので、次の日がえらく辛かった、などという失敗が多々あります。月曜日始まりのカレンダーを探すのに苦労をしていました。
最近はちょっと気の利いたソフトですと、週の始まりを変えられるようになっています。これで宴会の管理がずいぶん楽になりました。それでもショボいソフトですと、日曜固定のものがまだまだあります。携帯電話でもスケジュール管理機能に力を入れているものがありますが、メーカーによっては日曜固定で、その瞬間にバッカスは使う気が失せるのです。
これは国際化の問題である、と言ったら唐突でしょうか。私たちはほとんどアメリカと同じ慣習を使っているので、国際化といえば漢字の扱いに焦点が当たりがちですが、そもそも国際化の歴史は遠い昔、パソコンが漢字を扱えるようになるはるか以前、アメリカが初めてヨーロッパに進出した時から始まったのです。
日本やアメリカでは日曜日始まりのカレンダーが一般的ですが、ヨーロッパでは月曜日始まりが一般的です。アメリカのソフトウェア会社は、ドイツ語に翻訳をすれば、ドイツのマーケットでバンバン売れるぜ、ノープロブレム、などと思っていたのですが、木曜日に宴会をしてしまうドイツ人が続出したため、これではいかん、と真剣に考え始めたのが国際化の始まりでした。
もちろん翻訳をする以前にドイツ語の文字を扱えるようにならなくてはなりません。当時は一文字が7ビットだったのを8ビット化して、アクセント付き文字を含んだコード体系を整備したのです。ミュンヘンは「München」と書きますが、このテンテン付きの「u」がアクセント付き文字ですね。
国際化が必要だったのはカレンダーだけではありません。日付の記述方法も違いますし (e.g. 1/17/2007 → Jan 17 2007)、通貨記号も違う (e.g. $ → £)。数字の区切り記号が違う (e.g. 1,230.55 → 1.230,55) なんてのもあります。インドでは3桁づつではなく、2桁と4桁(だと思った、忘れた)に区切ったりもします。これは彼らの言語の関係で、例えば日本語では一、十、百、千、万、十万、百万、一千万、一億と区切るので、数字の区切りは4桁ずつにしてしまった、というようなものです。
国際会議などの同時通訳では、通常二人一組で仕事をします。一人が聞きながら大きなメモ用紙にどんどん単語を書いてゆく。もう一人はそれをチラチラ見ながら通訳していくのですが、数字が出てくると、必ず書きます。例えば「we have ten thousand users worldwide」とか言われると、「世界中」「10,000」と書くのです。しゃべる方は「10,000」を見て「一万」と言う。これは中国語も韓国語も同じで、彼らと話すときには、英語で話していても「ten mann」なんて言った方が間違いが少ない場合があります。アメリカ人ですら、日本に長く居すぎると「I had to pay ten man-en to that guy」なんて言い始めます。
このように国際化(Internationalization)をして、文字コード処理も入れて、そのうえに翻訳やローカルなコンテンツを入れて「xx語版」を作るのを Localization と言います。英語版ですら、ご存じのように米国式英語と英国式英語ではスペルが違う単語があるので (e.g. color=米国、colour=英国)、スペルチェック辞書の Localization をしなくてはなりません。
Internationalization は長いので、「i18n」と略されます。最初は何のことだか全く分からなかったバッカスですが、最初の「i」と最後の「n」の間に18文字、よって i18n と聞いて「なるほどね」と思った次第です。Localization は「l10n」。皮肉なことに、i18n や l10n は localization が必要です。実は localization は米国式で、英国式では localisation と綴るのです。日本語ですら「ローカライゼーション」と言ったり「ローカリゼーション」と言ったりします。
そんなこんなで国際化の話はまだまだ続きます。次回は BRICs、VISTA、BFIGS、ddnsf、BiDi なんてお話をさせていただきます。それではバッカスはこれから代官山に向かいます。お先に失礼します。






i18nという略文字(?)を発明したのは、今はなきDECという会社が社内用語で利用していたのだけど、posixかなんかの標準化団体のメールでポロっと使って、それがcoolだということで急速に広まった。(なんの役にもたたない蘊蓄)
ぐぐったら、そのものズバリの回答がありました。
http://www.i18nguy.com/origini18n.html
投稿: hyoshiok | 2007年1月18日 (木) 09:19
この写真は小川町ですね。
投稿: rk | 2007年1月19日 (金) 11:27