1 of 63

新卒2年目が

Laravelコントリビュート出来た理由と

その面白さ

小畑 昌紀

2 of 63

はじめにお伝えすることが!

3 of 63

【アウトプット推奨】全力で呟いてください(๑•̀ㅂ•́)و✧

#laraveljpcon3F(ららべる じぇーぴーこん さんえふ)

4 of 63

5 of 63

1. コントリビュートなにそれ?

2. コントリビュートとか

 やばい人がやることじゃね?

6 of 63

7 of 63

8 of 63

9 of 63

このスライドが解決する(したい)こと

1. コントリビュートは謎の存在

2. コントリビュートの流れ

10 of 63

私もできるかもしれない

コントリビュート面白そう!

11 of 63

目次

1. コントリビュートの知らないを解決

2. 慣れ・成長の話

3. 自己紹介

12 of 63

コントリビュートとは

『貢献』� ・ドキュメント翻訳とかでもコントリビュート

 ・issue     (提案ボックス)

 ・pull request (コード作ったよ!)�

13 of 63

コントリビュートの話の前にー

14 of 63

問題です!!!

15 of 63

User::select('*')

->orderBy('id', 'ascc')

->get();

この誤字をしているコード�どうなるでしょう?

16 of 63

User::select('*')

->orderBy('id', 'ascc')

->get();

1. エラー

2. asc

3. desc

17 of 63

■ソース元:

https://twitter.com/nyamucoro/status/1072157423580762112

18 of 63

User::select('*')

->orderBy('id', 'desc')

->get();

1. エラー

2. asc

3. desc

19 of 63

Illuminate/Database/Query/Builder.php

20 of 63

Illuminate/Database/Query/Builder.php

'asc','Asc','asC'とか以外、全部『desc

小文字にする

’asc’か

21 of 63

22 of 63

エラーにしたい・・・

23 of 63

それを実行した人たち�それがコントリビューター!

24 of 63

友人もコントリビュートしました

・次回のLaravel 5.8でお披露目

・友人は『新卒1年目』

・私よりわかりやすいので、

 友人O君の話をします!

25 of 63

友人O君の�サクセスストーリーを

私が勝手に話します!

(本当は許可もらってます)

26 of 63

O君の流れ

 ・発見(私)

 ・issue(O君)

 ・pull request(O君)

27 of 63

発見編(私)

1.仕事でプルリク見る

2.誤字発見(dsc)・でも動く!?

3.Laravelの元コード見て発見

28 of 63

どうやって元コード読むの?

29 of 63

どうやって元コード読むの?

■一撃で見つける方法があります

30 of 63

■検索:『半角スペース』 + 関数名 +『(』

31 of 63

バグや仕様の疑問探すの

大変じゃない?

32 of 63

issue編

バグや仕様の疑問探すの

大変じゃない?

issue見れば、いろいろある

33 of 63

issue編

・中学英語

PHPという言語で私達は話している

■ソース元:

https://github.com/laravel/ideas/issues/1434

34 of 63

issue編

・『いいねそれ!』

・『こうすればいい?』

・『SQLインジェクション怖くない?』

■ソース元:

https://github.com/laravel/ideas/issues/1434

35 of 63

やばいエンジニアが味方にいる!

36 of 63

pull request編

コード書き換えるって大変じゃない?

37 of 63

pull request編

コード書き換えるって大変じゃない?

・一ヶ月とかかかる話じゃない

・(テストコードは必須)

38 of 63

pull request編

■ソース元:

https://github.com/laravel/framework/pull/27029

39 of 63

if文でエラーが増えました!

■ソース元:

https://github.com/laravel/framework/pull/27029/commits/8e16035dcfd33baaed225f5f25c5b9f789793c8b

40 of 63

私のプルリクの場合

■ソース元:

https://github.com/laravel/framework/pull/25492/files?utf8=%E2%9C%93&diff=unified

記述量はそんな多くない

41 of 63

pull request編

レビューがもらえる!!!

最初から100%じゃなくていい!

■ソース元:

https://github.com/laravel/framework/pull/27029/files

42 of 63

pull request編

レビューがもらえる!!!

最初から100%じゃなくていい!

OSSはみんなで作る!

■ソース元:

https://github.com/laravel/framework/pull/27029/files

43 of 63

■ソース元:

https://github.com/laravel/framework/commit/08ee734971faf758f7413a4ff0d33a7454458063

44 of 63

闇の力ってすごい

■ソース元:

https://github.com/laravel/framework/commit/08ee734971faf758f7413a4ff0d33a7454458063

45 of 63

みんな助けてくれる!

貴重な経験になる!

46 of 63

マージされました!

47 of 63

コントリビュートは

謎の存在じゃない

1ヶ月とかかかるものじゃない

48 of 63

Q.コントリビュート意味ある??

・私が今、ここにいます!

・自信得る+一目置かれたり!

・めっちゃ楽しい

 当選発表みたい!

49 of 63

毎回コード読むって大変?

50 of 63

毎回コード読むって大変?

・慣れ・・・

51 of 63

どうやったら、�元コードを読むエンジニアになる?

(成長・慣れの話)

52 of 63

  1. 公式ドキュメントを読む

2. 元コードを読む

53 of 63

めんどくさい�公式ドキュメント難しそう

54 of 63

■上司・つよつよえんじにゃー

・理解せず(コピペ)コード書くとバグや障害困る…

・いい感じに成長してほしい

■初心者えんじにゃー

・1日8時間の内半分くらい勉強になる

・お金もらって勉強�

55 of 63

公式ドキュメント読まない�理由ある?

56 of 63

■検索: ctrl+f (command+f)

■検索:『半角スペース』 + 関数名 +『(』

57 of 63

私みたいな新人の方へ

公式ドキュメントを読む癖!�■元コードを読む!

 ・vendor/laravel/...

 ・GitHub�

�不安なら、この後30分の時間・懇親会で会いに来てください!

58 of 63

教える立場の方へ

■最初は一緒に公式ドキュメントを見る

 ・調べる → わかる (成功体験)

■IDE・プラグインマシマシエディタ�・メソッドジャンプ一緒に使う (成功体験)�

59 of 63

私の場合

  1. 先輩 <公式ドキュメント全部読め!』�■数章読んだけど、諦めた (でも壁は取れた)�

  • 先輩 <『intelliJ(IDE)使え!会社が買うから使え!』

  ■半年使って、メソッドジャンプを覚える (その後VSCodeに戻る)

60 of 63

自己紹介

小畑 昌紀(おばた まさき・ういろう)

■新卒2年目エンジニア �PHP歴 1.5年・大学でJava(不真面目学生)�

■ブログ毎日更新 (500記事超え)�・エンジニアのひよこ_level10 �https://www.nyamucoro.com/��

61 of 63

自己紹介

小畑 昌紀(おばた まさき・ういろう)

■新卒2年目エンジニア �PHP歴 1.5年・大学でJava(不真面目学生)�

■ブログ毎日更新 (500記事超え)�・エンジニアのひよこ_level10 �https://www.nyamucoro.com/��

62 of 63

自己紹介

Twitter(@nyamucoro)や懇親会で�仲間・お友達になりましょう!

ありがとうございました!

■画像素材

・いらすとや�https://www.irasutoya.com/

63 of 63