「今の自分の考え」の断片を整理するための引用のメモ2
2002年5月13日12日からの続き。
10 フリーソフトの社会的な意義
これはもう不動の真実だ。最高のハックは、作者
の日常的な問題に対する個人的な解決策として始ま
る。そしてその問題が、実は多数のユーザにも典型
的なものであるために広まる。これでルールその 1
の話に戻ってきた。ただしもう少し便利な形で言い
直してみよう。
18. おもしろい問題を解決するには、まず自分にと
っておもしろい問題を見つけることから始めよう。
Carl Harris とかれのかつての popclient も
そうだったし、ぼくの fetchmail もそうだ。でも
これは長いこと理解されてきた。おもしろい点、つ
まり Linux と fetchmail の歴史がぼくたちの目を
いやでも向ける点は、次の段階だ――ユーザと共同
開発者たちの巨大で活発なコミュニティがある中
で、ソフトがどう発展するかという話。
『人月の神話』でフレッド・ブルックスはプログ
ラマの時間が代替不能だと看破している。遅れてい
るソフト開発に開発者を加えても、開発はかえって
遅れる。プロジェクトの複雑さとコミュニケーショ
ンコストは、開発者数の 2 乗で増大するのに対し、
終わる作業は直線的にしか増加しないというのがか
れの議論だった。この論はそれ以来「ブルックスの
法則」と呼ばれるに至り、真実をついているものと
だれもが考えている。でもブルックスの法則が唯一
無二の真理なら、Linux はあり得なかっただろう。
数年後、ジェラルド・ワインバーグの古典『プロ
グラミングの心理学』が、いまにして思えばブルッ
クスに対する重要な訂正だったものを提供してくれ
た。「エゴのないプログラミング」を論じるなかで
ワインバーグが述べたのは、開発者たちが自分のコ
ードを私物化せず、ほかのみんなにバグを探したり
改良点を見つけたりするよう奨励するようなところ
では、ソフトの改善がほかよりも劇的にはやく生じ
る、ということだった。
ワインバーグの分析がしかるべき評価を得なかっ
たのは、用語のせいかもしれない――インターネッ
トのハッカーたちを「エゴがない」と呼ぶなんて、
つい笑ってしまうではないの。でも、かれの議論は
今やかつてない説得力を持っている。
Unix の歴史を見れば、Linux から学びつつある
もの(そしてぼくが意図的にリーヌスの手法を真似
ることで、実験的に小規模に確認したもの
[EGCS])は見えていたはずなんだ。コーディングは
基本的に孤独な活動だけれど、真に偉大なハックは
コミュニティ全体の関心と能力を動員することで実
現されるってこと。閉ざされたプロジェクトの中
で、自分の脳味噌だけを使う開発者は、オープンで
発展的な文脈をつくりだして、デザイン空間の探索
やコードの貢献、バグつぶしなどの改善をもたらす
フィードバックが何百人も(あるいは何千人も)か
ら戻ってくるようにできる開発者に負けてしまうん
だ。
でも従来の Unix の世界は、このアプローチをと
ことんまでつきつめることができなかった。要因は
いくつかある。一つはいろいろなライセンスや商売
上の秘密、商業的な利害からくる法律上の制約。そ
してもう一つは(いまにして思えば)インターネッ
トがまだ発達しきってなかったことだ。
安いインターネット以前には、いくつかの地理的
に集中したコミュニティではワインバーグの「エゴ
のない」プログラミングが奨励されていた。そこで
は開発者は、有能なチェック屋や共同開発者を楽に
たくさん集めることができた。ベル研、MIT AI
研、UC バークレー――こういうところは伝説的な技
術革新を生み出したし、いまでも強力だ。
Linux は、意識的かつ成功裏に全世界を才能プー
ルとして使おうとした最初のプロジェクトだった。
Linux 形成期が、World Wide Web の誕生と同時期
なのは偶然ではないと思うし、Linux が幼年期を脱
したのが 1993-1994 年という、ISP 産業がテイク
オフしてインターネットへの一般の関心が爆発的に
高まった時期と同じなのも偶然ではないだろう。リ
ーヌスは、拡大するインターネットが可能にした新
しいルールにしたがって活動する方法を見いだし
た、最初の人間だったわけだ。
安いインターネットは、Linux モデルの発展にと
っての必要条件ではあったけれど、でもそれだけで
は十分条件ではなかったと思う。もう一つの重要な
要素は、開発者が共同開発者を集めて、インターネ
ットというメディアを最大限に活かすためのリーダ
ーシップのスタイルと、協力のための慣行が開発さ
れたことだろう。
でもこのリーダーシップのスタイルとはなんで、
その慣行ってのはどういうものだったんだろう。こ
れは権力関係に基づくものではあり得ない――あり
得たとしても、脅しによるリーダーシップは、いま
ぼくたちが目にするような結果を生み出しはしな
い。ワインバーグは、19世紀ロシアのアナキストで
あるクロポトキンの『ある革命家の回想』を引用し
て、この点についていい議論を展開している。
「農奴を所有する一家に育ったわたしは、当時の若
者たちみんなと同じように、命令したり指令した
り、叱りつけたり罰したりといった行動の必要性に
ついて、まったく疑うことを知らぬままに成年に達
した。しかしかなりはやい時期に、わたしは大がか
りな企業を経営することになり、自由な人々と交渉
することになった。そしてまちがい一つが重大な結
果を招くような状況で、わたしは命令と規律という
原理にしたがって活動するのと、共通の理解という
原理に基づいて行動するのとの差をだんだん理解す
るに至った。前者は軍隊のパレードでは見事に機能
するが、実生活において、目標が多くの重なり合う
意志の真剣な努力によってしか達成できないような
状況では何の価値もない」
10 フリーソフトの社会的な意義
これはもう不動の真実だ。最高のハックは、作者
の日常的な問題に対する個人的な解決策として始ま
る。そしてその問題が、実は多数のユーザにも典型
的なものであるために広まる。これでルールその 1
の話に戻ってきた。ただしもう少し便利な形で言い
直してみよう。
18. おもしろい問題を解決するには、まず自分にと
っておもしろい問題を見つけることから始めよう。
Carl Harris とかれのかつての popclient も
そうだったし、ぼくの fetchmail もそうだ。でも
これは長いこと理解されてきた。おもしろい点、つ
まり Linux と fetchmail の歴史がぼくたちの目を
いやでも向ける点は、次の段階だ――ユーザと共同
開発者たちの巨大で活発なコミュニティがある中
で、ソフトがどう発展するかという話。
『人月の神話』でフレッド・ブルックスはプログ
ラマの時間が代替不能だと看破している。遅れてい
るソフト開発に開発者を加えても、開発はかえって
遅れる。プロジェクトの複雑さとコミュニケーショ
ンコストは、開発者数の 2 乗で増大するのに対し、
終わる作業は直線的にしか増加しないというのがか
れの議論だった。この論はそれ以来「ブルックスの
法則」と呼ばれるに至り、真実をついているものと
だれもが考えている。でもブルックスの法則が唯一
無二の真理なら、Linux はあり得なかっただろう。
数年後、ジェラルド・ワインバーグの古典『プロ
グラミングの心理学』が、いまにして思えばブルッ
クスに対する重要な訂正だったものを提供してくれ
た。「エゴのないプログラミング」を論じるなかで
ワインバーグが述べたのは、開発者たちが自分のコ
ードを私物化せず、ほかのみんなにバグを探したり
改良点を見つけたりするよう奨励するようなところ
では、ソフトの改善がほかよりも劇的にはやく生じ
る、ということだった。
ワインバーグの分析がしかるべき評価を得なかっ
たのは、用語のせいかもしれない――インターネッ
トのハッカーたちを「エゴがない」と呼ぶなんて、
つい笑ってしまうではないの。でも、かれの議論は
今やかつてない説得力を持っている。
Unix の歴史を見れば、Linux から学びつつある
もの(そしてぼくが意図的にリーヌスの手法を真似
ることで、実験的に小規模に確認したもの
[EGCS])は見えていたはずなんだ。コーディングは
基本的に孤独な活動だけれど、真に偉大なハックは
コミュニティ全体の関心と能力を動員することで実
現されるってこと。閉ざされたプロジェクトの中
で、自分の脳味噌だけを使う開発者は、オープンで
発展的な文脈をつくりだして、デザイン空間の探索
やコードの貢献、バグつぶしなどの改善をもたらす
フィードバックが何百人も(あるいは何千人も)か
ら戻ってくるようにできる開発者に負けてしまうん
だ。
でも従来の Unix の世界は、このアプローチをと
ことんまでつきつめることができなかった。要因は
いくつかある。一つはいろいろなライセンスや商売
上の秘密、商業的な利害からくる法律上の制約。そ
してもう一つは(いまにして思えば)インターネッ
トがまだ発達しきってなかったことだ。
安いインターネット以前には、いくつかの地理的
に集中したコミュニティではワインバーグの「エゴ
のない」プログラミングが奨励されていた。そこで
は開発者は、有能なチェック屋や共同開発者を楽に
たくさん集めることができた。ベル研、MIT AI
研、UC バークレー――こういうところは伝説的な技
術革新を生み出したし、いまでも強力だ。
Linux は、意識的かつ成功裏に全世界を才能プー
ルとして使おうとした最初のプロジェクトだった。
Linux 形成期が、World Wide Web の誕生と同時期
なのは偶然ではないと思うし、Linux が幼年期を脱
したのが 1993-1994 年という、ISP 産業がテイク
オフしてインターネットへの一般の関心が爆発的に
高まった時期と同じなのも偶然ではないだろう。リ
ーヌスは、拡大するインターネットが可能にした新
しいルールにしたがって活動する方法を見いだし
た、最初の人間だったわけだ。
安いインターネットは、Linux モデルの発展にと
っての必要条件ではあったけれど、でもそれだけで
は十分条件ではなかったと思う。もう一つの重要な
要素は、開発者が共同開発者を集めて、インターネ
ットというメディアを最大限に活かすためのリーダ
ーシップのスタイルと、協力のための慣行が開発さ
れたことだろう。
でもこのリーダーシップのスタイルとはなんで、
その慣行ってのはどういうものだったんだろう。こ
れは権力関係に基づくものではあり得ない――あり
得たとしても、脅しによるリーダーシップは、いま
ぼくたちが目にするような結果を生み出しはしな
い。ワインバーグは、19世紀ロシアのアナキストで
あるクロポトキンの『ある革命家の回想』を引用し
て、この点についていい議論を展開している。
「農奴を所有する一家に育ったわたしは、当時の若
者たちみんなと同じように、命令したり指令した
り、叱りつけたり罰したりといった行動の必要性に
ついて、まったく疑うことを知らぬままに成年に達
した。しかしかなりはやい時期に、わたしは大がか
りな企業を経営することになり、自由な人々と交渉
することになった。そしてまちがい一つが重大な結
果を招くような状況で、わたしは命令と規律という
原理にしたがって活動するのと、共通の理解という
原理に基づいて行動するのとの差をだんだん理解す
るに至った。前者は軍隊のパレードでは見事に機能
するが、実生活において、目標が多くの重なり合う
意志の真剣な努力によってしか達成できないような
状況では何の価値もない」
コメント