さんぽしのBLOG

さんぽしのBLOG

非理系の大学生が頑張りに頑張り抜いてエリートエンジニアになるシンデレラストーリー(予定)です。

Google Summer of Code2020に申し込んでみた話

落ちました。

こんにちは さんぽしです。

Google Summer of Codeと言うプロジェクトをみなさんはご存知でしょうか。

summerofcode.withgoogle.com

毎年行われている学生向けのGoogleが認定した(?)OSSのプロジェクトに参加することで報酬(50万円!!)なりが貰えるというプロジェクトです。

f:id:sanpo_shiho:20200428234808p:plain

プロジェクトごとに一人の学生が選ばれるという形になっています。(学生は複数のプロジェクトに応募可能、ただし複数のプロジェクトから承認されることはできない)

かなり多くのプロジェクトがあるので自分の知っているようなものも必ずあると思います。パッとみた感じ有名なものだとDjangoPostgresqlなどがありました。(有名なものはその分倍率はたかそうですね)

僕は今回Erlang Ecosystem Foundationに申し込みました。Erlangとなっていますが、Elixirも含まれます。

出だしの通り僕は落ちてしまいましたが、日本語のGSoCに関する記事はかなり少ないので、申し込みに必要だったことやproposalの書き方などを後世のために残しておこうと思います。

申し込みに必要なもの

必要なものとしては学生であることの証明などがありますが、一番重要なのはproposal(提案書)です。

proposalというのはOSSに対して具体的に自分がどのような機能の追加であったりの活動を行うのかといった内容を書くものになります。

しかし、一から考える必要はありません。プロジェクトごとにIDEAS LISTが用意されています。なので多くの人はIDEAS LISTの中から自分のできそうな or 興味のあるものを選んでproposalを書くことになると思います。

僕はElixir/ErlangのpackageシステムであるHexに対して

  • 脆弱性報告のフォームをhexpmに設ける
  • 脆弱性報告→Elixirの管理者の承認→ライブラリの管理者へ通知 といった流れの作成
  • hexpm上で脆弱性のあるライブラリの情報の公開
  • mix hex.auditコマンドの作成
  • hexのAPI脆弱性情報を取得できるAPIを生やす

といった改善を行うproposalを書きました。

実際のproposalはこちらです

docs.google.com

英語でうげっと思ったそこのあなた、安心してください。僕もかなりの英弱ですがDeeplという魔法を駆使してなんとか書き上げました。

また、自分のproposalは提出前に実際のプロジェクトのメンターからレビューをもらうことができます。僕は何度か送ったメールにガン無視をキメられたのでメンターさんが忙しかったのかレビューをもらうことはできませんでした。

しかし多くのプロジェクトではレビューをもらうことができているようで、GSoCの参加記のような記事のほとんどにはレビューをもらうことの重要性が書かれていました。

その他、アドバイスとしてよく書かれていたのはそのプロジェクトへのOSSコントリビュート経験です。僕はElixirやPhoenix本体にいくつかPRを出したことがあるので(全てがmergeされたとは言ってない)その点は大丈夫だったと思います。

原因として考えられるのは

  • シンプルに他に強い人がいた、実力不足(多分これ)
  • スケジュールの粒度がアバウトだった(1週間単位で書いてる人もいました)
  • 英語がおかしかった…?
  • 50万円が欲しいという強欲が滲み出ていた

あたりですかね。悔しい

終わりに

GSoCは学生の内しか受けることができません。来年の僕の手の空き具合が分からないですが、再チャレンジしたいと思ってます。

この記事を読んで興味を持った方は来年一緒に頑張りましょう。💪