新卒2年目が
Laravelコントリビュート出来た理由と
その面白さ
小畑 昌紀
はじめにお伝えすることが!
【アウトプット推奨】�全力で呟いてください(๑•̀ㅂ•́)و✧
#laraveljpcon3F�(ららべる じぇーぴーこん さんえふ)
1. コントリビュートなにそれ?
2. コントリビュートとか
やばい人がやることじゃね?
このスライドが解決する(したい)こと
1. コントリビュートは謎の存在
2. コントリビュートの流れ
私もできるかもしれない
コントリビュート面白そう!
目次
1. コントリビュートの知らないを解決
2. 慣れ・成長の話
3. 自己紹介
コントリビュートとは
『貢献』� ・ドキュメント翻訳とかでもコントリビュート
・issue (提案ボックス)
・pull request (コード作ったよ!)�
コントリビュートの話の前にー
問題です!!!
User::select('*')
->orderBy('id', 'ascc')
->get();
この誤字をしているコード�どうなるでしょう?
User::select('*')
->orderBy('id', 'ascc')
->get();
1. エラー
2. asc
3. desc
■ソース元:
https://twitter.com/nyamucoro/status/1072157423580762112
User::select('*')
->orderBy('id', 'desc')
->get();
1. エラー
2. asc
3. desc
Illuminate/Database/Query/Builder.php
Illuminate/Database/Query/Builder.php
'asc','Asc','asC'とか以外、全部『desc』
小文字にする
’asc’か
エラーにしたい・・・
それを実行した人たち�それがコントリビューター!
友人もコントリビュートしました
・次回のLaravel 5.8でお披露目
・友人は『新卒1年目』�
・私よりわかりやすいので、
友人O君の話をします!
友人O君の�サクセスストーリーを
私が勝手に話します!
(本当は許可もらってます)
O君の流れ
・発見(私)
・issue(O君)
・pull request(O君)�
発見編(私)
1.仕事でプルリク見る
2.誤字発見(dsc)・でも動く!?
3.Laravelの元コード見て発見
どうやって元コード読むの?
どうやって元コード読むの?
■一撃で見つける方法があります
■検索:『半角スペース』 + 関数名 +『(』
バグや仕様の疑問探すの
大変じゃない?
issue編
バグや仕様の疑問探すの
大変じゃない?
・issue見れば、いろいろある
issue編
・中学英語
PHPという言語で私達は話している
■ソース元:
https://github.com/laravel/ideas/issues/1434
issue編
・『いいねそれ!』
・『こうすればいい?』
・『SQLインジェクション怖くない?』
■ソース元:
https://github.com/laravel/ideas/issues/1434
やばいエンジニアが味方にいる!
pull request編
コード書き換えるって大変じゃない?
pull request編
コード書き換えるって大変じゃない?
・一ヶ月とかかかる話じゃない
・(テストコードは必須)
pull request編
■ソース元:
https://github.com/laravel/framework/pull/27029
if文でエラーが増えました!
■ソース元:
https://github.com/laravel/framework/pull/27029/commits/8e16035dcfd33baaed225f5f25c5b9f789793c8b
私のプルリクの場合
■ソース元:
https://github.com/laravel/framework/pull/25492/files?utf8=%E2%9C%93&diff=unified
・記述量はそんな多くない
pull request編
レビューがもらえる!!!
最初から100%じゃなくていい!
■ソース元:
https://github.com/laravel/framework/pull/27029/files
pull request編
レビューがもらえる!!!
最初から100%じゃなくていい!
OSSはみんなで作る!
■ソース元:
https://github.com/laravel/framework/pull/27029/files
■ソース元:
https://github.com/laravel/framework/commit/08ee734971faf758f7413a4ff0d33a7454458063
闇の力ってすごい
■ソース元:
https://github.com/laravel/framework/commit/08ee734971faf758f7413a4ff0d33a7454458063
みんな助けてくれる!
貴重な経験になる!
マージされました!
コントリビュートは
謎の存在じゃない
1ヶ月とかかかるものじゃない
Q.コントリビュート意味ある??
・私が今、ここにいます!
・自信得る+一目置かれたり!
・めっちゃ楽しい!
当選発表みたい!
毎回コード読むって大変?
毎回コード読むって大変?
・慣れ・・・
どうやったら、�元コードを読むエンジニアになる?
(成長・慣れの話)
2. 元コードを読む
めんどくさい�公式ドキュメント難しそう
■上司・つよつよえんじにゃー
・理解せず(コピペ)コード書くとバグや障害困る…
・いい感じに成長してほしい
■初心者えんじにゃー
・1日8時間の内半分くらい勉強になる
・お金もらって勉強�
公式ドキュメント読まない�理由ある?
■検索: ctrl+f (command+f)
■検索:『半角スペース』 + 関数名 +『(』
私みたいな新人の方へ
■公式ドキュメントを読む癖!�■元コードを読む!
・vendor/laravel/...
・GitHub�
�不安なら、この後30分の時間・懇親会で会いに来てください!
教える立場の方へ
■最初は一緒に公式ドキュメントを見る
・調べる → わかる (成功体験)
■IDE・プラグインマシマシエディタ�・メソッドジャンプ一緒に使う (成功体験)�
私の場合
■半年使って、メソッドジャンプを覚える (その後VSCodeに戻る)
自己紹介
小畑 昌紀(おばた まさき・ういろう)
■新卒2年目エンジニア �PHP歴 1.5年・大学でJava(不真面目学生)�
�■ブログ毎日更新 (500記事超え)�・エンジニアのひよこ_level10 �https://www.nyamucoro.com/��
自己紹介
小畑 昌紀(おばた まさき・ういろう)
■新卒2年目エンジニア �PHP歴 1.5年・大学でJava(不真面目学生)�
�■ブログ毎日更新 (500記事超え)�・エンジニアのひよこ_level10 �https://www.nyamucoro.com/��
自己紹介
Twitter(@nyamucoro)や懇親会で�仲間・お友達になりましょう!
ありがとうございました!
■画像素材
・いらすとや�https://www.irasutoya.com/