Google Summer of Code に参加しませんか
もしあなたが学生で、プログラミングに興味があるなら、Google Summer of Code に参加してみてはいかがですか。
Google Summer of Code(以下 GSoC)は、学生のみなさんにオープンソースソフトウェアのプロジェクトに参加し、コードを書いてもらうことを目的とした奨学プログラムです。すでに今年も世界中のオープンソースソフトウェアグループが、様々なプロジェクトアイディアを出しあっています。学生のみなさんは自分で好きなグループに応募し、やりたいプロジェクトを提案します(アイディアリストから選ぶかたちが多いでしょう)。採択されれば、実際にそのプロジェクトの一員として開発に携わっていただき、成果に応じて報奨金が Google から支払われます。
実は私も学生時代、GSoC に参加したことがありますが、それは個人的に大変有意義なものでした。ですから、なるべく多くの学生に応募して欲しいと思っています。
どういう点が有益なのでしょうか。言うまでもなく、お金を貰えるという実益もあります(笑)。実際、私が興味を持ったきっかけのひとつも報奨金の額でした。ですが、学生にとっての GSoC への参加はそれだけでないメリットがあります。
ひとつには、学生にとって現実の、世界規模の開発を経験するいい機会だということです。学生の間は、コードを書くことはあっても、設計やドキュメント、デバッグ、他の開発者とのコミュニケーションなども含めた開発を体験することはそう多くないのではないでしょうか。開発者が地理的に散らばっているオープンソースソフトウェアの開発はまた、少し違った趣があります。このようなことは学生のうちではなかなか得難い経験ではないかと思います。また、GSoC に採択されるようなプロジェクトは世界中から多数の開発者が参加していることも少なくなく、そうした様々なバックグラウンドのある人たちを相手に開発するのはとても刺激を受けます。
もうひとつ、英語のスキル向上も挙げておきます。恥ずかしながら私もそうですが、中には英語を苦手とする方もいるのではないでしょうか。英語に苦手意識があると、GSoC のページの大半が英語であることや、メールのやりとりが全て英語であることはかなりの困難をともなうように思えるかもしれません。しかし、大学生や大学院生であれば、辞書を使って時間さえかければ意味は読み取れるはずです。
ですからこれはデメリットではなく、むしろ実地で学ぶいい機会だと思います。なかには日本語でアイディアを書いてくれているプロジェクトもあります。しかし敢えてそればかり狙う必要はありません。GSoC に参加すると英語を使ったコミュニケーションやメーリングリストなどでのディスカッションが増加します。私も英語を使ったオンラインコミュニケーションについては GSoC がいい経験になりました。
一方で、もしかすると「一部のスーパーエンジニアみたいな人しか採択されないのでは...」といった誤解があるかもしれませんが、GSoC には高度なプログラミングの知識や技術は必要ありません。コンテストではないので周囲の人は味方です。プロジェクトアイディアの内容を理解し、それを実現するための知識や技術は必要ですが、ちょっと知識や技術が足りなくても、メンターや周囲の人がやり方を教えてくれるでしょう。実際、ごく普通の学生が応募し、ごく普通に通っています。
興味が出てきましたか?まずはプロジェクトリストを眺めて、アイディアリストを見てみてください。そして興味のあるトピックがみつかったらぜひ応募してみてください。