2010年5月11日火曜日

ペアプログラミング

8 時起床。珈琲、トーストの朝食。 曇り空。今日は雨になりそうだ。 適当にお弁当を詰めて出勤。 午前、午後とお仕事。昼食は持参のお弁当。 塩豚とポテトのオーヴン焼き、油揚げと長葱を炒めたものなど。 午後はミーティングから。 そのあと余った時間で、天才プログラマKさんとペアプログラミングを試みる。

ペアプログラミングとは、二人が一組になって、 片方が「ドライバー」として開発環境を操作し、 横に座った「ナビゲイター」と共同でプログラミングをする、 というものである。 意外ではあるが、 二人が別々に仕事をするよりも生産性が上がる、と言われている。 今日の試みの感じでは、一番大きな効果は(予想通り)、 まとまった時間、気を散らさずに仕事をする、ということのようだ。 大体、この業界の仕事は、 Joel on Software の「射撃しつつ前進」 で見事に描かれているように、 「emailをチェックしたり、Webを見たり、そのほかのことをする」 「いいかげんに仕事をしようと決心する」 「emailをチェックしたり、Webを見たり、そのほかのことをする」 「いいかげんに仕事をしようと決心する」 「emailをチェックしたり、Webを見たり、そのほかのことをする」…… の無限ループに陥りがちで、しかも、 「なんとか、くそエディタを立ち上げる」段階にブランチできたとしても、 再び上のループの中にリターンしがちだ。 以前にも書いたが、 私の職業人生にはこのループの中だけで終わった一日が数え切れないほどある (幸運にも、学生の頃にはまだ本格的なネット時代が訪れていなかった)。 ペアプログラミングにおいては相棒がいるため、この問題が発生し難い。 お互いに茶々を入れたり議論をするなど、 口を動かしながら作業することが集中力を高める、という効果も大きい。 とは言え、上のエッセイでも指摘されていることだが、 一番大事なのは「とにかく始める」ことなので、 ペアプログラミングをしましょう、と仕事を始めた段階で、 大方の問題は取り除かれているのかも知れない。

帰宅して、夕食の支度。 鶏手羽中の長葱焼き、納豆と浅葱の炒飯、葱スープ。 シャルドネを一杯だけ。 夜は翻訳の推敲作業。