oss活動の活発さと評価の関係について

64
OSS活動の活発 さと評価の関係 について 和田 卓人 (@t_wada) Feb 16, 2016 @ 日本OSS推進フォーラム

Upload: takuto-wada

Post on 15-Apr-2017

8.287 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: OSS活動の活発さと評価の関係について

OSS活動の活発さと評価の関係

について和田 卓人 (@t_wada)

Feb 16, 2016 @ 日本OSS推進フォーラム

Page 2: OSS活動の活発さと評価の関係について

和田 卓人 id: t-wada @t_wada github: twada

Page 3: OSS活動の活発さと評価の関係について
Page 4: OSS活動の活発さと評価の関係について

Do you write tests?

Page 5: OSS活動の活発さと評価の関係について

2016年初頭のOSS風景

Page 6: OSS活動の活発さと評価の関係について

http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicityいわゆる Social Coding

Page 7: OSS活動の活発さと評価の関係について

• 身分制度の変革 • Social Coding 以前の OSS • プロダクトに人が群がる • “コミッター様 vs. 下々のものども”

Social Coding が OSS にもたらしたもの

@a_matsuda

https://speakerdeck.com/a_matsuda/social-coding

Page 8: OSS活動の活発さと評価の関係について

• コミッタ階級による アンシャンレジームの崩壊

• 市民革命。人民の直接参加。主権在民。 • コミューン、すなわちコミュニティ • 人民がソースコードを保持する権利を手にするところからコミュニティが始まる

Social Coding 革命

@a_matsuda

https://speakerdeck.com/a_matsuda/social-coding

Page 9: OSS活動の活発さと評価の関係について

• More users • More use-cases • More contributions • OSS は公開しただけでは使われない • 継続的な開発とメンテナンスが重要

OSS プロダクトに必要なもの

@tagomoris

http://tagomoris.hatenablog.com/entry/2015/08/23/160337

Page 10: OSS活動の活発さと評価の関係について

• オープンな開発チーム • 密室で決まっているような印象を与えないこと

• オープンなコントリビューション手順 • 企業のサポート

OSSコミュニティを作るために

@tagomoris

http://tagomoris.hatenablog.com/entry/2015/08/23/160337

Page 11: OSS活動の活発さと評価の関係について

• 常に英語を使う。これが絶対的に大事。

• ロシア語わからん問題 • 英語を使うことは、広くコントリビューションを受け入れますという意思表示

• “日本語で来た issue は即閉じるくらいの勢いで良い”

English! English!

@tagomoris

http://tagomoris.hatenablog.com/entry/2015/08/23/160337

Page 12: OSS活動の活発さと評価の関係について

どのあたりを見ますか?

https://github.com/power-assert-js/power-assert

Page 13: OSS活動の活発さと評価の関係について

どのあたりを見ますか?

https://www.npmjs.com/package/power-assert

Page 14: OSS活動の活発さと評価の関係について

• 我々が見るもの • 最終コミット日付 • バージョン番号 • open な issue や PR の数 • star 数……などなど • ゆえに、積極的に issue や PR を受け入れて活発さを維持する取り組みが必要

継続的な開発とメンテナンス

@tagomoris

http://tagomoris.hatenablog.com/entry/2015/08/23/160337

Page 15: OSS活動の活発さと評価の関係について

http://semver.org/lang/ja/

Page 16: OSS活動の活発さと評価の関係について

http://codelunch.fm/16/

#codelunchfm でもしゃべっています

Page 17: OSS活動の活発さと評価の関係について

1.4.3semantic versioning

Page 18: OSS活動の活発さと評価の関係について

1.4.3major minor patch

semantic versioning

Page 19: OSS活動の活発さと評価の関係について

1.4.3major minor patch

semantic versioning

下位互換性のあるバグ修正は patch を上げる

Page 20: OSS活動の活発さと評価の関係について

1.4.3major minor patch

semantic versioning

下位互換性のある機能追加は minor を上げる

Page 21: OSS活動の活発さと評価の関係について

1.4.3major minor patch

semantic versioning

バグ修正だろうが、機能追加だろうが、 下位互換性が無ければ major を上げる

Page 22: OSS活動の活発さと評価の関係について

1.4.3major minor patch

semantic versioning

個人的にはデフォルトの挙動を変えるときに major を上げることが多い

Page 23: OSS活動の活発さと評価の関係について

^1.4.3semver は作者と利用者の約束と信頼関係

~1.4.3下位互換性のある機能追加もどんどんダウンロードする

下位互換性のあるバグ修正だけダウンロードする

Page 24: OSS活動の活発さと評価の関係について

• 我々が見るもの • 最終コミット日付 • バージョン番号 • open な issue や PR の数 • star 数……などなど • ゆえに、積極的に issue や PR を受け入れて活発さを維持する取り組みが必要

継続的な開発とメンテナンス

@tagomoris

http://tagomoris.hatenablog.com/entry/2015/08/23/160337

Page 25: OSS活動の活発さと評価の関係について

http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicity

良いソフトウェア設計と両立できるのだろうか?

Page 26: OSS活動の活発さと評価の関係について

“それは結果的にソフトウェアの構造をゆがめることにつながらないだろうか。活発さを志向するあまり、機能やコードベースの肥大化を招いてしまい、統一感のある小さく単機能なソフトウェアの姿を保てなくならないだろうか。もし活発さを志向する OSS 開発にそのようなバイアスがかかるのであれば、そこには構造的な問題、不幸な構図があるように見えてしまう”

http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicity

