Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ソースコードリーディングのススメ / SourceCodeReading of Recomme...
Search
02
March 31, 2019
Programming
4.3k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ソースコードリーディングのススメ / SourceCodeReading of Recommendation
ソースコードリーディングのススメ
PHPerKaigi 2019 Lightning Talk で話した時のスライドです
02
March 31, 2019
More Decks by 02
See All by 02
なぜarray_firstとarray_lastは採用、 array_value_firstとarray_value_lastは 見送りだったか / Why array_value_first and array_value_last was declined, then why array_first and array_last was accpeted?
cocoeyes02
0
600
Amazon ECS Managed Instances が リリースされた!キャッチアップしよう!! / Let's catch up Amazon ECS Managed Instances
cocoeyes02
0
560
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
2.1k
PHP8.4におけるJITフレームワークIRと中間表現について理解を深める
cocoeyes02
1
1.4k
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
1.5k
PHP RFC: Deprecate implicitly nullable parameter types をサクッと話す
cocoeyes02
0
1.1k
PHPUnit 11 概論
cocoeyes02
5
4k
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
1
1.5k
BASEにおける インシデント対応フローと工夫
cocoeyes02
0
1.3k
Other Decks in Programming
See All in Programming
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.6k
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
370
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
30
13k
The Rails Doctrine Decade
koic
2
440
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
180
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
1k
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
250
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
370
mrbgem 三角測量 開発
ogom
0
160
JRuby: Past, Present, and Future
headius
0
210
setup-vp GitLab対応の裏側
naokihaba
0
140
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
150
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
590
My Coaching Mixtape
mlcsv
0
330
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Google's AI Overviews - The New Search
badams
0
1.6k
A better future with KSS
kneath
240
18k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
750
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Building the Perfect Custom Keyboard
takai
2
890
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
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