伽藍とバザール

1997年というと自分はまだ高校生になったばかりで、インターネットなんて知らなかった頃だ。その頃に書かれた文章を今さらながら読んでみた。本質的な点において古さを感じさせず、非常に面白い文章だった。
http://cruel.org/freeware/cathedral.html

ぼくが正しければ、なぜ Linux コミュニティがこんなにいいソフトを続々と生み出せるのか、みんなにもずばりわかるはず――そしてみんなももっと生産的になれるはずなんだ。

一言で言えばオープンソースの手法は非常に生産的だということである。その秘密を探るため、著者のエリック・レイモンドは自身のプロジェクトをオープンソースプロジェクトのように運用して、実践してみた。ここにはその過程で得られた知見が多く記されている。

リーヌスは、ハッカー/ユーザたちをたえず刺激して、ごほうびを与え続けたってことだ。刺激は、全体の動きの中で一員となることでエゴを満足させられるという見込みで、ごほうびは、自分たちの仕事がたえず(まさに毎日のように)進歩している様子だ。

ごほうびというのは、お金というわけではない。進歩が実感できることそれ自体が重要だとわかる。

デバッグするにはデバッガは開発コーディネータと多少のやりとりは必要だけれど、デバッガ同士では大した調整は必要ない。だから、開発者を加 えることで発生する、幾何級数的な複雑性と管理コスト増大という問題には直面しないですむというわけだ。

これもなかなか重要な気づきだろう。並列作業ができれば分業が可能になり、効率がぜんぜん違う。

SMTP 転送機能のおかげで、このソフトは競合ソフトからぬきんでて、「カテゴリーキラー」になる可能性まで出てきた。カテゴリーキラーというのは、ニッチをあま りに見事に満たしているので、それ以外の選択肢は単に放棄されるどころか、ほとんど忘れ去られてしまうようなソフトのことだ。

カテゴリキラーってすごいな。自分はどの分野でカテゴリキラーになれるだろうかと考えたりする。

バザール形式で最初からコードを書くのが無理だというのは、まあはっきりしているだろう。バザール形式でテストしたりデバッグしたり改善したりはできるけれど、プロジェクトを最初からバザール式で始めるのはすごくむずかしいだろう。リーヌスはそんなことはしなかったし、ぼくもしなかった。あなたが生み出そうとしてる開発者コミュニティは、いじるために何か動いてテストできるものを必要としているんだ。

ここも重要なところ。たたき台がないと何も始まらない。そこらへんの性質を知らないとうまくいかないってことだ。

オープンソースの成功のいちばんだいじな影響の一つというのは、いちばん頭のいい仕事の仕方は遊ぶことだということを教えてくれることかもしれない。

この価値観をうまく応用出来ればいいなと思っている。

洞察は個人からくる。それをとりまく社会機構としてせいぜい期待できるのは、その突破口となる思いつきに対して敏感に反応することくらいだ――それをつぶすのではなく、ちゃんと育てて報酬を与え、きちんとテストしてやることだ。

結局は個人が大事。この考え方には勇気づけられるものがある。
自分が日々進歩していることそれ自体が、モチベーションの源泉となる。適切なサイズの魅力的な問題を提供し続けることが、うまくコミュニティを扱っていくことにつながるんだろうな。何かをやりたいのであれば、最初から他人に頼ったりせず、中核になるものを自分で用意することが大事。そんなエッセンスが詰まった、非常に読みやすい本である。