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
0
81
ペアプロってどうなの?
Pull Requestでしか開発したことがない人向けの、ペアプロの良し悪しが分かる資料。
Hiroki Yoshioka
February 01, 2019
Tweet
Share
More Decks by Hiroki Yoshioka
See All by Hiroki Yoshioka
RubyとPythonはどちらが速いのか
irohiroki
0
150
スクラムマスターは何をすべきか
irohiroki
1
590
高階関数みたいな鳥たちの森
irohiroki
0
110
Pattern Language for Rubyists (Rev.2)
irohiroki
1
310
The Most Beautiful Vagrant Box
irohiroki
1
210
ドメイン駆動設計ワークショップ in KRAY
irohiroki
1
290
Gitはなぜ難しいのか
irohiroki
4
25k
Github APIを叩いて分かったこと
irohiroki
1
680
The Metric Talks or Not
irohiroki
2
870
Other Decks in Programming
See All in Programming
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
イベント駆動で成長して委員会
happymana
1
340
Amazon Qを使ってIaCを触ろう!
maruto
0
420
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
120
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.3k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.3k
Amazon Bedrock Agentsを用いてアプリ開発してみた!
har1101
0
340
Modular Monolith Monorepo ~シンプルさを保ちながらmonorepoのメリットを最大化する~
yuisakamoto
2
130
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
940
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.8k
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
What's new in Ruby 2.0
geeforr
343
31k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Into the Great Unknown - MozCon
thekraken
32
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Code Review Best Practice
trishagee
64
17k
The Language of Interfaces
destraynor
154
24k
Gamification - CAS2011
davidbonilla
80
5k
A designer walks into a library…
pauljervisheath
204
24k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
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 ·ͱΊ フロー効率
精神的負担の軽減 トラックナンバー増加 → 安定した業務の進行 スキル差 → 双方の学び 敬意 時間と場所の拘束