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
ペアプロってどうなの?
Search
Hiroki Yoshioka
February 01, 2019
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ペアプロってどうなの?
Pull Requestでしか開発したことがない人向けの、ペアプロの良し悪しが分かる資料。
Hiroki Yoshioka
February 01, 2019
More Decks by Hiroki Yoshioka
See All by Hiroki Yoshioka
RubyとPythonはどちらが速いのか
irohiroki
0
210
スクラムマスターは何をすべきか
irohiroki
1
680
高階関数みたいな鳥たちの森
irohiroki
0
160
Pattern Language for Rubyists (Rev.2)
irohiroki
1
400
The Most Beautiful Vagrant Box
irohiroki
1
250
ドメイン駆動設計ワークショップ in KRAY
irohiroki
1
350
Gitはなぜ難しいのか
irohiroki
4
25k
Github APIを叩いて分かったこと
irohiroki
1
710
The Metric Talks or Not
irohiroki
2
1.1k
Other Decks in Programming
See All in Programming
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.5k
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
150
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
170
仕様駆動開発の消費期限
watany
17
7.4k
yield再入門 #phpcon
o0h
PRO
0
990
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
740
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.1k
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
210
Go 1.27 における memory allocation の高速化
andpad
0
120
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
480
Joys of Absence: A Defence of Solitary Play
codingconduct
1
430
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.7k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
530
What's in a price? How to price your products and services
michaelherold
247
13k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
890
エンジニアに許された特別な時間の終わり
watany
108
250k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
sira's awesome portfolio website redesign presentation
elsirapls
0
320
Transcript
Copyright Drecom Co., Ltd. All Rights Reserved. !1 ϖΞϓϩͬͯͲ͏ͳͷʁ 吉岡ひろき(@irohiroki)
2019-02-01
Copyright Drecom Co., Ltd. All Rights Reserved. Pull Requestの欠点 コンテキスト伝達のコスト
ཁ݅ɾ༷ ղܾํ๏ ͳͥ͜͏ͳ͍ͬͯΔͷ͔ レビューコメントを書くコスト ཧ༝ ସҊ ૬खͷྀ レビュー待ち ϚϧνλεΫʹΑΔޮԼ ϦʔυλΠϜͷѱԽ !2 എܠ
Copyright Drecom Co., Ltd. All Rights Reserved. 2人で 1つの画面を見ながら 1人がドライバー(コードを書く/コマンドを実行する)
1人がナビゲーター(レビュー/作業の順番を考える) 状況に応じて交代 Pull Requestは簡略に !3 ϖΞϓϩ
Copyright Drecom Co., Ltd. All Rights Reserved. 即時コードレビュー/ダブルチェック ϛεͷൃݟ͕ૣ͍ˠखΓ͕গͳ͍ トラックナンバー
+1 ยํ͕ٳΜͰӨڹ͕খ͍͞ フロー効率 ݸʑͷࣄ͕ૣ͘ऴΔ !4 ͳͥ̎ਓͰʁ
Copyright Drecom Co., Ltd. All Rights Reserved. 平行して2つの仕事 ペアで1つずつ !5
ϑϩʔޮ έϯτ Υʔυ έϯτ Υʔυ Ըܙ Ըܙ Ըܙ Ըܙ
Copyright Drecom Co., Ltd. All Rights Reserved. ミスを笑える ͪΐͬͱͨ͠ϛε͕͋ͬͨͱ͖স͑ΔɻετϨε͕ܰݮɻ 心理的負担の軽減
̎ਓͰ୲ 決定の迅速化 ઃܭωʔϛϯάɻ̎ਓ͕߹ҙͰ͖ΕຆͲͷ߹ʹͳ͍ 知識とテクニックの伝搬 Βͳ͔ͬͨϝιουɺγϣʔτΧοτɺΦϓγϣϯʜ 集中できる ૬खΛͨͤͳ͍Α͏ʹ !6 ͦͷଞͷϝϦοτ
Copyright Drecom Co., Ltd. All Rights Reserved. 2人でやっても半分の時間にならないだろ? → なる。
諸々の決断が速い 手戻りが少ない Pull Requestを作るのが楽 レビュアーが背景を理解する時間がいらない/ 開発の過程を再現する時間がいらない コメントを書く時間がいらない !7 ϖΞϓϩ'"2
Copyright Drecom Co., Ltd. All Rights Reserved. Pull Requestは作るの? →
文化による。 「GitHubで見たい」派 レビュアーのための作文は不要 コミットメッセージの方が重要 !8 ϖΞϓϩ'"2
Copyright Drecom Co., Ltd. All Rights Reserved. 状況に応じて。 実装のアイデアがある 仕様に詳しい
先行して着手してた など !9 υϥΠόʔͷܾΊํ
Copyright Drecom Co., Ltd. All Rights Reserved. テストコード/プロダクトコード 1JOH1POH1BJSJOH ナビゲーターにアイデアが閃いたとき
セッション(約1時間)毎 など FAQ - マシン/キーボードは換える? Ping-Pong → 換えない セッション → 換える !10 υϥΠόʔަͷλΠϛϯά
Copyright Drecom Co., Ltd. All Rights Reserved. 1. 朝会でタスクを洗い出し・共有 2.
ペアでやるタスク/担当者/時間帯を打ち合わせ !11 ϖΞͷεέδϡʔϦϯά
Copyright Drecom Co., Ltd. All Rights Reserved. !12 εΩϧࠩ スキル差が大きい
ॳֶऀଟ͘ͷࣝΛಘΒΕΔ ϕςϥϯࢦಋํ๏ΛֶͿ ͲͪΒ͕υϥΠόʔͰΑ͍ スキル差が小さい ಘҙͷҧ͍͕ڞΛੜΉ ͲͪΒ͕υϥΠόʔͰΑ͍ ͓͢͢Ίͷهࣄ ࣝࠩ−εΩϧࠩΛຒΊΔͨΊͷϖΞϓϩʴαͷίπ
Copyright Drecom Co., Ltd. All Rights Reserved. !13 ϖΞͷίπ 敬意
૬ख͕୭Ͱɺઌഐͩͱࢥͬͯ 話すタイミング υϥΠόʔ͕λΠϐϯάΛऴ͔͑ͯΒ 調査は別々に ΤϥʔͷݪҼɺϥΠϒϥϦͷ͍ํͳͲ ผʑʹࣗͷϚγϯͰௐͨํ͕ޮత
Copyright Drecom Co., Ltd. All Rights Reserved. !14 όϦΤʔγϣϯ ペアレビュー
ιϩͰ࣮ˠϨϏϡΞʔ͕ՃΘͬͯϨϏϡʔ ର໘ͰίϛϡχέʔγϣϯίετΛݮ ࣮ऀˠϨϏϡΞʔɿίϯςΩετͷୡ ϨϏϡΞʔˠ࣮ऀɿϑΟʔυόοΫ ペアプロ → ソロ → ペアレビュー → ペアプロ ̍ਓ్͕தͰൈ͚ͨͱ͖
Copyright Drecom Co., Ltd. All Rights Reserved. !15 ମݧऀͷ 3,͞Μ
ʮϖΞͰ͓ئ͍͍ͨ͠Ͱ͢ʯ ʢ؆୯ͳ࡞ۀ͔Βຊ֨తͳ࣮ʹҠΔͱ͖ʣ ),͞Μ ʮϖΞͩͱ҆৺Ͱ͢ʯ ʢࠓ·Ͱͱҧ͏छྨͷλεΫΛ୲ͨ͠ͱ͖ʣ
Copyright Drecom Co., Ltd. All Rights Reserved. !16 σϝϦοτ 時間と場所の拘束
Ұॹʹ͍ͳ͍ͱͰ͖ͳ͍ 相手のマシンが使いにくい ΤσΟλʗγϣʔτΧοτͷҧ͍ͳͲ Α͘͏γϣʔτΧοτ߹ΘͤΑ͏ 疲れる ̍࣌ؒͰٳܜΛɻͦ͏͠ͳ͍ͱ̍ଓ͔ͳ͍
Copyright Drecom Co., Ltd. All Rights Reserved. !17 ϖΞ͕͔ͳ͍λεΫ ルーチンワーク
レビューのいらない仕事 概要設計など ௐࠪʗઃܭʗυΩϡϝϯςʔγϣϯ
Copyright Drecom Co., Ltd. All Rights Reserved. !18 ·ͱΊ フロー効率
精神的負担の軽減 トラックナンバー増加 → 安定した業務の進行 スキル差 → 双方の学び 敬意 時間と場所の拘束