GithubのPRや海外Slackチャンネルでチャット、はたまた英語圏のエンジニアとやりとりする等、英語で文章を書くことはしばしばあります。そんな時、自分がよく使っている方法について書きます。
先に一番大事なこと
大事なことは、英語はあくまでもツールだということです。伝えたい内容が重要であり、英文を書くことに時間かけることはエンジニアにとって不毛です。 よっぽど英語が得意な人でないかぎり、一から英作文すると時間がかかって本質的でないところで時間を消費するということです。 なので一から文章を考えるのでなく、なるべく"型"を知ることがポイントだと考えています。それを踏まえた上で御覧ください。
文章を書く
アルクの英辞郎とGoogle, Githubを組み合わせる
恐らく多くの人がGoogle翻訳などを使って英文を作っているかと思うのですが、アルクの英辞郎と組み合わせるともっとはかどります。理由としては、
- 英辞郎は例文の出典が書かれている -> 本当に自分が表現したいものであるか確認できる
- 例文が豊富で、単語帳登録機能で例文も保存できる(保存は有料)
ということがあげられます。
例として、GithubのPull Requestで「複数のキュー処理を行う機能を実装した」という英文を書くとします。 まず "処理を行う" を英辞郎で検索してみます。 検索結果の例文を見ると "処理を行う" という表現は process, handleなどいくつかあるようです。
ここで process queueやhandle queue でGoogle検索すると、似たような表現が沢山でてきます。 検索結果の例文をみると process queue はどちらかというとキューそのものの実行を指しているため、ここでは handle queue(キューを制御する)の方が適切そうだなー、と気付くかと思います。
今回のケースだと、さらに一歩踏み込むのであれば、Githubの検索で issueを見るのがオススメです。 Githubは技術文章の宝庫です。
ためしに "handle queue"で検索してみると、同じ表現をつかった文章が山のようにみつかります。
これらの文章をきりはりするだけで、それっぽい英文が組み立てられます。
I implemented a feature to handle multiple queues.
各シチュエーションにおける型をまねる
英語にはある程度"型"があります。最も基本的な例でいうと、エッセイだと大抵 "主張(言いたいこと)" + "理由" + "結論(言いたいことの繰り返し)" という風になっています。これを踏まえて色々なwebサービスにおける文章を見てみると、それぞれある程度パターンがあることに気づきます。
例として Android のissueフォーラム を見てみます。こんな風に書かれているissue をしばしば見かけます。
Title: Clicking on a view/widget in design view and cancelling it creates empty id tag with no value. To Reproduce. 1.Create a empty layout or view ... Expected Behaviour: Obviously it should not create ....
Title -> 発生している問題
、 To Reproduce -> 再現方法
、Expected Behaviour -> 期待値
となっていて大変わかりやすいですね。
こういう型をまねることで、多少英語が拙くとも、伝わる文章が書けるようになります。
例文集を買う
上の方法の横展開となりますが、メール文であれば、依頼、催促等テンプレートがある程度定まっているので、例文集を買ったほうが速いです。 少なくとも自分は いちいち検索かけてメール作成に何十分もかけるよりは効率的と感じました。自分はこの本を買って、たまに使っています。例文パターンが詳細にわかれていて、すぐ使えるので便利です。会社の人にも貸しています。
添削
上のやり方で切り貼りした文章が出来たとして、ちゃんと文法的に正しいかどうかはわかりませんよね。そこで、自分は最近以下のツールを利用しています。
grammarly
grammarlyは自動英文チェックツールです。本来は英語圏の人が作文の文法チェックなどに利用するためのツールなのですが、我々非英語圏のエンジニアが使う分にも申し分ありません。
特徴としては
- Chrome extention, Firefox plugin があってブラウザ上で書いた文章を自動的に添削してくれる
- Macのアプリもあり、長文を書く場合の添削もできる
- 無料。有料版だとさらに250項目の文法チェックができるらしい
例えば Pull Requestで英語を書いた時にミスがあった場合、以下のようにバルーンがでて修正点を指摘してくれます。
※ バルーンのスクリーンショットが取れなかったので、画面を撮影してます
他のチェックツールより優れているのは、各ブラウザのextentionがあるというところでしょうか。ブラウザ上で文章を書く人にとってはメリット大きいと思います。
欠点としては無料版ではそれほど精度は高くないということです。過信しすぎるのはよくなさそう。とは言え自動的にチェックしてくれるので、ひとまず入れておいて損はないかなと思います。
なお以下のリンクから会員登録すると有料版が1週間だけ無料で使えるらしい(自分も1週間無料になるらしいです)ので、もし良かったら登録してみてください。
年間契約にすれば月11ドル程度なんで、頻繁に英文書く人なら有料版もありかもしれませんね。
まとめ
英文を書くのもプログラミングと同じだなと感じます。沢山色々な文章に触れ、それを写経なり組み合わせるなりして、自分の身につけていくというプロセスを経験するのが大事なのかと思う次第です。