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
ペアプロしようぜ 〜3人で登壇!? 楽しくて速いペアプロ/モブプロ開発〜/pair-mob-p...
Search
masuyama13
October 28, 2023
Programming
2
4k
ペアプロしようぜ 〜3人で登壇!? 楽しくて速いペアプロ/モブプロ開発〜/pair-mob-programming-kaigi-on-rails-2023
masuyama13
October 28, 2023
Tweet
Share
More Decks by masuyama13
See All by masuyama13
ペアプロ開発をスムーズに進めるための Tips/pair-programming-tips-20221009
masuyama13
1
1.6k
今度こそ理解する/git-reset-200822
masuyama13
0
2k
Ruby クラスは「製造機」/fjordbootcamp-200627
masuyama13
2
1.5k
Other Decks in Programming
See All in Programming
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
140
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
550
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
3
4.2k
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
時計仕掛けのCompose
mkeeda
1
290
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
120
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
もう僕は OpenAPI を書きたくない
sgash708
3
990
Rails アプリ地図考 Flush Cut
makicamel
1
110
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
530
Open source software: how to live long and go far
gaelvaroquaux
0
630
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
It's Worth the Effort
3n
184
28k
Code Reviewing Like a Champion
maltzj
521
39k
Designing for Performance
lara
604
68k
Git: the NoSQL Database
bkeepers
PRO
427
64k
How STYLIGHT went responsive
nonsquared
98
5.4k
Music & Morning Musume
bryan
46
6.3k
Optimizing for Happiness
mojombo
376
70k
Facilitating Awesome Meetings
lara
51
6.2k
Documentation Writing (for coders)
carmenintech
67
4.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
Kaigi on Rails 2023 ペアプロしようぜ 3人で登壇!? 楽しくて速いペアプロ/モブプロ開発
masuyama13 eatplaynap (トミー) あんすと
None
動画マニュアルを かんたんに作成・管理
ペア/モブプロを したことがある ✋
ペア/モブプロが メインの体制で 開発したことがある✋
ペア/モブプロ ペア/モブプロがメイン
None
• ペア/モブプロの 良さがわかる このセッションに参加すると…? • ペア/モブプロの 本格的なやり方が わかる
発表 ライブコーディング
これが真の ペア/モブプロだ! おことわり 私たちのチームで うまくいっている方法 • 再現性はあります
ペアプロの研究データ
フィードバックの タイミングと 修正コストの関係 出典: http://www.ambysoft.com/ essays/whyAgileWorksFeedback.html
フィードバックの タイミングと 修正コストの関係 ペアプログラミングによる プログラミングの欠陥の発見 レビューまたは検査に よる欠陥の発見 フィードバックサイクル
修 正 コ ス ト 出典: http://www.ambysoft.com/ essays/whyAgileWorksFeedback.html
ソロプロ vs ペアプロ 開発時間: 15% 増 不具合: 15% 減 (テストケースの通過率)
出典: The Costs and Benefits of Pair Programming (Alistair Cockburn, 2009)
ペア +15% 課題に要したコーディング時間 出典: The Costs and Benefits of Pair
Programming (Alistair Cockburn, 2009) ソロ
ソロ ペア +15% 出典: The Costs and Benefits of Pair
Programming (Alistair Cockburn, 2009) 2.3 倍 課題に要したコーディング時間
ソロ ペア +15% 出典: The Costs and Benefits of Pair
Programming (Alistair Cockburn, 2009) 課題に要したコーディング時間 レビュー レビュー対応 修正 手戻り 不具合対応
ペアプロで 増える 開発コスト 出典: The Costs and Benefits of Pair
Programming (Alistair Cockburn, 2009) ペアプロで 減らせる 修正コスト <
我々を 蝕んでいた 課題 プロブレム
第1位 ??? 第2位 ??? 第3位 新メンバーが キャッチアップしにくい ソロプロ ツラかったランキング
第1位 ??? 第2位 属人化 第3位 新メンバーが キャッチアップしにくい ソロプロ ツラかったランキング
第1位 ??? 第2位 属人化 第3位 新メンバーが キャッチアップしにくい ソロプロ ツラかったランキング
None
None
第1位 終わらない、レビュー。 レビュー依頼〜マージが2日以上
ペア/モブプロの 課題と対策
1. 始め方が 分からない
Slack で画面共有 • ハドルミーティング • ペンツールで指示しやすい • 自分のエディタ/キーボードを 使える
2. 迷走しがち
• 5〜10分程度 開始前に 方針を書き出す
3. 疲労コンパイルエラー
こまめに休憩 • 目安 ◦ 1時間ペアプロ ◦ → 10分休憩 • 割とすぐ慣れる
4. ずっと俺のターン
時間で区切る • タイマーを使う ◦ 15〜20分で交代 • キリが悪くても、tmp コミットを積んで交代
5. ドライバーが全部やってしまう
実況中継?
None
ドライバー? タイピスト
タイピスト ナビ 役割を守る
ペア/モブプロ 開発の成果
第1位 終わらない、レビュー。 第2位 属人化 第3位 新メンバーが キャッチアップしにくい ソロプロ ツラかったランキング
属人化が減った 新メンバーの キャッチアップが 早くなった
第1位 終わらない、レビュー。 第2位 属人化 第3位 新メンバーが キャッチアップしにくい ソロプロ ツラかったランキング
レビュー依頼〜マージが30分以内に!
実際の様子は?
LIVE モブプロ
題材 (https://bootcamp.fjord.jp/)
(https://bootcamp.fjord.jp/)
• 高速な フィードバックサイクル • 属人化の防止 ペア/モブプロ開発のメリット • 新メンバーの キャッチアップ速度向上
こまめに休憩 短時間で交代 ペア/モブプロ実践 TIPS 開始前に 方針を書き出す タイピスト/ナビ ナビが進行、 タイピストはナビの手
そして…
ペアプロは 楽しい
ご清聴ありがとうございました ほぼ全部ペアプロ開発