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
Unity Android XR入門
sakutama_11
0
150
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
240
Ruby on cygwin 2025-02
fd0
0
140
技術を根付かせる / How to make technology take root
kubode
1
240
GoとPHPのインターフェイスの違い
shimabox
2
170
sappoRo.R #12 初心者セッション
kosugitti
0
240
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
1
180
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
220
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
490
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
150
SpringBoot3.4の構造化ログ #kanjava
irof
2
980
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
550
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Gamification - CAS2011
davidbonilla
80
5.1k
Thoughts on Productivity
jonyablonski
69
4.5k
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 開始前に 方針を書き出す タイピスト/ナビ ナビが進行、 タイピストはナビの手
そして…
ペアプロは 楽しい
ご清聴ありがとうございました ほぼ全部ペアプロ開発