Chat (Lingr.com)
Informaiton
Daily
Column
- MySQL日本語の旅(5/1)
- アクセス向上秘伝(5/9)
- 一風変ったHaskellλ門(6/13)
- SICP Answer Book (5/31) 問題3.26追加
Zope Solution
Extra
アーカイブ
OSS案内所
Site Info
関連リンク
この業界(ソフトウェア業界ですね)は、とかく1人で行動するのが好きな人が多いものです。
特にプログラミングをしている最中なんかは、誰にも邪魔されずに、自分1人の世界に入って、自分の思いのままにプログラムを作っていく...そんな愉悦を感じたいものです。
とは言うものの、仕事の中では、1人にさせてくれる時間は、なかなかないですよね。
だから、仕事で散々プログラムを書いてるのに、それが思い通りでない”憂さ”を晴らすために、家に帰ってから仕事とは別のプログラミングをする...なんて「プログラミング二重生活」をしちゃったりする危篤(?)な方もいるみたいです。
...実は、私がそうでした(^_^)
でも、今回紹介する「ペアプログラミング」を知ってからは、1人でプログラミングをするのが、なんだか”むなしい”というか、何となくイヤになってしまって、それ以来、家でプログラミングをすることは、ほとんどなくなりました。
「ペアプログラミング」は、読んで字のごとく、”ペア”で”プログラミング”を行います。
XPというと「ペアプログラミング」というぐらい、XPらしさを代表するプラクティスです。
やり方ですが、2人のプログラマが並んで、1台のマシン・キーボード・マウスを共有します。
1人は、キーボードやマウスを使ってプログラムを入力する役、もう1人は、その様を眺めながら入力している人にアドバイスやいわゆる「突っ込み」を入れる役です。
で、ちょくちょく2人は役割を交代して、1つのプログラムを仕上げていく...そんな感じですね。
やってみるとわかるんですが、ペアプログラミングってすごく楽しいんです!
一度この開発のやり方に慣れたら、1人でプログラムを組むのが「全然楽しくない」ってことに気付いてしまいます。
また、品質や開発スピード(生産性)の面でも、最初は戸惑うので若干スローダウンするものの、慣れてくると1人のときとは比べ物にならないぐらい良くなります。
こうなると、1人でプログラミングする世界には戻れなくなります。
テスティングやリファクタリング同様、「中毒症」のあるプラクティスですね(^_^)
余談ですが、XPは、一度ハマると、その良さからいたるところで中毒症状が起こります。
そのため、「XPなしの開発なんて考えられない!」という方も多いみたいです。
さて、本題に戻してと...
そんないいことずくめのペアプログラミングではありますが、そのやり方が今までにない斬新で過激なものだけに、浸透する前は、開発側、ビジネス側の両方に反発する人が多いのも特徴の1つです。
私は今まで「なんで1人でできることを2人でやる必要があるの?」「2人で1つのプログラムを組むなんて、非効率だよ」「2人で1人月分の仕事しかしないなんてぼったくりじゃないの?」という批判をよく聞きました。
たぶん、XPの中でも、一番感情的に批判されるのが、このペアプログラミングというプラクティスでしょうね。
それは、ペアプログラミングをやっている様が「他の人からも直接見える」からだと思います。
他のプログラマ向けプラクティスは、案外見えないところで動いているので、気付かれない(笑)ことが多いですが、ペアプログラミングは、やっているのがあからさまにわかるので、気になってしょうがないんだと思います。
感情的になるもう1つのポイントは、コストに直接影響を及ぼしそうなやり方だからでしょうね。
確かに貴重な投資コストなので、「2人で1人分」と思われたら...絶対に導入できないと思います。
そんな訳でたくさん批判されるが故に、カウンターとして「ペアプログラミングがソロプログラミングよりも優れている」ことを証明するデータや事例がたくさん出ています。
詳しくは、この本のペアプログラミングの論文をご覧下さい。
ジャンカルロ ズッチ (編集), ミシェル マルケシ (編集), Giancarlo Succi (原著), Michele Marchesi (原著), 小野 剛 (翻訳), 細川 馨 (翻訳), 石川 真之 (翻訳)
価格: ¥3,150(税込)
※リンクをクリックするとAmazonで購入できます。
また、こんな本もありますので、ぜひ読んでみて下さい。
ローリー ウィリアムズ (著), ロバート ケスラー (著), Laurie Williams (原著), Robert Kessler (原著), 長瀬 嘉秀 (翻訳), 今野 睦 (翻訳), テクノロジックアート (翻訳)
価格: ¥3,990(税込)
※リンクをクリックするとAmazonで購入できます。
ペアプログラミングは、あなたの頭脳とペア相手の頭脳を組み合わせることで、1人の能力の何倍もの能力を発揮するための画期的なプラクティスです。
また、1人でスキルアップするときの何倍も速く正確にスキルアップできます。ですので、新人教育なんかにはうってつけだったりします。
あなたもペアプログラミングで確実にスキルアップしつつ、「最高にハッピーなプログラミングの世界」に触れてみませんか?
次回、2/4(金)は「共同所有」です。
お楽しみに!
There is no comment.