ペアプロの進め方(-_-)

完全ペアプロで作業を継続しているが、そろそろ進捗率の悪さが気になりだしてきた。当初は慣れる、理解する目的でペアプロをしていたが、そろそろ2週間が過ぎたところで、ちょっと苦しくなってきた。

というのも、一緒にペアしている人があまりペアプロが得意ではないらしく、本当は一人のほうが気が楽、という人だから、というのもあるかもしれない。

先日、「かなりペアプロを続けてきましたが、感想などありますか?」とたずねたところ、以下のような回答をしてくれた。

  • 一人でやっていたら、こんなに早く理解はできなかったと思う。
  • いろいろ教えてもらえることが多く、ためになっている。
  • 本当は一人で作業するほうが好きではある。

そうですね。やっぱり一人のほうが気楽でいいですよね。でも一人だと間違えた方向に行ってしまったりとか、悩んだ場合にすぐに聞けなくて、時間を無駄にしたり、ということがおきるので、やっぱりペアプロの方がよいですよね、ともいえるのだがどうなのだろう。

この人はやはりストレスを感じているのだと思う。私は結構せっかちなので、「あそこをこうしましょう。」「ここは項のほうがよくないですか?」「どっちにしますか?」と矢継ぎ早に方針を立てたり、質問をして回答を急いで引き出そうとしてしまう。それをやられるとじっくり自分の中で考えて行動したい人にはストレスであり、考えることもできなくなってしまうのかもしれない。

しかし、私の立場としては

  • 進捗がおしてきたから、早くやっつけたいな。
  • あれ、前にもあのショートカットキーを教えたのに、なんで使わないんだろう。遅いなぁ。
  • エディタ開きすぎだよ。Bookmarkを使用する方法も提示したのに。
  • 話しかけても応答があるまで、かなりじっくり無言で待たなければ応答してくれないんだよね。無言で待つのが結構大変だよ。
  • 相手からはほとんど話しかけてこないなぁ。いっつも私が話しかける一方なのでちょっと疲れる。何か疑問に思ったり、何か提案したりとか、ペアにぐらい話しかけてくれてもよいのに。
  • ああ、自分がコーディングしたい!

などと考え、自分にもストレスがたまってきている。自分はせっかちだが、なるべく相手に合わせて、ゆっくり開発をすることを許容しているつもりだ。話しかけすぎず、無言過ぎずのちょうどよいところを選んでもいるつもりだ。でも複雑な作業などしているときにはついつい真剣になりすぎて、相手を威圧してしまいそうになる。そういう時は注意しなきゃ、と自分を戒めている。

ふぅ。つまり私自身がストレスを感じているのだ。もっとサクサクやろうよ、とか、お互いに会話をしましょうよ、と思っているのだ。いつも方針を立てるのは私、手を動かせば、わかるように相手に伝えるが、相手が手を動かすときは相手から「どうしますか?」としか聞かれない。相手が考え動くことはほとんどない。そういうやり方ではなく、お互いに並列に意見を言いながら、認識をあわせながらペアプロしようよ、と言葉と態度で表しているのに、なかなか伝わらないような気がしていらいらするのだ。

やっぱりペアって相性がありますね。前一緒にペアを組んでいた人とは、こんなストレスはなかった。逆にたまに面白い技や考え方を知ることができ、刺激もありおもしろかった。

なので、ペアプロって無理にペアを組んで作業しなければいけないようなプラクティスではない気がする。Kent Beckは優秀な組織がペアプロしているのをみて、なるほどと思った、とXPの書籍で書いていたが、それは自然発生的もしくは、ペア双方の希望でペアを組んでいたので理想的にうまくいっていたのではないだろうか。無理に「AさんとBさんでペアプロで作業してください。」という類のものではないのではないだろうか。

基本はサインアップ。

だよね。そして好きにペアを選ぶ。しかし、誰からも声をかけてもらえないペアがいるとそれはそれで寂しい。またあの人とペアを組みたいな、と思ってもたいていの場合、人気者の争奪戦が激しさを増してしまう。

だからペアプロは以下のような心構えでプロジェクトに導入するとよいのではないだろうか。

  • ペアプロはやりたい人だけやってよい。やりたくなければ一人で作業してもよい。
  • ペアで進捗が遅くても責任追及はしない。しかし、遅くなった場合、理由を明確にする必要がある
  • 「ペアになって(^o^)/」、と声をかけられたら断ってはいけない。(これって本に書いてあったような...)

しかし、進捗が遅くなってもよい、とするとどこまでも理想系のコードを書く人もでてきそう。それらは通常「時間が無く、やむにやまれず汚いソースで満足する。」という部分もあったりしたはずだ。どうしても終わらなければ仕方がないのだが、遅れてもよいのなら、満足いくまでリファクタリングを繰り返してしまう人もでそうだ。このあたりはいくら口で言ってもなかなか実際には難しい。