OSSにプルリクを送ったらマージしていただいたので嬉しかった話

はじめに

ここ数日、OSSに関する議論が活発に行われていますね。
OSSと聞いて、「貢献してみたいけど技術力が…」と思ってしまう方も多いかもしれません。
この記事には、以前私がOSSにプルリクを送った時に非常に丁寧に対応していただいたときの思い出を記録しておこうと思います。

プルリクを送る

こちらの、ayameというOSSを使っていた時に、特定のデータを送ると落ちるという挙動に気付きました。
github.com
そのことをツイートしたところ、中の方に「プルリク送ってよ」と言っていただけたので、修正のプルリクを送ることにしました。
再現性のある挙動だったので、比較的容易に修正のコードを書くことができました。
ただ、私自身のGoの経験が乏しくかなり雑なコードになってしまいました。
プルリクは送りましたがマージしていただけるかどうか自信はなく、「リジェクトされるかな…?」と思っていました。
ちなみに、送ったプルリクはこちらです。
github.com

レビューしていただく

プルリクを送ると、リポジトリの管理者の方がレビューをしてくれます。何らかのアクションがあるまでは、気になって何度もGitHubを開いてしまうのはあるあるだと思います。レビューで特に問題がなければマージされますが、そのプルリクによって他の場所の修正が必要になったり、もっと良い書き方がある場合などは修正依頼が来ることもあります。
私が送ったプルリクは、レビューで「こう書いたほうが良いと思います。よければこちらで直しますよ。」と言っていただいたので、お言葉に甘えて書き直していただきました。
プルリクはクローズされるかと思いましたが、一旦マージした上で更に修正のコミットをしていただけました。この対応の何が嬉しいのかというと、マージの操作をしていただいたことで、リポジトリのContributionsの欄に自分のアカウントが載ります。コントリビューターとして名前が残せるのはとてもとても嬉しいことです。

OSSを使うことの是非について

「無料で使うのは申し訳ないな…」と思ってしまう方もいるかも知れませんが、私は「OSSはどんどん使うべき」だと考えています。使わなければ良いものかどうかさえ分かりませんし、issueもプルリクも書けません。使う人が増えることで開発が活発になり、新機能の実装や思いもよらない活用事例がどんどん出てくることが期待できます。
もちろん、「OSSだから何をやっても許される」わけではありません。ライセンスは必ず守らなければなりませんし、Code of Conductや、issue・プルリクの送り方が決められている場合には従う必要があります。さらに、OSSの開発者はなんでも屋さんではありません。そのOSSに関連する技術的な基礎知識は勉強する必要がありますし、丸投げのようなissueを書くべきではないと思っています(ここはOSSによる部分もあるかと思いますが…)。間違っても、誰かを貶めるような発言は慎むべきです。

終わりに

プルリクを送ったときのドキドキとマージされたときの喜びは、OSSの醍醐味だと思います。OSSに貢献することは、自分自身のみならず他の開発者やOSSの利用者にとってもプラスになります。OSSという仕組みは本当に素晴らしいですし、とても意義のある活動だと思います。これからも、OSSの開発者への感謝とリスペクトの気持ちを忘れずに、OSSを使っていこうと思います。