Page 27: OSS活動の活発さと評価の関係について

“例えば上手く設計できたソフトウェアがあるとして、「これ以上減らすところがなく、実質的に完成していて、手を入れるところもほとんどない」ことによって「開発が活発ではなく、メンテナンスされていない」というイメージを与えてしまい、それが悪い評価につながりかねないのは、不幸なことではないだろうか”

http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicity

Page 28: OSS活動の活発さと評価の関係について

http://tagomoris.hatenablog.com/entry/2015/08/31/101025

Page 29: OSS活動の活発さと評価の関係について

戦略1: 地道な更新

Page 30: OSS活動の活発さと評価の関係について

https://twitter.com/tmtms/status/635743856714055680

Page 31: OSS活動の活発さと評価の関係について

http://rebuild.fm/106/

Page 32: OSS活動の活発さと評価の関係について

https://github.com/power-assert-js/power-assert/commit/7d6552c5

Page 33: OSS活動の活発さと評価の関係について

戦略2: 最終コミット以外も

見てもらう

Page 34: OSS活動の活発さと評価の関係について

https://twitter.com/kurehajime/status/635041257400569856

Page 35: OSS活動の活発さと評価の関係について

https://twitter.com/nazoking/status/635216180886679552

Page 36: OSS活動の活発さと評価の関係について

コミット以外にダウンロード数等を見せる試み

Page 37: OSS活動の活発さと評価の関係について

戦略3: プラグイン機構

Page 38: OSS活動の活発さと評価の関係について

https://twitter.com/kazuho/status/635009225026961408

Page 39: OSS活動の活発さと評価の関係について

https://twitter.com/sonots/status/634978258878988288

Page 40: OSS活動の活発さと評価の関係について

https://www.gitbook.com/book/azu/javascript-plugin-architecture/details

Page 41: OSS活動の活発さと評価の関係について

http://aosabook.org/en/index.html

Page 42: OSS活動の活発さと評価の関係について

http://aosabook.org/en/index.html

Page 43: OSS活動の活発さと評価の関係について

戦略4: 適者生存の法則

Page 44: OSS活動の活発さと評価の関係について

https://twitter.com/Dryad/status/635841558932099072

Page 45: OSS活動の活発さと評価の関係について

http://d.hatena.ne.jp/essa/20140330/p1

Page 46: OSS活動の活発さと評価の関係について

“しかし、今の業界は、「エコシステム」の時代だ。熱帯雨林のように、食いあいつつ共生しあうさまざなタイプのプレイヤーが、自分の為だけの個別の意思決定をして、その相互作用で技術が発展していく。「エコシステム」は矛盾だらけで、ある技術が発展するのと同時に、そのアンチテーゼとなる技術も伸びる”

“「ロードマップ」が指し示す未来の方向と違う方向に進むことは致命的な間違いだが、「エコシステム」はむしろ中心部がレッドオーシャンで、周辺部に生き残りが容易なブルーオーシャンがある”

http://d.hatena.ne.jp/essa/20140330/p1

Page 47: OSS活動の活発さと評価の関係について

“普通の人は「ロードマップ」の中では真ん中を進むべきで、「エコシステム」の中では真ん中を避けるべきだ”

http://d.hatena.ne.jp/essa/20140330/p1

Page 48: OSS活動の活発さと評価の関係について

https://www.flickr.com/photos/erh1103/8219419962

https://www.flickr.com/photos/danfromindiana/18259396623/

github はバザールか熱帯雨林か

Page 49: OSS活動の活発さと評価の関係について

「社会問題」たち

Page 50: OSS活動の活発さと評価の関係について

https://twitter.com/kizmarh/status/553141889541877760

Page 51: OSS活動の活発さと評価の関係について

https://github.com/dear-github/dear-github/pull/115

Page 52: OSS活動の活発さと評価の関係について

https://twitter.com/kizmarh/status/553141889541877760https://github.com/eslint/eslint/issues/5205

Page 53: OSS活動の活発さと評価の関係について

https://github.com/dear-github/dear-github

Page 54: OSS活動の活発さと評価の関係について

Code of Conduct

Page 55: OSS活動の活発さと評価の関係について

https://bugs.ruby-lang.org/issues/12004

Page 56: OSS活動の活発さと評価の関係について

http://contributor-covenant.org/

Page 57: OSS活動の活発さと評価の関係について

http://postgresql.nabble.com/WIP-CoC-td5881640.html

Page 58: OSS活動の活発さと評価の関係について

https://github.com/domgetter/NCoC

Page 59: OSS活動の活発さと評価の関係について

https://www.flickr.com/photos/erh1103/8219419962

https://www.flickr.com/photos/cost3l/12494650935/

『伽藍とバザール』は今日を説明できるか

Page 60: OSS活動の活発さと評価の関係について

https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c

Page 61: OSS活動の活発さと評価の関係について

• A popular project is a project that is being used by a lot of people, and ideally growing.

• A healthy project is a project where maintainers have an active, reciprocal relationship with their community.

• A supported project is one where maintainers have the resources to manage the popularity of a project and grow a healthy community.

OSSプロジェクト成功の三要素

by @nayafiahttps://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c

Page 62: OSS活動の活発さと評価の関係について
Page 63: OSS活動の活発さと評価の関係について

• github, Social Coding は良くも悪くも本当に「社会」になりつつある

• コードを通じてこの「社会」に関わりましょう

まとめ

https://speakerdeck.com/a_matsuda/social-coding

Page 64: OSS活動の活発さと評価の関係について

ご清聴ありがとうございました