トップ «前の日記(2011-05-29) 最新 次の日記(2011-06-07)» 編集

Route 477



2011-05-30

[ruby] ruby-dev translationというサイトを立ち上げました

Rubyの開発用メーリングリストは、日本語のruby-devと、英語のruby-coreがあります。 このため英語圏の人から「なんかruby-devでだけやりとりされる重要な情報があるのではないか」という印象を持たれたりして(実際にそうかはともかく)、

ruby-dev translationは、これをコミュニティベースでなんとかできないかという試みです。

といっても、全部のメールを翻訳するのはリソース的に大変だと思うので*1、 英語圏の人がサブジェクトを見て、「これは読みたい」と思ったメールに★が付けられるようになっています。 これによって、需要のあるメールだけを重点的に翻訳できるのではないか、そうなればいいな、という淡い期待を抱いています(弱気)。

英語ができるようになるには、語彙や文法も大事ですが、日常的に英語に触れる機会を作るのが重要です。僕も仕事で英語書いてた期間でだいぶ力が付いた気がします。 というわけで、練習がてらにチャレンジしてもらえると嬉しいです。

c048de66c68f8df73c11909d8686852c.png

翻訳するには

右上の「Sign in with twitter」からログインして、メール画面の「Add translation」を押して下さい。Redmineの生成する定型文とかは、自動で最初から翻訳された状態になります (抜けがあればgithub issuesとかで教えてください)。

ちなみに、本文全体を訳すのは大変だという場合は、件名だけでも訳せるようになっています。 メール一覧画面で、件名が日本語のものは、右に「(edit)」というリンクが出るので、それを押してください。

日本語が読めない人にとって、件名はとても重要な情報なので、件名だけでも翻訳していただけると助かります。 (日本語のままでも、アルファベットだけ拾えばだいたい何のメールか分かるという説もありますが)。

ソースコードについて

githubにあります。Rails3で、Herokuで動いています。 木構造の管理はAncestryというライブラリを使っています。nested setではなく、ancestryカラムに "1/23/66" みたいな文字列 (根から自分までのIDを並べたもの) を保存して、LIKE "1/23/%" とかでsubtreeを検索するというちょっと面白い奴です。 メールの取り込みは、dailyでbladeのをスクレイピングしているという謎仕様。

単なるruby-devリーダとしても、スレッド内のメールを一括して読めたり、リンクやRedmineのチケットタグでも親子関係を判定したりと、bladeよりも若干読みやすくなってるかと思います。 ぜひお気に入りに入れて定期的にチェックしてやって下さい。

FAQ?

メールが文字化けしてる場合は、元のbladeの表示がそもそも文字化けしてる場合が多いです (そうでないときはruby-dev translation側のバグかも知れません)。

*1 一時期ruby-dev summaryというのがあったりしました