1 / 39

Mylingual There ’ s More Than One Language To Do It

Mylingual There ’ s More Than One Language To Do It. Cybozu Labs Kazuho Oku. Self Introduction 自己紹介. Self Introduction ( 自己紹介 ). Name: Kazuho Oku Joined Cybozu Labs in 2005 R&D of web-related technologies Background: web browser developer 名前 : 奥 一穂 2005 年からサイボウズ・ラボ勤務

december
Download Presentation

Mylingual There ’ s More Than One Language To Do It

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. MylingualThere’s More Than One Language To Do It Cybozu Labs Kazuho Oku

  2. Self Introduction 自己紹介 Mylingual - There's More Than One Language To Do It

  3. Self Introduction (自己紹介) • Name: Kazuho Oku • Joined Cybozu Labs in 2005 • R&D of web-related technologies • Background: web browser developer • 名前: 奥 一穂 • 2005年からサイボウズ・ラボ勤務 • Web 関連技術の研究開発をしています • もともとはウェブブラウザの開発者 Mylingual - There's More Than One Language To Do It

  4. Do You Have Experience in Localization? ローカライズしたことがありますか? Mylingual - There's More Than One Language To Do It

  5. Do You Love Localization? ローカライズは好きですか? Mylingual - There's More Than One Language To Do It

  6. Localization is a Burden (L10n は重荷) • It’s not Development • It’s a Requirement • It’s Hard to Find the Right Wording • It’s Time Consuming • ローカライズは「開発」じゃない • ローカライズは「やらざるを得ないもの」 • 訳語を探すのがたいへん • 手間がかかる Mylingual - There's More Than One Language To Do It

  7. Websites NOT in Japanese • YouTube • Google Docs & Spreadsheets • not until March 2007 • Yahoo! Pipes • eBay • Flickr • Lingr • developed by a Japanese, but… Mylingual - There's More Than One Language To Do It

  8. Excuses NOT Localizing (L10n しない言い訳) • Due to Our Priority • No Business Opportunities • Differences in Government Regulation • 優先順位が低いので • 儲かりまへんがな • 法規制の問題があるので Mylingual - There's More Than One Language To Do It

  9. How about letting the users localize the services? ユーザーが勝手にローカライズすればいいじゃん Mylingual - There's More Than One Language To Do It

  10. Japanize http://japanize.31tools.com/ Mylingual - There's More Than One Language To Do It

  11. What is Japanize? (Japanize とは) • A web browser extension • Transparent localization to Japanese • Released Aug. 2006 • Inspired from “Localizer” of PalmOS • ウェブブラウザの拡張機能 • ウェブページを勝手に日本語へローカライズ • 2006年8月公開 • Palm OS の「ローカライザ」からインスパイヤ Mylingual - There's More Than One Language To Do It

  12. Translation Archive (翻訳アーカイブ) • All data on a Wikipedia-like website • Anyone can contribute • All translation shared, no private data • Wikipedia ライクなシステムにデータを集積 • 誰でも翻訳に参加できる • すべての翻訳は共有 –プライベートデータなし Mylingual - There's More Than One Language To Do It

  13. Ways of Translation (翻訳の手法) Mylingual - There's More Than One Language To Do It

  14. Why Manual Translation? • Only translate the user interface • Do not translate files on Google Docs • Precise Translation (w. many idioms) • ex. “Save As…” → 「名前をつけて保存…」 • UI のみを翻訳したい • Google Docs の文書は翻訳しちゃダメ • 正確な翻訳 (超訳が必要な場合も) Mylingual - There's More Than One Language To Do It

  15. Why Translate on Browser? • To support services w. authentication • Proxies cannot translate Google Docs, Mixi, … • 認証が必要なサービスをサポートするため • プロキシだと Google Docs や Mixi を翻訳できない Mylingual - There's More Than One Language To Do It

  16. Demo from YouTube to an Iranian newssite Mylingual - There's More Than One Language To Do It

  17. Translation Syntax 翻訳データの文法 Mylingual - There's More Than One Language To Do It

  18. Translation Syntax • Pairs of original text and translation • ex. Hello => こんにちは • Support for regular expressions • ex. /^(\d+) entries?$/ => $1件のエントリ • Translation is performed as a whole match of DOM text elements - sufficient for most cases • DOM テキスト要素単位での全一致 –多くの場合必要十分 Mylingual - There's More Than One Language To Do It

  19. Complex Translation (ex. Date Format) “05 Apr 2007” → 「2007年4月05日」 /^(\d{2}) (Jan|Feb|…|Dec) (\d{4})$/ => $3年$R2$1日 Jan => 1月 Feb => 2月 ... Dec => 12月 Note: $Rx stands for recursive replacement Mylingual - There's More Than One Language To Do It

  20. Translation Control Commands • Some Translation Control Commands • with operands: skip & translate $id(content) => skip $class(menu) => translate $path(/license) => skip Mylingual - There's More Than One Language To Do It

  21. Popularity 普及度 Mylingual - There's More Than One Language To Do It

  22. Popularity • Translated websites: > 300 • Translation data: 2.6MB • # of contributors: > 220 Note: Numbers of April 4th 2007 Mylingual - There's More Than One Language To Do It

  23. Popularity • 27,600 active users (by IP addr./day) • 25,000 – Firefox Extension • 2,600 – User JavaScript • Already Popular for Firefox Users • Ranked 5th by popularity • # of users: 73% of IETab • Source: minkaku.goga.co.jp Mylingual - There's More Than One Language To Do It

  24. Architecture アーキテクチャ Mylingual - There's More Than One Language To Do It

  25. Architecture – Firefox Extension • Translation data in JSON • Partial Updates, downloaded periodically • Similar to def. files of AntiVirus software • 翻訳データは JSON 形式 • 差分アップデートを定期的に配信 • アンチウイルスソフトの定義ファイルに類似 Mylingual - There's More Than One Language To Do It

  26. Architecture – User JavaScript • Insertion of CSI by User JavaScript <script src=“http://~/translate.js”></script> • Translation data in JSONP • User JavaScript による CSI 埋め込み • 翻訳データを JSONP で配信 Mylingual - There's More Than One Language To Do It

  27. Architecture – Server-side • Static files + CGI::Application • and some PHP • All data stored and served in JSON(P) • no RDBMS, use symlinks • Typekey-compatible authentication • mod_rewrite for normalizing hostnames • ex. www.youtube.com should use translation for youtube.com Mylingual - There's More Than One Language To Do It

  28. Architecture – Server-side • Runs on a Virtual Private Server (Linux) • WebARENA SuitePRO • Running Cost: \8,820/month ($73/month) • Serving… • Avg. 22 HTTP requests/sec. • Avg. 2Mbits/sec. Mylingual - There's More Than One Language To Do It

  29. Mylingual http://mylingual.net/ Mylingual - There's More Than One Language To Do It

  30. What is Mylingual? (Mylingual とは) • Internationalized version of Japanize • Support for > 50 languages • Released last week • Japanize の国際化版 • 50以上の言語に対応 • 先週公開 Mylingual - There's More Than One Language To Do It

  31. Mylingual – Demo • mixi • livedoor Reader Mylingual - There's More Than One Language To Do It

  32. The Aims of Mylingual (Mylingual の目標) • For native speakers of minor languages • provide ability to use apps in mother languages • For developers using minor languages • let develop their webapps in mother languages • 英語圏以外のユーザーに、母語でウェブアプリを利用するチャンスを提供 • 英語圏以外の開発者に、母語で開発する機会を提供 Mylingual - There's More Than One Language To Do It

  33. Future Plans 今後の計画 Mylingual - There's More Than One Language To Do It

  34. Future Plans • Internet Explorer version • Support for HTTPS • I18n Service for developers • IE 対応 • HTTPS 対応 • 開発者むけの国際化サービスを提供 Mylingual - There's More Than One Language To Do It

  35. Internationalization Service for Developers • Developers add <script> to webapps • <script src=“http://mylingual.net/…”></script> • The app will be localized using Mylingual • even for the users wo. Mylingual installed • 開発者が <script> タグをウェブアプリに追加 • Mylingual がそのウェブアプリを翻訳 • Mylingual をインストールしていないユーザーにも対応可能 Mylingual - There's More Than One Language To Do It

  36. Ways of Developing a World-wide Service 国際的なサービスを開発する方法 Mylingual - There's More Than One Language To Do It

  37. Ways of Developing a World-wide Service • Move to Silicon Valley • Create a subsidiary in the U.S. • Hire a native for translation • シリコンバレーに移住 • アメリカに子会社を作る • ネイティブに翻訳させる Mylingual - There's More Than One Language To Do It

  38. Mylingual – a Yet Another Way to Do It • Stay in Japan • Forget about L10n & I18n • And let the users do the work (maybe…) • 日本に残り • ローカライズや国際化に悩むのはやめよう • きっとユーザーが翻訳してくれる (かも) Mylingual - There's More Than One Language To Do It

  39. Thank you! Mylingual - There's More Than One Language To Do It

More Related