HTML5 Rocksは、開発者向けのHTML5周辺技術に関するリソースを公開しているサイトです。Googleによって運営されており、記事が多言語に対応しているものもあります。
html5j英語部の今回のイベントでは、いくつか記事をピックアップし、グループに分けて翻訳を行いました。
今回翻訳対象としてピックアップした記事:
- User Timing API: Understanding your Web App – HTML5 Rocks
- Avoiding Unnecessary Paints: Animated GIF Edition – HTML5 Rocks
- Avoiding Unnecessary Paints – HTML5 Rocks
- High Performance Animations – HTML5 Rocks
- Scrolling Performance – HTML5 Rocks
英語部名物・ライブ翻訳
前回と同じく、今回も英語部・部長の斉藤さんによるライブ翻訳がありました。
今回のライブ翻訳で挙げたポイントは、次のような斉藤さんが翻訳するときの手順についてです。
In browsers, JavaScript shares a thread with a load of other stuff.
頭から順に訳していきますが、はじめからきっちりと、きれいな日本語に置き換えようとはしません。まず主語(S)と動詞(V)を見つけます。この一文でいえば、「JavaScriptは共有する」というが重要です。その上で具体的に訳していきますが、最初はラフな日本語で大丈夫です。それからきれいな日本語に整形します。
- 「JavaScriptは共有する」
- 「JavaScriptは共有する、ひとつのスレッドを、他のものの読み込みと一緒に」
- 「JavaScriptは、他のものの読み込みと一緒に、ひとつのスレッドを共有します」
- 「ブラウザーにおいては、JavaScriptも、他のものの読み込みと一緒にひとつのスレッドを共有します」
翻訳の難しさは、英語にあるのではなくて、日本語にあると部長は言います。
英語が得意な人でも、英語のままとしての意味はわかったとしても、それを日本語として意味を違えずに表現することは難しいです。英語部では、オフライン/オンライン問わず、翻訳の経験者による監訳サポートがあるので、翻訳の初心者であっても、アドバイスをもらいながら進めることができます。
HTML5 Rocksの翻訳フロー
今回会場提供をしていただいたグリーの宮崎さんからは、HTML5 Rocksの翻訳フローについてのLTを行ってもらいました。
スライド: HTML5 Rocks translation
宮崎さんは、すでにHTML5 Rocksの7つの記事を翻訳した経験があります。
ちなみに宮崎さん曰く、HTML5 Rocksの記事の単位はrockだ、ということで、7rocksを翻訳したということになります 🙂
HTML5 Rocksの翻訳フローは、Git/GitHubを使ったプロダクト開発と同様で、Pull Requestを通して翻訳済みのドキュメントを取り込むという流れになっています。
- HTML5 RocksのWebサイトのレポジトリをForkする
- 翻訳したい記事を見つけ、コピーをして/ja/ディレクトリで展開、翻訳をする(詳細は後述)
- Fork元にPull Requestを送る(送り先はmasterブランチ)
- Reviewを受けて、Feedbackがあれば対応、問題なければ取り込まれる
- サイトに公開(liveブランチにマージされる)
未翻訳記事の見つけ方
翻訳したいとおもっても、その記事がすでに日本語訳されていたり、もしくは進行中である場合は、残念ながら翻訳しても載せてもらうことはできません。
翻訳済みの記事は、Localizationsに翻訳された言語へのリンクが存在していますので、その記事は翻訳できません。(もし翻訳内容に誤りなどがあれば、それはそれで修正してPull Requestを送るとよいでしょう)
まだ公開はされていないけれど、進行しているものはIssuesおよびPull Requestsを確認するとわかります。Openのものだけでなく、Closeして公開待ちのような記事もあるかもしれないので、Closeの中も確認しましょう。
翻訳の進め方
記事ページは/content/の中に格納されています。
翻訳したい記事のURLを確認し、該当のディレクトリを探っていくと、/en/ディレクトリが確認できるはずです。その中に原文のindex.htmlがはいっているので、/en/ディレクトリをコピーし、/ja/ディレクトリをつくったら、その中のindex.htmlを翻訳します。 (/ja/ディレクトリがある例)
翻訳対象はこのHTMLファイルだけでなく、/conf/locale/ja/にもある場合があります。記事タイトルはこちらにも含まれている時があるので、該当の記事をみつけたら、msgstrに日本語訳を書きましょう。
また翻訳者のクレジットを残すこともできます。クレジットは、下記のフォーマットで記事内に差し込むことで追加されます。
{% block translator %}
翻訳: Hiroki Tani
{% endblock %}
その他、翻訳やページの追加に関することは、下記のドキュメントに記載されているので、一度目を通しておくことをおすすめします。
翻訳しながら技術的に学ぶ
HTML5 Rocksが素晴らしい技術記事が充実したサイトということもあり、英語を翻訳する経験と力をつけるとともに、技術的に新しく学べるという点で、翻訳のしがいがあると思います。
今回オフライン活動のひとつとしてHTML5 Rocksをグループで翻訳しましたが、引き続きオンラインでも継続しておこないます。
本レポートやhtml5j英語部の概要をみて興味を持ち、また監訳などを受けながら翻訳したい方がいればぜひ参加してください!その際には英語部リポジトリのHTML5 Rocksの内容を一読ください。
もし不明なことがあればIssuesやGitterに連絡をください。
最後に大事なことを伝えておくと、html5j英語部はあくまでも有志による翻訳コミュニティです。 オリジナルであるHTML5 Rocksとは関連はなく、全てのHTML5 Rocksの日本語訳が本コミュニティを通じて行われているわけではありません。HTML5 Rocksの翻訳をしたい!という方は個人でどんどん翻訳をしてもらえれば良いのではないかと思います。
今回会場をお貸しいただいたグリーの皆さん、ありがとうございました!