OSS-Gate Workshop Tokyoに参加してはじめてRuby on RailsのIssueに投稿しました

https://oss-gate.doorkeeper.jp/

OSS開発に参加していない人が参加する人に変わる「入り口」を提供するという趣旨のコミュニティ「OSS-Gate」が開催しているワークショップへ参加して、Ruby on RailsのIssueに初めて投稿しました。

成果物

github.com

Railsのコードではなく、Rails Guideへの意見提案ですが、Rails GuideはRailsのコードベースに含まれているのでRailsのIssueへ提出しました。

やったこと

github.com

OSS-GateのWorkshopリポジトリにIssueを作成し、「作業ログ」という形でやったことを残していきます。
これには、「これから何がしたいか」「何をしたか」「その結果どうなったか」ということを「すべて」考えたまま、操作したまま書いていきます。
自分はTwitterでよくtsudaってきたので、終了時に100を超えるログを残していました・・・w

この作業ログというのがとても良いプラクティスでした。
普段の開発では細かいことを飛ばして事態の収束や機能の実装がすべてという気持ちについなってしまいます。自分がまだ未熟だからというのが大きいですが、時間内に機能を実装しようとするとだいたいひたすら全力でコーディングし続けてわかんなくなったらググってわかったらまたガッとコーディングしてって・・・というのを(右脳で)続けていると、思考がマクロになりがちです。しかしOSS-Gateでのこの取り組みは、思考をミクロに保ち続けることに非常に役立っています。細かい単一の作業に因果関係を持たせて「ここがわからない」「ここが難しかった」と振り返りながら取り組むと、それがプルリクチャンス(OSS-Gateではフィードバックチャンスと呼んでいました。プルリクチャンスという言葉は利己的な雰囲気を感じたのでやめようと思ったw)になるんだよという気づきを得ることができました。

コーディングにそんな詳しくなくても大丈夫

OSS-Gateでまず行ったのは「インストールして、動かす」ということ。
初心にかえって改めて作業ログを書きながら公式サイトへ行ったり、インストールガイドのナビゲーションを探したり、バージョンや依存関係を解決したりしていると、だいたいどこかで次も誰かが遭遇しそうな問題を踏み抜きます。それが「フィードバックポイント」です。簡単に思えるダウンロードやインストールだけでも無数の「んっ?(感動詞)」があるということに改めて気がつきました。

これから

OSS開発は普段の業務と同じ」という言葉を胸に、OSSへのフィードバック機会を増やす。
ゆくゆくはコードにコミットしていきます。

余談: rails/railsで厄介プルリクをしないために

rails/railsTravis CIからVIP認定されているほどCIの稼働が激しいリポジトリです。ここに書いてあるように、

To help our CI servers you should add [ci skip] to your documentation commit message to skip build on that commit. Please remember to use it for commits containing only documentation changes.

ドキュメントへのコミットだけのプルリクエストはタイトルに [ci skip] をつけるとCIを動かさないようにできるのでそうしましょうという知見を得ました。

ルールを知らなくて怒られることもあるかもしれないけど、通過儀礼だと思ってぼちぼち頑張りましょう。

余談: 「make a pull request」ではない

「open a pull request」なんだそうだ。言われてみればGitHubでもmakeじゃなくてopenって書いてあるな。

一緒にOSS-Gateしたい人を募集します

次は5月にあるそうです。
TwitterFacebookで、興味ありそうなメンツに雑にmentionしていきますね。。。

事後録:経過観察

  • 2017/03/27 11:11
    • @vipulnsward さんがdocsラベルをつけてくれた。
      • vipulnswardさんはBigBinaryというRailsとReact Nativeを使ったプロダクト開発の会社のディレクターでRailsのIssueチーム。Reactコミュニティの中の人でもある。
        • すげえ