Slide 1

Slide 1 text

ソースコードリーディングの ススメ PHPerKaigi 2019 LT 大津 和槻 / 02

Slide 2

Slide 2 text

Who am I ? 大津 和槻 / 02 株式会社ウィルゲート 新卒1 年目エンジニア 今日は当日スタッフとしても参加していました

Slide 3

Slide 3 text

僕も PHP の話ほとんどしません! みんな謝ってるから謝っとこ

Slide 4

Slide 4 text

結論「ソースコードリーディングは、 アウトプットするチャンスの塊」

Slide 5

Slide 5 text

ソースコードリーディング? 今回話すソースコードリーディングは主にライブラリ やフレームワークのソースコードを読むこと ライブラリやフレームワークのソースコードを読むと 様々なアウトプットに繋げやすい

Slide 6

Slide 6 text

こんな人にオススメです

Slide 7

Slide 7 text

うわっ… 私のアウトプット、少なすぎ?

Slide 8

Slide 8 text

今日話すこと ソースコードリーディングのメリット ソースコードリーディングで繋げられるアウトプ ット 今日話さないこと ソースコードリーディングのやり方

Slide 9

Slide 9 text

メリットと繋げられるアウトプット プロダクトコードを読み解くスピードが上がる ブログに書くネタができる OSS に参加できる 登壇できる

Slide 10

Slide 10 text

プロダクトコードを読み解く スピードが上がる

Slide 11

Slide 11 text

プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む

Slide 12

Slide 12 text

プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード

Slide 13

Slide 13 text

プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード スムーズにソースコードリーディングができる ≒ 他人が書いたコードであるプロダクトコードもスム ーズに読める

Slide 14

Slide 14 text

ブログに書くネタができる

Slide 15

Slide 15 text

ブログに書くネタができる よくある悩み

Slide 16

Slide 16 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」

Slide 17

Slide 17 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」

Slide 18

Slide 18 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」

Slide 19

Slide 19 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」

Slide 20

Slide 20 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」

Slide 21

Slide 21 text

ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無 い!!!!!!」

Slide 22

Slide 22 text

提案: 1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く

Slide 23

Slide 23 text

1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず

Slide 24

Slide 24 text

1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず 1 メソッドだけのまとめでも、価値がある 設計、言語仕様、思想、罠…

Slide 25

Slide 25 text

Laravel Collection avg メソッド ドキュメント: https://readouble.com/laravel/5.8/ja/collections.htm l#method-avg

Slide 26

Slide 26 text

http://cocoeyes02.hatenadiary.jp/entry/2019/02/28 /214952

Slide 27

Slide 27 text

OSS に参加できる

Slide 28

Slide 28 text

OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」

Slide 29

Slide 29 text

OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」 OSS に参加するのに、そんな難しいことをする 必要はありません!

Slide 30

Slide 30 text

提案: ソースコードを読んで 疑問に思ったことを issue で聞く

Slide 31

Slide 31 text

ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」

Slide 32

Slide 32 text

ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる

Slide 33

Slide 33 text

ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる 仕様であっても、何故その実装になったのか 思想に基づいた理由を Committer や Contributer が教えてくれる

Slide 34

Slide 34 text

ソースコードを読んで 疑問に思ったことを issue で聞く issue や pull request は contribution にもなるので、 草を生やしたい人にもおすすめ

Slide 35

Slide 35 text

登壇できる

Slide 36

Slide 36 text

実は皆さんも知っているあの有名な カンファレンスに登壇できました

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

この PHPerKaigi で 登壇できたのは ソースコードリーディングのおかげ!

Slide 39

Slide 39 text

最後に1 番言いたいこと

Slide 40

Slide 40 text

ソースコードリーディングはいいぞ!

Slide 41

Slide 41 text

< Thank you for listening! Twitter: cocoeyes02 GitHub: cocoeyes02