←前
なにはともあれメールは通せ
トップ 次→
はやめのリリース、しょっちゅうリリース

3. ユーザは大事な財産

 というわけで、ぼくは popclient をひきついだ。そして同じくらい 大事なことだけれど、ぼくは popclient のユーザベースもひきついだわけだ。 ユーザを持つのはすばらしいことで、それは単に、自分が何かニーズに 対応してるんだな、なにか役に立つことをしたんだな、ということを 実証してくれるからというだけじゃない。きちんと育てれば、 ユーザは共同開発者になってくれるんだ。

 これまた UNIX の伝統の強みで、これまた Linux がみごとに極限まで おしすすめる強みでもあるんだけれど、ユーザの中にもハッカーが たくさんいるわけだ。そしてソースコードが公開されてるから、かれらは 同じハッカーでも役に立つハッカーになってくれる。 これはデバッグ時間短縮にはすごく役に立つ。ちょっと励ますだけで、 ユーザが問題を診断し、直し方を提案してくれて、一人でやるよりずっとはやく コードを改善できるようにしてくれる。

  1. ユーザを共同開発者として扱うのは、コードの高速改良と 効率よいデバッグのいちばん楽ちんな方法。

 この効果の力はすごく見落としがち。はっきり言って、ぼくらフリーソフト界の ほとんどだれもが、この効果がユーザの数の増加とともにどれほどすごくなるか、 そしてそれがシステムの複雑さに対してどれほど有効に機能するかについて、 まったく見えてなかった。リーヌスが目を開いてくれるまでは。

 はっきり言って、ぼくは リーヌスのいちばん賢い、影響力あるハッキング というのは、Linux のカーネル構築そのものではないと思う。むしろ Linux 開発モデルの発明だと思う。本人の前でこの意見を述べてみたら、かれは にっこりして、これまで何度か言ったことを静かに繰り返した。 「ぼくは基本的に怠け者で、ほかの人のしてくれた作業を自分の仕事だと 称するのが好きなんだよ」。キツネのようなずるがしこい怠けぶり。 あるいはロバート・ハインラインが自作の登場人物の一人について書いた 有名な表現にならえば、「失敗するには怠惰すぎる」。

 ふりかえってみると、Linux の手法や成功の前例は GNU Emacs の Lisp ライブラリと Lisp コードアーカイブの開発にみることができる。Emacs の C のコア部分やその他 FSF ツールみたいな、伽藍建築方式にくらべると、 Lisp コードのプールの進化は流動的で、すごくユーザ主導で行われた。 アイデアやプロトタイプ・モードは、安定した最終形に落ち着くまで 3 回も 4 回も書き直されるのがしょっちゅうだった。そして Linux と同じく、 インターネットが可能にしたゆるい協力体制もしばしばとられていた。

 確かに、ぼく自身でも fetchmail 以前でいちばんうまくいったハッキングは、 Emacs の VC モードだと思う。これは Linux みたいに、電子メールで 3 人と共同作業して開発した。今日にいたるまで、その中で実際に顔をあわせたことが あるのは一人(Richard Stallman、Emacsの作者で FSF <http://www.fsf.org/>の創始者)だけだ。 これは SCCS、RCS、そして後には CVS となったもののフロントエンドで、 「ワンタッチ」のバージョンコントロール機能を Emacs の中から使えるように するものだった。もとにしたのは、だれかが書いた、いい加減でちっちゃな sccs.el モード。そしてVCの開発が成功したのは、Emacs 本体とはちがって、 Emacs Lisp のコードはリリース/テスト/改良のサイクルをすごくはやく 回せるからだった。


←前
なにはともあれメールは通せ
トップ 次→
はやめのリリース、しょっちゅうリリース