第3回名古屋若手Webエンジニア交流会 https://wakateweb-nagoya.connpass.com/event/78763/
手頃な課題でOSSに初貢献してみよう@smogami 2018-03-10第3回名古屋若手Webエンジニア交流会help wantedgood first issuelow hanging fruit
View Slide
名前: もがみ @smogami所属: 来栖川電算 プロダクトマネージャ機械学習研究者向けSaaS
主催コミュニティ:• Scala読書会• 名古屋Java User Group協力(LT・会場提供など):• Japan AWS User Group 名古屋支部• Nagoya.cloud.first• Nagoya Frontend User Group
みなさんOpen Source Softwareに貢献してますか?
•OSSへ貢献してみた話•難しくない貢献の仕方今回の内容
Open Source Softwareと私たち• プログラミング言語• ビルドツール、開発生産性ツール• フレームワーク• DBや検索エンジンなどミドルウェア• ユーティリティ• そうしたOSSのドキュメント
こんなとき仕事で使っているOSSにどうしても足りない機能や解決しないと困るバグがある
どうする?機能をあきらめる解決されるまで待つOSS使わず独自実装OSSに貢献する価値を届けられない。最終手段いつになるやら。その間に競合に出遅れるのでは…とりまOK。でもメンテ負担増、ライブラリ更新が…自分以外のOSSユーザもうれしい
仕事で困ったのをきっかけに貢献(プルリク)してみた
わりとマージされて使ってるOSSが便利に
他のOSSユーザからも喜ばれて、もっと続けたくなった
OSSの開発難しそう…自分にはムリムリそう思っていた時期が私にもありました
OSSの開発難しそう…自分にはムリムリ難しい Issue (課題)ばかりじゃない。コア開発陣が時間を割けないため、誰かの貢献が必要なお手軽 Issue が結構ある
help wantedgood first issue初心者に好適 手伝い募集low hanging fruit手が届く果物=カンタンなわりに価値があるこんなラベルのIssueが初心者向け
• 内部を深く知らなくても取り組めるカンタンな機能追加• コンパイラ警告の解消• ドキュメントの誤植や間違い修正• 新機能がドキュメントに書いてない具体的には
お手頃な Issue の探し方• 興味あるGitHubレポジトリのIssues をラベルでフィルター• まとめサイトを利用• https://help.github.com/articles/searching-issues-and-pull-requests/#search-by-the-labels-on-an-issue• http://github-help-wanted.com/• http://up-for-grabs.net/#/help wantedgood first issue low hanging fruit
できそうな を探してちょこちょこPR送ると楽しいhelp wanted
初めてプルリクするときの注意• 普段使ってるOSSでも、そのビルドやテストでつまずきがち。 CONTRIBUTING.md やwikiなどに書かれてるのを探して従う• コミットログには Issue番号を書かないほうが良さげ。GitHubのIssueページからコミットにリンクされ、rebaseしても消せない!!
コード以外でも立派な貢献「不具合っぽい挙動を見つけた」「書いてる通りにやったのに動かない」「こんな機能あればいいのに」• Issueを書いてみよう• もっといい解決策を教えてもらえるかも• 誰かが実装してくれるかも
OSS貢献してみて学べたこと• 普段やっていない技術分野の理解• OSSの継続的発展・普及には、難しい課題の解決だけでなく、地道な課題の解決も必要• 貢献してもらいやすくする地ならしも大事• Issue のトリアージ(ラベル付け、閉じる)• 揉めた時の調整や決断(モデレーション)• CI(ビルドやテスト、ある種のレビューの自動化)• 開発を助けるツール:CI、コンパイラオプション
おわり