うまいやり方を知りたいです。 ”ペアプロは疲れるけれど、コツが分かってくると、うまいやり方をすればとても有用だと知りました。” https://t.co/Ao7lVvmD8y
— amachin (@amachin) 2015, 11月 30
実ペアプロ時間1年未満の僕がコツなんて言うのはおこがましいですが、ペアプロオンリーでやっているMediweb社さんのやり方の受け売りです。
1台のPCを共有しない
ペアプログラミングは1台のPCを使って交代しながらやるものですが、エディタの違いとか環境の違いをあわせるのはクッソストレスが溜まるのでやりません。EmacserとVimmerは一生わかりあえません。
かわりにラップトップを持ち寄って1台の外部ディスプレイを交代でつなぎます。(Thunderbolt Displayは電源も一緒になってておすすめです)
ペアの交代時にはWIPでpushしときます。
別プロジェクトの人とペアを作らない
別のプロジェクト同士でやってもあまり興味が持てないので初心者にはおすすめできない。まずは同一プロジェクトの人同士でやる。
ドライバーを長時間やらない
一定時間で交代する。1時間がおすすめ。タスク毎交代だと他人事になりやすい。
残業しない
ペアプロは疲れます。残業はもってのほか。はじめは休憩を多めにとって6時間を目標にやるとよい。
昼を食べ過ぎない
ナビゲーターが眠くなってしまう。
毎日ペアを変えない
前日仕掛中のタスクが気になるようだったら同じペアで続行してすっきりさせてもよい。
プログラミングに限らない
インフラやタスク整理もペアでやってよい。
まとめ
TDDが「テストファーストじゃなくてもテストは書く」というのが当たり前になったように、ペアプログラミングもコモディティ化してきたのでエクストリームじゃないやり方に一般化してくのは自然なんじゃないかと思います。
本来のエクストリームプログラミングのプラクティスとしてのペアプログラミングに対してペアプロって感じで気張らず当たり前のこととしてやっていきたい。