Slide 1

Slide 1 text

Kaigi on Rails 2023 ペアプロしようぜ 3人で登壇!? 楽しくて速いペアプロ/モブプロ開発

Slide 2

Slide 2 text

masuyama13 eatplaynap (トミー) あんすと

Slide 3

Slide 3 text

No content

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

No content

Slide 9

Slide 9 text

● ペア/モブプロの 良さがわかる このセッションに参加すると…? ● ペア/モブプロの 本格的なやり方が わかる

Slide 10

Slide 10 text

発表 ライブコーディング

Slide 11

Slide 11 text

これが真の ペア/モブプロだ! おことわり 私たちのチームで うまくいっている方法 ● 再現性はあります

Slide 12

Slide 12 text

ペアプロの研究データ

Slide 13

Slide 13 text

フィードバックの タイミングと 修正コストの関係 出典: http://www.ambysoft.com/ essays/whyAgileWorksFeedback.html

Slide 14

Slide 14 text

フィードバックの タイミングと 修正コストの関係 ペアプログラミングによる プログラミングの欠陥の発見 レビューまたは検査に よる欠陥の発見   フィードバックサイクル   修 正 コ ス ト 出典: http://www.ambysoft.com/ essays/whyAgileWorksFeedback.html

Slide 15

Slide 15 text

ソロプロ vs ペアプロ 開発時間: 15% 増 不具合: 15% 減 (テストケースの通過率) 
 出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009)

Slide 16

Slide 16 text

ペア +15% 課題に要したコーディング時間 出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009) ソロ

Slide 17

Slide 17 text

ソロ ペア +15% 出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009) 2.3 倍 課題に要したコーディング時間

Slide 18

Slide 18 text

ソロ ペア +15% 出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009) 課題に要したコーディング時間 レビュー レビュー対応 修正 手戻り 不具合対応

Slide 19

Slide 19 text

ペアプロで 増える 開発コスト 出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009) ペアプロで 減らせる 修正コスト <

Slide 20

Slide 20 text

我々を 蝕んでいた 課題 プロブレム

Slide 21

Slide 21 text

第1位 ??? 第2位 ??? 第3位 新メンバーが     キャッチアップしにくい ソロプロ ツラかったランキング

Slide 22

Slide 22 text

第1位 ??? 第2位 属人化 第3位 新メンバーが     キャッチアップしにくい ソロプロ ツラかったランキング

Slide 23

Slide 23 text

第1位 ??? 第2位 属人化 第3位 新メンバーが     キャッチアップしにくい ソロプロ ツラかったランキング

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

第1位 終わらない、レビュー。 レビュー依頼〜マージが2日以上

Slide 27

Slide 27 text

ペア/モブプロの 課題と対策

Slide 28

Slide 28 text

1. 始め方が 分からない

Slide 29

Slide 29 text

Slack で画面共有 ● ハドルミーティング ● ペンツールで指示しやすい ● 自分のエディタ/キーボードを 使える

Slide 30

Slide 30 text

2. 迷走しがち

Slide 31

Slide 31 text

● 5〜10分程度 開始前に 方針を書き出す

Slide 32

Slide 32 text

3. 疲労コンパイルエラー

Slide 33

Slide 33 text

こまめに休憩 ● 目安 ○ 1時間ペアプロ ○ → 10分休憩 ● 割とすぐ慣れる

Slide 34

Slide 34 text

4. ずっと俺のターン

Slide 35

Slide 35 text

時間で区切る ● タイマーを使う ○ 15〜20分で交代 ● キリが悪くても、tmp コミットを積んで交代

Slide 36

Slide 36 text

5. ドライバーが全部やってしまう

Slide 37

Slide 37 text

実況中継?

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

ドライバー? タイピスト

Slide 40

Slide 40 text

タイピスト ナビ 役割を守る

Slide 41

Slide 41 text

ペア/モブプロ 開発の成果

Slide 42

Slide 42 text

第1位 終わらない、レビュー。 第2位 属人化 第3位 新メンバーが     キャッチアップしにくい ソロプロ ツラかったランキング

Slide 43

Slide 43 text

属人化が減った 新メンバーの キャッチアップが 早くなった

Slide 44

Slide 44 text

第1位 終わらない、レビュー。 第2位 属人化 第3位 新メンバーが     キャッチアップしにくい ソロプロ ツラかったランキング

Slide 45

Slide 45 text

レビュー依頼〜マージが30分以内に!

Slide 46

Slide 46 text

実際の様子は?

Slide 47

Slide 47 text

LIVE モブプロ

Slide 48

Slide 48 text

題材 (https://bootcamp.fjord.jp/)

Slide 49

Slide 49 text

(https://bootcamp.fjord.jp/)

Slide 50

Slide 50 text

● 高速な フィードバックサイクル ● 属人化の防止 ペア/モブプロ開発のメリット ● 新メンバーの キャッチアップ速度向上

Slide 51

Slide 51 text

こまめに休憩 短時間で交代 ペア/モブプロ実践 TIPS 開始前に 方針を書き出す タイピスト/ナビ ナビが進行、 タイピストはナビの手

Slide 52

Slide 52 text

そして…

Slide 53

Slide 53 text

ペアプロは 楽しい

Slide 54

Slide 54 text

ご清聴ありがとうございました ほぼ全部ペアプロ開発