Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Takuto Wada
PDF, PPTX
42,238 views
OSS についてあれこれ
java-ja.OSS http://connpass.com/event/19690/
Technology
◦
Read more
143
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 65
2
/ 65
3
/ 65
4
/ 65
5
/ 65
6
/ 65
7
/ 65
8
/ 65
9
/ 65
10
/ 65
11
/ 65
12
/ 65
13
/ 65
14
/ 65
15
/ 65
16
/ 65
17
/ 65
18
/ 65
19
/ 65
20
/ 65
21
/ 65
22
/ 65
23
/ 65
24
/ 65
25
/ 65
26
/ 65
27
/ 65
28
/ 65
29
/ 65
30
/ 65
31
/ 65
32
/ 65
33
/ 65
34
/ 65
35
/ 65
36
/ 65
37
/ 65
38
/ 65
39
/ 65
40
/ 65
41
/ 65
42
/ 65
43
/ 65
44
/ 65
45
/ 65
46
/ 65
47
/ 65
48
/ 65
49
/ 65
50
/ 65
51
/ 65
52
/ 65
53
/ 65
54
/ 65
55
/ 65
56
/ 65
57
/ 65
58
/ 65
59
/ 65
60
/ 65
61
/ 65
62
/ 65
63
/ 65
64
/ 65
65
/ 65
More Related Content
PDF
テスト文字列に「うんこ」と入れるな
by
Kentaro Matsui
PDF
組織にテストを書く文化を根付かせる戦略と戦術
by
Takuto Wada
PDF
TDD のこころ @ OSH2014
by
Takuto Wada
PDF
例外設計における大罪
by
Takuto Wada
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
by
Takuto Wada
PDF
SQLアンチパターン - ナイーブツリー
by
ke-m kamekoopa
PPT
Raft
by
Preferred Networks
PDF
Tackling Complexity
by
Yoshitaka Kawashima
テスト文字列に「うんこ」と入れるな
by
Kentaro Matsui
組織にテストを書く文化を根付かせる戦略と戦術
by
Takuto Wada
TDD のこころ @ OSH2014
by
Takuto Wada
例外設計における大罪
by
Takuto Wada
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
by
Takuto Wada
SQLアンチパターン - ナイーブツリー
by
ke-m kamekoopa
Raft
by
Preferred Networks
Tackling Complexity
by
Yoshitaka Kawashima
What's hot
PPTX
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
by
Tokoroten Nakayama
PDF
Oss貢献超入門
by
Michihito Shigemura
PDF
アジャイルサムライの次に読む技術書
by
Takuto Wada
PPTX
最近のやられアプリを試してみた
by
zaki4649
PDF
TDD のこころ
by
Takuto Wada
PDF
KiCadで雑に基板を作る チュートリアル
by
裕士 常田
PDF
Test Yourself - テストを書くと何がどう変わるか
by
Takuto Wada
PDF
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
by
Takuto Wada
PPTX
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
by
Shota Shinogi
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
by
Koichiro Matsuoka
PDF
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
by
Koichiro Matsuoka
KEY
やはりお前らのMVCは間違っている
by
Koichi Tanaka
PDF
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
by
都元ダイスケ Miyamoto
PPTX
Redisの特徴と活用方法について
by
Yuji Otani
PDF
無料で仮想Junos環境を手元に作ろう
by
akira6592
PDF
nginx入門
by
Takashi Takizawa
PDF
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
by
啓 杉本
PDF
AWS CognitoからAuth0への移行パターン4つ
by
株式会社スタジオメッシュ
PDF
DBスキーマもバージョン管理したい!
by
kwatch
PPTX
概念モデリング再入門 + DDD
by
Hiroshima JUG
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
by
Tokoroten Nakayama
Oss貢献超入門
by
Michihito Shigemura
アジャイルサムライの次に読む技術書
by
Takuto Wada
最近のやられアプリを試してみた
by
zaki4649
TDD のこころ
by
Takuto Wada
KiCadで雑に基板を作る チュートリアル
by
裕士 常田
Test Yourself - テストを書くと何がどう変わるか
by
Takuto Wada
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
by
Takuto Wada
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
by
Shota Shinogi
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
by
Koichiro Matsuoka
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
by
Koichiro Matsuoka
やはりお前らのMVCは間違っている
by
Koichi Tanaka
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
by
都元ダイスケ Miyamoto
Redisの特徴と活用方法について
by
Yuji Otani
無料で仮想Junos環境を手元に作ろう
by
akira6592
nginx入門
by
Takashi Takizawa
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
by
啓 杉本
AWS CognitoからAuth0への移行パターン4つ
by
株式会社スタジオメッシュ
DBスキーマもバージョン管理したい!
by
kwatch
概念モデリング再入門 + DDD
by
Hiroshima JUG
Viewers also liked
PDF
リクルートにおける画像解析事例紹介
by
Recruit Technologies
PPTX
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
by
Yota Ishida
PDF
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
by
徹 上野山
PPTX
TensorFlowで会話AIを作ってみた。
by
tak9029
PDF
unassert - encourage reliable programming by writing assertions in production
by
Takuto Wada
PDF
OSS活動の活発さと評価の関係について
by
Takuto Wada
PDF
power-assert, mechanism and philosophy
by
Takuto Wada
PDF
現在のDNNにおける未解決問題
by
Daisuke Okanohara
PDF
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
by
Yusuke HIDESHIMA
PDF
MySQLで論理削除と正しく付き合う方法
by
yoku0825
PDF
The monad fear
by
LINE Corporation
PDF
テストを書く文化を育てる戦略と戦術
by
Takuto Wada
PDF
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
by
Yahoo!デベロッパーネットワーク
PDF
Rails5 Action Cableの紹介
by
pro0901
PDF
見やすいプレゼン資料の作り方 - リニューアル増量版
by
MOCKS | Yuta Morishige
PDF
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
by
Terui Masashi
PDF
TensorFlowで機械学習ことはじめ(summer edition)
by
徹 上野山
PDF
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
by
Kazuhiro Sera
PDF
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
by
Kazuhiro Sera
PDF
めんどくさくない Scala #kwkni_scala
by
Kazuhiro Sera
リクルートにおける画像解析事例紹介
by
Recruit Technologies
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
by
Yota Ishida
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
by
徹 上野山
TensorFlowで会話AIを作ってみた。
by
tak9029
unassert - encourage reliable programming by writing assertions in production
by
Takuto Wada
OSS活動の活発さと評価の関係について
by
Takuto Wada
power-assert, mechanism and philosophy
by
Takuto Wada
現在のDNNにおける未解決問題
by
Daisuke Okanohara
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
by
Yusuke HIDESHIMA
MySQLで論理削除と正しく付き合う方法
by
yoku0825
The monad fear
by
LINE Corporation
テストを書く文化を育てる戦略と戦術
by
Takuto Wada
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
by
Yahoo!デベロッパーネットワーク
Rails5 Action Cableの紹介
by
pro0901
見やすいプレゼン資料の作り方 - リニューアル増量版
by
MOCKS | Yuta Morishige
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
by
Terui Masashi
TensorFlowで機械学習ことはじめ(summer edition)
by
徹 上野山
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
by
Kazuhiro Sera
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
by
Kazuhiro Sera
めんどくさくない Scala #kwkni_scala
by
Kazuhiro Sera
More from Takuto Wada
PDF
テスト用ライブラリ power-assert
by
Takuto Wada
PDF
Reviewing RESTful Web Apps
by
Takuto Wada
PDF
power-assert in JavaScript
by
Takuto Wada
PDF
私にとってのテスト
by
Takuto Wada
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
by
Takuto Wada
PDF
愛せないコードを書くには人生はあまりにも短い
by
Takuto Wada
PDF
ペアプログラミング ホントのところ
by
Takuto Wada
PDF
RESTful Web アプリの設計レビューの話
by
Takuto Wada
PDF
TDDBC お題
by
Takuto Wada
PDF
DevLOVE DDDBC
by
Takuto Wada
PDF
TDDBC Fukuoka Day1
by
Takuto Wada
PDF
js テスト放浪記
by
Takuto Wada
PDF
xUTP Chapter19 (2). Testcase Class
by
Takuto Wada
PDF
xUTP Chapter26. Dependency Injection
by
Takuto Wada
PDF
xUTP Chapter27 Generated Value
by
Takuto Wada
PDF
The only one big thing every programmer should know
by
Takuto Wada
PDF
10+1 Things you should know about JavaScript testing
by
Takuto Wada
PDF
Tochigi Test-no-Kaigi position paper
by
Takuto Wada
テスト用ライブラリ power-assert
by
Takuto Wada
Reviewing RESTful Web Apps
by
Takuto Wada
power-assert in JavaScript
by
Takuto Wada
私にとってのテスト
by
Takuto Wada
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
by
Takuto Wada
愛せないコードを書くには人生はあまりにも短い
by
Takuto Wada
ペアプログラミング ホントのところ
by
Takuto Wada
RESTful Web アプリの設計レビューの話
by
Takuto Wada
TDDBC お題
by
Takuto Wada
DevLOVE DDDBC
by
Takuto Wada
TDDBC Fukuoka Day1
by
Takuto Wada
js テスト放浪記
by
Takuto Wada
xUTP Chapter19 (2). Testcase Class
by
Takuto Wada
xUTP Chapter26. Dependency Injection
by
Takuto Wada
xUTP Chapter27 Generated Value
by
Takuto Wada
The only one big thing every programmer should know
by
Takuto Wada
10+1 Things you should know about JavaScript testing
by
Takuto Wada
Tochigi Test-no-Kaigi position paper
by
Takuto Wada
OSS についてあれこれ
1.
和田 卓人 @t_wada Oct
5, 2015 at #java_ja_oss OSS についてあれこれ
2.
和田 卓人 id: t-wada @t_wada github:
twada
4.
assert(typeof item.id ===
'strong') | | | | | | | false | | "foo" | Item{id:"foo",name:"bar"} "string" --- [string] 'strong' +++ [string] typeof item.id @@ -1,6 +1,6 @@ str -o +i ng power-assert https://github.com/power-assert-js/power-assert
5.
スタンド名は「ワイルド・サバンナ」 よろしくお願いします
6.
第一部 OSSとして この先生きのこるために
7.
http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicity 発端はモリスさんの講演の感想エントリ
8.
例えば上手く設計できたソフトウェアが あるとして、「これ以上減らすところがな く、実質的に完成していて、手を入れると ころもほとんどない」ことによって「開発 が活発ではなく、メンテナンスされていな い」というイメージを与えてしまい、それ が悪い評価につながりかねないのは、不 幸なことではないだろうか http://t-wada.hatenablog.jp/entry/active-oss-development-vs-simplicity
9.
http://tagomoris.hatenablog.com/entry/2015/08/31/101025
10.
戦略1: 地道な更新
11.
https://twitter.com/tmtms/status/635743856714055680
12.
http://rebuild.fm/106/
13.
https://github.com/power-assert-js/power-assert/commit/7d6552c5
14.
戦略2: 最終コミット以外も 見てもらう
15.
https://twitter.com/kurehajime/status/635041257400569856
16.
https://twitter.com/nazoking/status/635216180886679552
17.
コミット以外にダウンロード数等を見せる試み
18.
戦略3: プラグイン機構
19.
https://twitter.com/kazuho/status/635009225026961408
20.
https://twitter.com/sonots/status/634978258878988288
21.
https://www.gitbook.com/book/azu/javascript-plugin-architecture/details
22.
http://aosabook.org/en/index.html
23.
http://aosabook.org/en/index.html
24.
戦略4: 適者生存の法則
25.
https://twitter.com/Dryad/status/635841558932099072
26.
http://d.hatena.ne.jp/essa/20140330/p1
27.
しかし、今の業界は、「エコシステム」の時代だ。 熱帯雨林のように、食いあいつつ共生しあうさまざな タイプのプレイヤーが、自分の為だけの個別の意思決 定をして、その相互作用で技術が発展していく。「エ コシステム」は矛盾だらけで、ある技術が発展するの と同時に、そのアンチテーゼとなる技術も伸びる 「ロードマップ」が指し示す未来の方向と違う方向 に進むことは致命的な間違いだが、「エコシステム」 はむしろ中心部がレッドオーシャンで、周辺部に生き 残りが容易なブルーオーシャンがある http://d.hatena.ne.jp/essa/20140330/p1
28.
普通の人は「ロードマップ」 の中では真ん中を進むべきで、 「エコシステム」の中では真ん 中を避けるべきだ http://d.hatena.ne.jp/essa/20140330/p1
29.
第二部 自己鍛錬としての OSS
30.
• 週末に自分のプロダクトを頑張る作戦、失敗 • 平日と同じ馬力では書けない •
全ての週末が空いているわけではない • 一週間 (あるいは二週間) は長い。コード を忘れてしまう • そこで John Resig が行ったことは…… あの jresig でもうまくいかないこと
31.
http://ejohn.org/blog/write-code-every-day/
32.
1.毎日コードを書くこと。ブログ、ドキュメン ト、その他はコードを書いたらやってよい。 2.意味のあるコードを書くこと。インデント やフォーマットの修正、可能ならばリファク タリングもコード書きにはカウントしない。 3.深夜 24 時前に終わらせること。 4.書いたコードを
github で全て OSS にする こと。 四つのルール http://ejohn.org/blog/write-code-every-day/
33.
現在の @jresig の
github profile https://github.com/jeresig
34.
• 必要最小限のコードへの集中: 一日30分∼1時間程度で意 味のあるコードを書くことが強いられる
(休日にはもっと かけられる) • プログラミングの習慣化: github に草を生やすのが目的で はない。自分で自分自身のために生活習慣を変えるのが大 事 • 不安との戦い: 以前は「十分に」進んでいるか、「十分 に」完成しているか、不安があった。毎日コードを書いて みて、進んでいるという実感は、実際の進 と同じくらい 重要だという気づきを得た jresig に起こった変化 (1)
35.
• 週末の過ごしかた: 以前は開発の全てを週末に
けて失 敗していたが、いまや週末はそれほど重要でなくなり、 リアルライフを充実できるようになった • バックグラウンド処理: 散歩中、シャワー中、常にコー ドのことをバックグラウンドで考えるようになり、良 いアイデアが浮かぶようになった • コンテクストスイッチ: 以前は週に一回の開発だったの でコンテクストスイッチのコストがあったが、いまは 毎日なのでそれがない jresig に起こった変化 (2)
36.
• ワークライフバランス: 仕事/生活/自分のプロジェクト のバランスの取り方が分かったのが最大の収穫だった。 毎日やるということは、バランスを取るということ •
まわりからの理解: 「毎日コードを書く」という習慣を 公言したことで、パートナーからの理解も得られるよ うになった • どれだけコードを書いたか: この習慣を続けると書く コードやアウトプットは自分でも覚えられないくらい の量になり、充実感を得られる jresig に起こった変化 (3)
37.
要するに筋トレのようなものか http://hrnabi.com/2015/09/17/9372/
38.
トレーニングが継続可能であるように意識しながら 仕事をしていくと、運動や食事、あとは生活習慣とい うものの重要性に気づくことができると思います ちゃんと目的を持つこと。記録を伸ばすようにやら ないと効果がないように思うんです。記録を伸ばした いと思えるかどうかって、「好きのバロメーター」の 1つです http://hrnabi.com/2015/09/28/9411/ 握力王も仰っている
39.
自分もやってみた https://github.com/twada
40.
自分もやってみた 受託開発をやっている時期 ど忘れ(くやしい)
41.
○ 毎日コードを書くこと。ブログ、ドキュメン ト、その他はコードを書いたらやってよい。 △ 意味のあるコードを書くこと。インデントや フォーマットの修正、可能ならばリファクタ リングもコード書きにはカウントしない。 △
深夜 24 時前に終わらせること。 △ 書いたコードを github で全て OSS にする こと。 達成度
42.
実際にやってみて •小モジュールを沢山作るようになる •リリース回数が思ったより多い •年間 100 リリースくらい •CHANGELOG
作りにコストが掛かる •リリース作業を省力化したい
43.
https://github.com/ajoslin/conventional-changelog conventional-changelog
44.
<type>(<scope>): <subject> <BLANK LINE> <body> <BLANK
LINE> <footer> 特定形式のコミットログからCHANGELOGを出してくれる https://github.com/ajoslin/conventional-changelog/blob/master/conventions/angular.md feat(pencil): add 'graphiteWidth' option fix(graphite): stop graphite breaking when width < 0.1 Closes #28 perf(pencil): remove graphiteWidth option BREAKING CHANGE: The graphiteWidth option has been removed. The default graphite width of 10mm is always used for performance reason.
45.
第三部 semver 重要
46.
http://semver.org/lang/ja/
47.
http://codelunch.fm/16/ #codelunchfm でもしゃべっています
48.
1.4.3 semantic versioning
49.
1.4.3 major minor patch semantic
versioning
50.
1.4.3 major minor patch semantic
versioning 下位互換性のあるバグ修正は patch を上げる
51.
1.4.3 major minor patch semantic
versioning 下位互換性のある機能追加は minor を上げる
52.
1.4.3 major minor patch semantic
versioning バグ修正だろうが、機能追加だろうが、 下位互換性が無ければ major を上げる
53.
1.4.3 major minor patch semantic
versioning 個人的にはデフォルトの挙動を変えるときに major を上げることが多い
54.
^1.4.3 semver は作者と利用者の約束と信頼関係 ~1.4.3 下位互換性のある機能追加もどんどんダウンロードする 下位互換性のあるバグ修正だけダウンロードする
55.
完全密着 semver 警察24時
56.
https://github.com/jashkenas/underscore/issues/1684
57.
https://github.com/jashkenas/underscore/issues/1805
58.
https://github.com/mozilla/source-map/issues/99
59.
semver に 従わないと燃える 🔥 🔥
🔥 🔥 🔥 semver 警察24時
60.
見出し http://book.impress.co.jp/books/1113101014 では下位互換性とは何か
61.
三つの下位互換性 •ソース互換性 •バイナリ互換性 •機能互換性
62.
機能互換性: アメーバ効果
63.
| Q |
A | ------------- | --- | Bug fix? | [yes|no] | New feature? | [yes|no] | BC breaks? | [yes|no] | Deprecations? | [yes|no] | Tests pass? | [yes|no] | Fixed tickets | [tickets fixed by the PR] | License | MIT | Doc PR | [ref to the documentation PR if any] Symfony の PR 形式が る http://symfony.com/doc/master/contributing/code/patches.html#make-a-pull-request
64.
semver 過激派 1 commit,
1 release
65.
ご清聴ありがとうございました
Download