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
ソースコードリーディングのススメ / SourceCodeReading of Recomme...
Search
02
March 31, 2019
Programming
2
3.7k
ソースコードリーディングのススメ / SourceCodeReading of Recommendation
ソースコードリーディングのススメ
PHPerKaigi 2019 Lightning Talk で話した時のスライドです
02
March 31, 2019
Tweet
Share
More Decks by 02
See All by 02
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
650
PHP8.4におけるJITフレームワークIRと中間表現について理解を深める
cocoeyes02
1
950
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
910
PHP RFC: Deprecate implicitly nullable parameter types をサクッと話す
cocoeyes02
0
800
PHPUnit 11 概論
cocoeyes02
5
2.5k
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
1
1.1k
BASEにおける インシデント対応フローと工夫
cocoeyes02
0
1.2k
AWS Lambdaから始める Devチームの小さなDevOps改善 〜QCDどれも諦めない運用を目指して〜 / Start to improving small DevOps with AWS Lambda by Dev Team
cocoeyes02
0
1.4k
PHPUnit 10 概論 / Introduction of PHPUnit 10
cocoeyes02
3
10k
Other Decks in Programming
See All in Programming
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
0
180
decksh - a little language for decks
ajstarks
4
21k
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
410
Quality Gates in the Age of Agentic Coding
helmedeiros
PRO
1
120
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
520
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
240
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
170
Infer入門
riru
4
590
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
250
リッチエディターを安全に開発・運用するために
unachang113
1
360
ワープロって実は計算機で
pepepper
2
940
Flutterと Vibe Coding で個人開発!
hyshu
1
230
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
Automating Front-end Workflow
addyosmani
1370
200k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Site-Speed That Sticks
csswizardry
10
750
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
ソースコードリーディングの ススメ PHPerKaigi 2019 LT 大津 和槻 / 02
Who am I ? 大津 和槻 / 02 株式会社ウィルゲート 新卒1
年目エンジニア 今日は当日スタッフとしても参加していました
僕も PHP の話ほとんどしません! みんな謝ってるから謝っとこ
結論「ソースコードリーディングは、 アウトプットするチャンスの塊」
ソースコードリーディング? 今回話すソースコードリーディングは主にライブラリ やフレームワークのソースコードを読むこと ライブラリやフレームワークのソースコードを読むと 様々なアウトプットに繋げやすい
こんな人にオススメです
うわっ… 私のアウトプット、少なすぎ?
今日話すこと ソースコードリーディングのメリット ソースコードリーディングで繋げられるアウトプ ット 今日話さないこと ソースコードリーディングのやり方
メリットと繋げられるアウトプット プロダクトコードを読み解くスピードが上がる ブログに書くネタができる OSS に参加できる 登壇できる
プロダクトコードを読み解く スピードが上がる
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード
プロダクトコードを読み解くスピード が上がる ソースコードリーディング ≒ 他人(過去の自分も含む)が書いたコードを読む ところで、 業務で触るプロダクトコードも、他人が書いたコード スムーズにソースコードリーディングができる ≒ 他人が書いたコードであるプロダクトコードもスム
ーズに読める
ブログに書くネタができる
ブログに書くネタができる よくある悩み
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」
ブログに書くネタができる よくある悩み 「ブログに書けるネタが無い!」 「他の人が既に書いている内容かもしれないし… 」 「そんなに価値のある記事を量産できないよ… 」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無い!」 「ブログに書けるネタが無
い!!!!!!」
提案: 1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く
1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず
1 つのメソッドを読んで、どんな処理 なのかをまとめてブログに書く メソッドの数だけブログ記事が書ける かぶることはほぼない!はず 1 メソッドだけのまとめでも、価値がある 設計、言語仕様、思想、罠…
Laravel Collection avg メソッド ドキュメント: https://readouble.com/laravel/5.8/ja/collections.htm l#method-avg
http://cocoeyes02.hatenadiary.jp/entry/2019/02/28 /214952
OSS に参加できる
OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」
OSS に参加できる 「そんな強強エンジニアじゃないから、いきなり OSS なんて無理だよ~~~」 OSS に参加するのに、そんな難しいことをする 必要はありません!
提案: ソースコードを読んで 疑問に思ったことを issue で聞く
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる
ソースコードを読んで 疑問に思ったことを issue で聞く 「ここの処理なんでこんな風になっているかわか らんのだけど、どう思う?」 もしバグや改善すべき箇所だったら、pull request が立てられる 仕様であっても、何故その実装になったのか
思想に基づいた理由を Committer や Contributer が教えてくれる
ソースコードを読んで 疑問に思ったことを issue で聞く issue や pull request は contribution
にもなるので、 草を生やしたい人にもおすすめ
登壇できる
実は皆さんも知っているあの有名な カンファレンスに登壇できました
None
この PHPerKaigi で 登壇できたのは ソースコードリーディングのおかげ!
最後に1 番言いたいこと
ソースコードリーディングはいいぞ!
< Thank you for listening! Twitter: cocoeyes02 GitHub: cocoeyes02