Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
手頃な課題でOSSに初貢献してみよう / Good First Issue for Contr...
Search
TATSUNO Yasuhiro
March 10, 2018
Programming
2
830
手頃な課題でOSSに初貢献してみよう / Good First Issue for Contributing to OSS
第3回名古屋若手Webエンジニア交流会
https://wakateweb-nagoya.connpass.com/event/78763/
TATSUNO Yasuhiro
March 10, 2018
Tweet
Share
More Decks by TATSUNO Yasuhiro
See All by TATSUNO Yasuhiro
Scala 3 で GLSL のための c-like-for を実装してみた
exoego
1
610
Bun に LCOV 出力を実装した
exoego
2
230
terraform-provider-aws にプルリクして マージされるまで
exoego
2
440
ライブラリをパブリッシュせずにすばやく試す
exoego
2
290
esbuild 最適化芸人
exoego
3
2.1k
いい感じに AWS を組み合わせたビルディングブロックでアプリ開発を支援する / TdTechTalk 2022 11
exoego
0
760
Empowering App Dev by Nicely-Crafted High-Level AWS Components
exoego
0
80
月間数十億リクエストのマイクロサービスを支える JVM+AWS フルサーバーレス開発事例 / Now and Future of Fully Serverless development at Chatwork
exoego
1
760
Scala と AWS でフルサーバーレス開発事例 / How Chatworks uses Scala and Serverless
exoego
3
1.5k
Other Decks in Programming
See All in Programming
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
640
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
260
CursorはMCPを使った方が良いぞ
taigakono
1
240
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
520
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
130
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.5k
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
110
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
770
RailsGirls IZUMO スポンサーLT
16bitidol
0
170
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
200
WindowInsetsだってテストしたい
ryunen344
1
240
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.2k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
Bash Introduction
62gerente
614
210k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
810
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
52k
Done Done
chrislema
184
16k
Why Our Code Smells
bkeepers
PRO
337
57k
Site-Speed That Sticks
csswizardry
10
680
Making Projects Easy
brettharned
116
6.3k
Transcript
手頃な課題でOSSに初貢献してみよう @smogami 2018-03-10 第3回名古屋若手Webエンジニア交流会 help wanted good first issue low
hanging fruit
名前: もがみ @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 wanted good 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 wanted good first issue low hanging fruit
できそうな を探して ちょこちょこPR送ると楽しい help wanted
初めてプルリクするときの注意 • 普段使ってるOSSでも、そのビルドやテスト でつまずきがち。 CONTRIBUTING.md や wikiなどに書かれてるのを探して従う • コミットログには Issue番号を書かないほう
が良さげ。GitHubのIssueページからコミッ トにリンクされ、rebaseしても消せない!!
コード以外でも立派な貢献 「不具合っぽい挙動を見つけた」 「書いてる通りにやったのに動かない」 「こんな機能あればいいのに」 • Issueを書いてみよう • もっといい解決策を教えてもらえるかも • 誰かが実装してくれるかも
OSS貢献してみて学べたこと • 普段やっていない技術分野の理解 • OSSの継続的発展・普及には、難しい課題の解決だけ でなく、地道な課題の解決も必要 • 貢献してもらいやすくする地ならしも大事 • Issue
のトリアージ(ラベル付け、閉じる) • 揉めた時の調整や決断(モデレーション) • CI(ビルドやテスト、ある種のレビューの自動化) • 開発を助けるツール:CI、コンパイラオプション
おわり