学生諸君、Google Summer of Code 2013に参加して50万円貰ってオープンソースソフトウェアのコミッターになろう

ということで、今年もいよいよ始まりますねGoogle Summer of Code

Google Summer of Codeってなに

Google Summer of Code (GSoC) は2005年の5月から8月に初めて開催され、その後毎年行われているイベントで、Googleが指定したフリーソフトウェアオープンソースのプロジェクトでその夏の間に課題をクリアした数百人の学生に賞金を支払う制度である。参加資格は18歳以上の学生。

このプログラムはまず、参加資格のある学生が実施したいソフトウェアプロジェクトを詳述した申込書を提出する。申込書は対応する組織が評価する。参加組織はそれぞれのプロジェクトに貢献できると判断した場合、プロジェクト毎に指導者を配置しなければならない。指導者は申込書をランク付けし、ランク付けした一覧をGoogleに送る。Googleは各組織にいくつのプロジェクト(学生)を割り当てるかを決め、一覧から上位N個のプロジェクトを選択する。

1人の学生が複数の組織に選ばれた場合、Googleは参加組織間の調停を行い、どの組織がその学生を受け持つかを決める。その学生を獲得できなかった組織では、次点となっていた申込書が自動的に繰り上がって採用される。(Wikipediaより引用

Google Japan Blogも参考に:
Google Japan Blog: Google Summer of Code に参加しませんか

GSoC元参加者からのアドバイス
Google Summer of Code に通るための5つのアドバイス

いくらもらえるの?

5000ドルだから、1ドル=100円なら50万円もらえます。
中間報告が確認された時点で半分、最終報告が確認された時点でもう半分が支払われます。
お金はVISAのクレジットカードとして使えるプリペイドカード(デビットカード)の形でUSから郵送されてきます(ついでにGoogleのシールとかももらえます)。
Frequently Asked Questions  |  Google Summer of Code  |  Google Developers

去年は他にもACMの1year membershipが貰えて、そこにMicrosoft Dreamspark Premium使用権がついてきたので、結果としてWindows 8がタダで手に入ったりしました。

スケジュール

4/22 - 5/3 申込書受付期間
5/27 採択プロジェクト発表
6/17 開発開始
7/29 - 8/2 中間報告提出期間
9/23 開発終了
9/23 - 9/27 最終報告提出期間
9/27 コード提出

参加するには何をしたらいいの?

参加したいプロジェクトを選び、面白そうと自分が感じるアイディアをアイディアリストから見つけ、プロジェクトの担当者とメールでやり取りして詳細を知り、申込書(application)を書きます。

参加したいプロジェクトのアイディアリストに面白そうなアイディアが無い場合は、自分で提案することも可能です。

申込書は複数提出することも可能です(一つのプロジェクトに対しては一つのみだが、複数のプロジェクトへ申し込める模様)。
どの申込書が最も優れていたか、Googleとプロジェクト側で話し合ってどれか一つが採択されます(全部却下という可能性もありますが…)。

プロジェクトを選ぼう

こちらのリンクからプロジェクトの一覧を表示できます。
プロジェクト数は非常に多いため、名前やタグで検索できるようになっています。
タグの欄には、使用する言語やフレームワーク、OS名などのタグが入力されているので、興味があるキーワードを入力してみてください(LinuxHTML5RubyC++など)。

一例として、名前を良く聞くあたりを並べときます。

どうしても、LinuxBSDコミュニティ関係に偏っているような気もしますが、中にはWindowsで動くアプリケーションやC#関係のプロジェクトもありますし、結構選択肢は色々あると思います。

アイディアリストを眺めてみる

プロジェクトのページを開くと、「Ideas page」というようなリンクが張ってあると思います。
これを開くと、プロジェクトのアイディアリストが表示されます。
FreeBSDの場合はこんなページです:
IdeasPage - FreeBSD Wiki

例えば、ここで「CPU online/offline project (GSoC)」というのが面白そうだと思ったとしましょう。
ページをみてみると、「Technical Contact」とか書いてありますね。
名前をクリックして進むと、メールアドレスが書いてあります。
じゃあ、この人宛に

Hi,
I'm thinking to participate GSoC'13, and I'd like to work on FreeBSD.
I found "CPU online/offline project" in FreeBSD's ideas page, it's sounds interesting.
Could you tell me more detail of the project?

とか適当な英語で聞いてみましょう(迷わずまずは連絡)。

あるいは、プロジェクトによってはMLへ質問を投げてくださいとなっていたり、IRCで聞きに来てよとかなってる場合もあります。
英語での瞬発力に自信がなければIRCよりはメールをおすすめしますが。

申込書(Application)を書こう

プロジェクトのページに申込書のひな形(APPLICATION TEMPLATE)があるので、これを参考にして申込書を書きましょう。
これは、かなり技術的に具体性を持って書いた方がいいと思います。
これをみれば実装ができるという勢いで書きましょう。
(かといって、ここにコードを長々と書き始めるのは得策ではないと思われますが。)

一例として、僕が書いたApplicationを貼っておきます:
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/syuu1228/16002

申し込み!

4/22 - 5/3の期間内に、GSoCのトップページに申し込みボタン(Apply)が表示されるはずです。
Applicationを貼るフォームが出てくるので、書いたApplicationを貼り付けて送ります。

とは言ってもいきなり送らずに、プロジェクト側の人とよく相談して、内容をよく練ってから送ってください。
プロジェクトと関係ないと限りなく部外者になっていまいますが、日本人に相談したい!という事であれば@syuu1228@naota344にご相談ください。
あるいは我々が分からない場合でも、TLの何処かにそのプロジェクトの関係者がいるかもしれません。

まだなんかよくわかんない

@syuu1228@naota344に聞いてみてください。

英語ガー

どのみちコンピュータ扱ってるといつかはぶつかる壁なので、今のうちに突破しておいたほうがいいです。観念しましょう。