ソフトウェアが存在すると、その利用形態をどのように決めるべきかという問題が必然的に発生する。たとえば、プログラムのコピーを持っているある個人が、そのコピーをほしいと思っている別の誰かと会ったとする。彼らはプログラムをコピーする能力を持っているが、そうしてよいかどうかは誰が決めるべきだろうか。出会った2人の個人か、「所有権者」と呼ばれる別の主体だろうか。
ソフトウェア開発企業は、一般に、答の基準は自分の利益を最大限に確保することにあるという前提でこれらの問題を考える。政府は、ビジネスの政治的な力関係に基づき、メーカーが提案した基準と答の両方を受け入れている。プログラムは所有権者を持ち、それは開発に携わった企業だというのである。
私は、異なる基準を使って同じ問題を考えてみたいと思う。それは、一般人の自由と繁栄である。
現在の法では、答を決めることはできない。法律は、倫理に従うべきで、逆になってはならない。また、現在の慣行は、この問題に対してある答を誘い出すかもしれないが、だからといってそれを答にしてはならない。唯一の判断方法は、ソフトウェアの所有権者を認めることによって、誰が得して誰が損をするのか、それはなぜでどの程度なのかということである。言い換えれば、私たちは、商品の生産とともに個人の自由を考慮に入れながら、全体としての社会のために、費用便益分析を行わなければならない。
本稿では、所有権者を持つことがどのような影響を及ぼすかを詳論し、有害な結果がもたらされることを示す。私の結論は、プログラマには自分が書いたソフトウェアの共有、再頒布、研究、改良を他者に奨励する義務があるというものである。つまり、フリーソフトウェアを書かなければならないということだ*1。
プログラムが財産となる現行制度の恩恵を被っている人々は、プログラムの所有権を主張するために、感情的なものと経済的なものの計2つの論拠を提示する。感情的な論拠とは、このようなものである。「私は、このプログラムに汗と気持ちと魂を込めている。このプログラムは私が作ったものだから、私のものだ」
この議論は、たやすく論破できる。プログラマがそれにふさわしい仕事をしたのなら、プログラマはプログラムに愛着を感じるだろう。それは避けられないことだ。しかし、たとえば同じプログラマが、報酬を得るためなら、大企業にすべての権利を喜んで譲り渡してしまうことを考えてみよう。愛着の感情は不思議に消えてしまっている。それに対し、作品に署名すら残さなかった中世の優れた芸術家や職人たちのことを考えてみよう。彼らにとって、自分の名前は重要ではなかった。重要なのは、仕事を完成させることであり、完成した仕事が果たすはずの目的だった。数百年にわたって優位を保ってきたのは、この考え方である。
経済的な論拠のほうは、このようなものである。「私は金持ちになりたい(通常、「生計を立てる」という不正確な表現が使われるが)。プログラミングで金持ちになることが許されないなら、私はプログラムを書かない。誰もが私と同じであれば、プログラムを書く人間はいなくなるだろう。そうしたら、皆さんはプログラムがなくなって困るはずだ!!」 通常この脅迫は、賢人による心からの忠告という装いで行われる。
この脅迫がはったりに過ぎないことは、あとで説明することにしよう。先に、この論拠に含まれているもう1つの論点のほうのよりわかりやすい前提条件を明らかにしたい。
その論点は、まず、私有プログラムの社会的有用性とプログラムが存在しないことを比較した上で、私有ソフトウェア開発が全体として有益であり、奨励されるべきだという結論を導いている。この議論の欺瞞は、比較の俎上に私有ソフトウェアかソフトウェアなしかの2つの結論しか載せず、他の可能性をあらかじめ排除していることにある。
ソフトウェア著作権制度のもとでは、通常、ソフトウェア開発はソフトウェアの利用形態をコントロールする所有権者の存在と結び付けて考えられてしまう。この結び付きが存在する限り、私有ソフトウェアかソフトウェアなしかの二者択一に迫られることになりがちである。しかし、この結び付きは本質的なものでも不可避のものでもない。これは、私たちが疑問を投げかけているある特定の社会政策・立法上の決定、すなわちソフトウェアは所有権者を持つことという決定がもたらした結果に過ぎない。私有ソフトウェアかソフトウェアなしかという二者択一を定式化することに疑問の眼を向けなければならないのである。
今ある疑問点は、「ソフトウェア開発とソフトウェアの利用形態を制約する所有権者を持つことを結び付けてよいのか」ということである。
この問題に答えるためには、2つの行為が社会に対して与える影響をそれぞれ独立に見極めなければならない。つまり、ソフトウェア開発が社会に及ぼす影響(頒布方法とは無関係に)とソフトウェアの利用形態を制限することが社会に及ぼす影響(ソフトウェアが開発されていることを前提として)を考えるのである。これらの中の片方が有益でもう片方が有害なら、両者の結び付きを切り離し、有益なほうだけを残せばよい。
言い方を変えるなら、すでに開発されているプログラムの頒布を妨げるのが社会全体にとって有害なら、倫理的なソフトウェア開発者はそうすることを拒否するだろう。
共有を制限することの社会的影響を考えるには、制限付き(すなわち私有)ソフトウェアと誰もが自由に使える同じプログラムの社会的価値を比較しなければならない。これは、2つの可能な世界を比較するということである。
この分析は、「所有権者に害を与えることになるので、隣人にコピーを与えることによって得られる利益は帳消しになる」という私たちへの単純な反論にも応答することになる。この反論は、害と利益が同程度だという前提のもとに成り立っている。これから示す分析は、両者の規模を比較し、利益のほうがはるかに大きいことを明らかにする。
議論をわかりやすくするために、道路建設という別の分野に同じ問題を当てはめてみよう。
道路建設にかかるすべての資金を通行料金によって調達することは可能だろう。その場合、すべての街角に料金所を設けなければならない。このような制度は、道路を改善しようという意欲を膨らませるだろうし、すべての道路のユーザーに道路使用料を支払わせる効果を持つ。しかし、料金所はスムーズな通行に対する人為的な障害になる。人為的だと言うのは、道路と車の仕組みが自然にもたらした結果ではないからである。
無料の道路と有料道路を有益かどうかによって比較するなら、(他の条件がみな同じなら)料金所のない道路のほうが建設コストや運営コストがかからず、安全で、使用効率が良いということになる*2。貧しい国では、料金によって多くの人々は道路を使えなくなる場合がある。このように、料金所のない道路は、少ないコストでより大きな利益を社会にもたらす。料金所のない道路のほうが社会にとっては望ましい。建設済みの道路は、無料で利用できるようにすべきである。
料金所の推進者たちが単なる資金調達方法として料金所を提案するなら、彼らは選択肢を歪めているのである。料金所は資金を調達するが、他のこともする。実際、料金所は道路の価値を下げる。有料道路は、無料の道路よりも劣っている。道路を増やしたり技術的に優れたものにすることが無料の道路を有料道路に置き換える理由なのだとすれば、これらは改良ではないかもしれない。
もちろん、無料の道路を建設するためには費用が必要であり、国民は何らかの形でその費用を負担しなければならない。しかし、だからといって、料金所が避けられないことにはならない。いずれにしても費用を負担しなければならない私たちは、無料の道路にかけたほうが同じお金からより大きな価値を得ることができる。
私は、有料道路があるほうが道路がまったくないよりも良いというような話をしているわけではない。料金が高過ぎてその道路を使う人がほとんどいないなら、ないほうがましかもしれないが、料金徴収サイドがそのような政策を取るはずはないだろう。しかし、料金所は大きな浪費であり、不便なので、より邪魔にならない方法で資金を調達したほうがよいということである。
ソフトウェア開発に同じ議論を当てはめるなら、有益なソフトウェアに対して「料金所」を設けることは、社会にとって非常に大きな出費になる。そのようなことをすれば、プログラムの「建設」コスト、頒布コストは上がり、利用時の満足度や効率は下がる。だから、プログラムの開発は、何か別の手段で奨励すべきなのである。では、ソフトウェア開発を奨励し、(実際に必要な程度の) 資金を調達するための別の方法というものを説明しよう。
プログラムの開発が終わり、開発に必要だったすべてのコストを支払ったとする。社会は、ソフトウェアを私有にするか、自由に共有、利用できるようにするかを決めなければならない。プログラムが存在し利用できることは、望ましいことだという前提で話を進めよう*3。
プログラムの頒布と変更に制限を加えることは、その利用を促進しない。害になるだけである。そのため、その社会的な影響は否定的なものでしかあり得ない。しかし、その害はどの程度でどのような種類のものなのだろうか。
このような制限が実際に引き起こす有形の害には、3つの異なる段階がある。
これらの有形の障害は、それぞれ心理的社会的な害悪を付随させる。心理的社会的な害悪とは、人々の決定が彼らのその後の感覚、態度、傾向に与える影響である。このような人々の思考形態の変化は、彼らの仲間である市民たちとの関係に影響を与え、さらには目に見える形の結果を生むのである。
3つの有形の障害の段階は、プログラムが寄与できるはずだった価値の一部を無駄にする。それらがプログラムのほとんどすべての価値を無駄にするなら、プログラム開発は、高々プログラム開発にかかった労力の分だけ社会に害を与えることになる。確かに、販売すれば利益になるようなプログラムは、何らかの直接的な有形の純益を生んでいるに違いない。
しかし、社会的心理的害悪を考慮に入れるなら、私有ソフトウェア開発の有害性には限度がない。
最初の段階は、プログラムの単純な利用を妨げるというものである。プログラムのコピーにはほとんどコストはかからない(自分で作業をすれば、自分でコストを支払える)ので、自由市場ではほとんど無料になる。ライセンス料は、プログラムを使おうという意欲を大きく挫く。広く使えるはずのプログラムが私有なら、そのプログラムを使う人は大幅に減少するだろう。
プログラムに所有権者を与えることによって、プログラムの社会に対する寄与が全体として下がることは簡単に示せる。プログラムの潜在ユーザーは、使うために料金が必要だということに直面すると、料金を支払うか、プログラムを使わずに済ませるだろう。ユーザーが料金を支払うことにした場合、2つの主体の間でゼロサム転移が発生することになる。しかし、プログラムを使わないことにした人が発生するたびに、この人は誰にも利益を与えずに害を受けることになる。負数と0の合計は、必ず負数になる。
しかし、これによってプログラムを開発するために必要な作業量が減るわけではない。そのため、作業効率、すなわち1時間の作業あたりのユーザーの満足度は下がる。
このことは、プログラムのコピーを作ることと、車、椅子、サンドイッチのコピーを作ることとの決定的な違いを反映している。SF以外の世界には、物体のコピー機はない。しかし、プログラムは簡単にコピーできる。誰もが、ごくわずかの労力で必要なだけのコピーを作れる。物体はそういうわけにはいかない。新しいコピーは、最初のコピーを作ったときとまったく同じように原材料から作らなければならない。
物体の場合、それを使いたくないという人が出ても、販売数が減るということは製品を作るために必要な原材料と労力が減るということであり、無意味ではない。通常、起業コスト、開発コストがかかるのは事実だが、それは生産物全体に分散させることができる。しかし、コピーを作るための限界費用が高ければ、開発コストの部分を追加しても質的な違いはない。そして、限界費用が高い分、通常のユーザーの自由に制限を加えなければならなくなったりはしない。
しかし、無料にできるものに価格を押し付けることは、質的な変化をもたらす。ソフトウェアの頒布に中央集権的に押し付けられた料金は、購買意欲を大きく削ぐ効果を持つ。
さらに、現在行われているような中央集権的な生産は、ソフトウェアのコピーを配る手段としても非効率的である。この方式は、無意味に大きいパッケージに物理的なディスクやテープを収め、大量のパッケージを世界中に出荷し、店舗で販売するというものである。このコストは、業務遂行のための経費になる。実際には、これは所有権者を持つことに起因する無駄の一部である。
あなたとあなたの隣人がともにあるプログラムを実行すると役に立つと思っていたとする。隣人に対する倫理的な配慮からすれば、2人がともにそれを使えるようにしたいと考えるのが当然である。2人のうちの1人だけにプログラムを使うことを認め、もう1人には制限を加えるような提案は、2人の間に仲違いをもたらす。あなたも隣人も、そんなのには耐えられないと思うだろう。
しかし、典型的なソフトウェアライセンス契約に署名するということは、隣人を裏切ることである。「私は、コピーを自分のものにするために、隣人からこのプログラムを奪うことを約束します」と言っているのである。そのような選択を迫られた人々は、自らを正当化する内的心理的な圧力を受け、隣人を助けることの重要性を軽視するようになる。このようにして公共心が失われるのである。これは、プログラムの利用を損なう有形の害悪に対応する心理的社会的害悪である。
多くのユーザーは、共有を拒むのは悪いことだということを無意識のうちに認識しているので、ライセンスや法律を無視して、いずれにしてもプログラムを共有しようとする。しかし、彼らはそうすることに罪悪感を感じることが多い。彼らは、良き隣人であるためには法を破らなければならないことを知っているが、まだ法律の権威を信じているので、良き隣人であること(彼らはまさしくそうなのだが)は、良くないこと、あるいは恥ずかしいことなのだと結論付けてしまう。これもまた一種の心理的社会的害悪だが、ライセンスや悪法に倫理的な力を与えなければ、この害悪からは逃れられる。
プログラマたちも、多くのユーザーが自分の作品の使用を認められていないことを認識することによって、心理的社会的害悪を受ける。彼らは、ひねくれるか問題を否定する方向に走る。プログラマは、技術的に手応えのある仕事について熱烈に語るかもしれないが、「私もそれを使っていいの?」と尋ねられると、途端に顔が曇り、答がノーであることを認める。がっかりする気持ちを避けたければ、普段はそのような問題があることを無視するか、問題の重要性を最小限に見積もるひねくれたスタンスを取るしかない。
レーガン*4時代以来、合衆国でもっとも不足しているのは技術革新ではなく、公共の福祉のために協力して働く意思である。後者を犠牲にして前者を奨励したところで意味はない。
有形の障害の第2の段階は、プログラムを修正できないことである。修正しゃすさは、ソフトウェアが古くからの技術に対して持つ大きな利点の1つである。しかし、ほとんどの市販ソフトウェアは、購入後でも変更できないようになっている。購入者は、ブラックボックスとして使うか、手離すかしかない。それですべてである。
実行できるプログラムは、意味不明の数字の連続から構成されている。プログラムが他の動作をするようにこの数値を簡単に書き換えられる人は、優れたプログラマを含めて決していない。
通常、プログラマは Fortran やCなどのプログラミング言語で書かれたプログラムの「ソースコード」を操作する。ソースコードは、使われているデータやプログラムの部分を区別するために名前を使い、加算の「+」、減算の「-」のような記号で演算を表現する。プログラミング言語は、プログラマが簡単にプログラムを読んだり書き換えたりできるように作られている。例を示すことにしよう。これは、平面上の2点の距離を計算するプログラムである*5。
float
distance (p0, p1)
struct point p0, p1;
{
float xdist = p1.x - p0.x;
float ydist = p1.y - p0.y;
return sqrt (xdist * xdist + ydist * ydist);
}
次に示すのは、私が通常使っているコンピュータの実行可能形式*6で書かれた同じプログラムである。
1314258944 -232267772 -231844864 1634862
1411907592 -231844736 2159150 1420296208
-234880989 -234879837 -234879966 -232295424
1644167167 -3214848 1090581031 1962942495
572518958 -803143692 1314803317
ソースコードは、プログラムのすべてのユーザーにとって(少なくとも潜在的に)役に立つ。しかし、ほとんどのユーザーは、ソースコードのコピーを持つことを許されない。通常、私有プログラムのソースコードは、所有権者によって秘密に保たれているが、それは他人がそのソースコードから何かを学ぶのを防ぐためである。ユーザーは、コンピュータが実行する理解不能な数値のファイルだけを受け取る。これは、プログラムの所有権者だけがプログラムを変更できるということである。
以前、ある友人が銀行でプログラマとして6か月働いていたときのことを話してくれた。それは、市販されているものとよく似たプログラムを書く仕事だった。彼女は、市販プログラムのソースコードが手元にあれば、会社のニーズに合わせて修正を加えるのは簡単なことだと思っていた。銀行は、そのためなら喜んでお金を払っただろうが、それは認められていなかった。ソースコードは秘密にされていたのである。そこで、彼女は7か月の無駄な仕事をしなければならなかった。この仕事は、国民総生産の中には数えられるが、実際にはただの浪費である。
MIT 人工知能研究所(AIラボ)は、1977年ごろ、Xerox から贈り物としてグラフィックスプリンタを受け取った。このプリンタは、私たちが多くの便利な機能を追加したフリーソフトウェアによって動作していた。たとえば、このソフトウェアは、印刷ジョブが終了すると同時にユーザーに通知を送った。紙詰まりや用紙切れなどのトラブルが発生すると、このソフトウェアは、印刷ジョブをキューイングしたすべてのユーザーに直ちに通知を送った。これらの機能は、スムーズな運用の役に立っていた。
その後、Xerox は AIラボに新しいより高速なプリンタを送ってきた。最初のレーザープリンタの1つである。このプリンタは、別個の専用コンピュータで実行される私有ソフトウェアによって駆動されていたので、私たちはお気に入りの機能を何1つ追加できなかった。印刷ジョブが専用コンピュータに送られたときに通知を送るように設定することはできたが、印刷ジョブが実際に印刷されたときには通知を送れなかった(そして、通常遅れはかなりなものだった)。ジョブが本当に印刷されたタイミングを知る方法はなかった。推測できただけである。紙詰まりが発生しても誰にも通知は送られなかったので、プリンタはトラブルを起こしたまま1時間も放置されていることがよくあった。
AIラボのシステムプログラマたちは、おそらくプログラムのオリジナルの作者たちと同じくらいの能力は持っていたので、そのような問題を解決することは可能だったはずだが、Xerox はこれらの問題を解決することに関心を持たず、私たちの邪魔をしたので、私たちは問題を受け入れざるを得なかった。これらの問題は、最後まで解決されなかったのである。
ほとんどの優れたプログラマは、この種の欲求不満を経験している。銀行ならゼロから新しいプログラムを書いて問題を解決するだけの余裕があるが、一般的なユーザーは能力の有無にかかわらずあきらめるしかない。
あきらめることは、心理的社会的害悪の原因となる。独立独行の精神が損なわれる。自分のニーズに合うように改造できない家に住むのは、気持ちよくないものである。服従し、落胆することは、人生の他の側面にも影響を与える。このような感じ方をする人々は不幸であり、良い仕事をしない。
レシピがソフトウェアと同じように死蔵されていたらどうなるか想像してみていただきたい。あなたが、「このレシピから塩を取り除くにはどうしたらよいのでしょうか?」と尋ねると、グランシェフが「俺の頭脳と舌の申し子である俺のレシピに土足で踏み込んで侮辱するとはどういう了見だ。お前に俺のレシピを訂正しろなどと言われる筋合いはねえ!」と答える。
「しかし、医者に塩を取るなと言われたんです。私はどうしたらいいんですか。私のために塩を取り除いてくれませんか」
「ああ、喜んでやってやろう。料金はたったの5万ドルだ(所有権者は変更に対する独占権を持っているので、料金は高額になりがちである)。しかし、今は時間がない。俺は海軍省から注文のあった艦船用ビスケットの新レシピ作成委員会で忙しいんだ。お前の注文を聞いてやれるのは、だいたい2年後だな」
有形の害悪の第3の段階は、ソフトウェア開発に影響を与える。かつてのソフトウェア開発は、発展的な作業だった。つまり、ある人が既存のプログラムを取り出して新機能のために一部を書き換え、他の人が別の機能のために別の部分を書き換えるというようなことを20年以上も続けてきたのである。プログラムの部分部分は、他のプログラムのスタート地点となるべく、「盗用」された。
所有権者の登場によって、このような発展は阻害され、プログラムを書くときにはいちいちゼロから書かなければならなくなった。所有権者の存在は、新人が既存のプログラムから役に立つテクニックや大規模なプログラムの構築方法を学ぶことも不可能にしてしまった。
所有権者は、教育の阻害要因にもなっている。私は、大規模プログラムのソースコードを見たことのないコンピュータ科学科の優等生に会ったことがある。彼らは小さなプログラムを書くのは得意だが、他のプログラマがどのようにして大規模プログラムを書いたかを見ることができないので、大規模プログラムを書くために必要な別の種類の技能を学ぶことができないでいる。
知的な分野では、他人の肩に乗ることによってより高い地点に到達できるようになる。しかし、ソフトウェアの分野ではこれがもう一般的な形では認められない。自分と同じ会社の他人の肩に乗れるだけである。
これに伴う心理的社会的害悪は、科学における協力精神への影響である。かつては、科学者たちの協力精神は、それぞれの祖国が戦争をしていても協力を忘れないほど強固なものだった。太平洋の孤島の研究所を捨ててきた日本の海洋学者たちが、侵入してきたアメリカ海軍のために、苦心して自らの仕事を保存し、大切に使ってくれるようにというメモを残してきたのは、まさにこの協力精神があったからである。
利益を求めるための紛争は、国際紛争によっても失われなかったものを破壊してしまった。最近のさまざまな分野の科学者は、論文の中で他者が実験を再現できるだけの情報を開示しない。自分が成し遂げたことに読者が驚嘆できる程度にしか情報を開示しないのである。このことは、コンピュータ科学では紛れもない事実である。報告されるプログラムのソースコードは、通常秘密にされているのである。
ここまで、プログラムのコピー、変更、構築を妨げることが及ぼす影響を論じてきた。破壊がどのように行われるかについては具体的に触れてこなかったが、それは結論に影響を与えないからである。コピープロテクション、著作権、ライセンス、暗号化、ROMカード、ハードウェアシリアル番号などのどの方法で行われたとしても、使用の妨害に成功したら、それは害悪を生んでいる。
ユーザーたちは、これらの方法のうち、一部のものは他のものよりも悪質だと考えているようだが、私からすれば、もっとも憎むべき方法は、その目的を達成できる方法だと言いたい。
プログラムの所有権、すなわちプログラムの変更やコピーを制限する権力がいかに大きな障害になるかを示してきた。その反動的な効果は、広く行き渡っており、深刻である。それゆえ、社会はプログラムの所有権者を持つべきではない。
同じことは、社会が必要としているのはフリーソフトウェアで、私有ソフトウェアはその粗悪な代用品に過ぎないという形で理解することもできる。代用品を奨励することは、必要なものを手に入れるための合理的な方法ではない。
ヴァーツラフ・ハベルは、「成功のチャンスだからではなく、良いからという理由を持つもののために働け」と言っている。私有ソフトウェアの製造というビジネスは、狭い意味での成功のチャンスを提供するが、社会にとって良いものではない。
ソフトウェア開発を奨励する手段として、著作権を捨てたとすると、最初は開発されるソフトウェアの数が減るかもしれないが、そのソフトウェアはより有益なものになるだろう。ユーザーに与えられる満足度全体が少なくなるかどうかについては何とも言えないが、もしそのようなことがあるなら、またいずれにしてもユーザーの満足度を上げたいと思うなら、料金所以外にも道路建設の資金調達方法があるのと同じように、開発を奨励する別の方法はあるはずだ。しかし、その方法について論じる前に、人為的な奨励策が本当に必要なのかを問うてみたい。
お金を手にするということ以外にほとんどの人が参入する理由を見つけられないような仕事がある。たとえば、道路建設がそうである。その一方で、金持ちになるチャンスはほとんどないが、仕事に魅力があるからとか、社会的に価値が認められているからという理由で、人々が喜んで飛びつく学問や芸術の仕事もある。たとえば、数学的論理学、クラシック音楽、考古学、働く人々の政治的オーガナイザーなどがそうである。人々は、お金が得られるごくわずかの地位を求めて熾烈な競争を繰り広げるが、それらの地位さえ、それほどのお金が得られるわけではない。そのような競争は、苦しいというよりも寂しい色合いを帯びる。彼らは、その分野で仕事をするチャンスを得るために、余裕があれば自らお金を払うことさえある。
そのような分野は、豊かになる可能性を示し始めると、一夜のうちに変身してしまうことがある。ある人物が豊かになると、他の人々も同じチャンスを要求するようになる。早晩、誰もがかつては楽しみのためにしていたことのために大量のお金を要求するようになる。さらに数年がたつと、その分野に関わりを持つすべての人々は、大金が見込めないような仕事がその分野で成り立つはずがないと自嘲的に考えるようになる。彼らは、特別な恩恵、権力、独占権が必要だというように言いながら、そのような見返りを可能にすることをソーシャルプランナーたちに吹き込む。
この変化は、この10年間にコンピュータプログラミングの世界で起きたことである。15年前*7には、「コンピュータ耽溺症」についての論文があったくらいだ。「オンライン」で1週間に100ドル費やすユーザーが話題になっていた。それは、一般にプログラミングが好きで結婚生活を壊してしまう人々がいるというように理解されていた。今日では、一般に高い報酬が与えられなければ、誰もプログラムを心かないと理解されている。人々は、15年前に知っていたことを忘れてしまったのである。
特定の時点で、ある分野のほとんどの人々が高給でなければ働かないということが事実であっても、いつまでもそれが続くわけではない。社会が刺激を与えれば、変化の波によって事態が逆転する可能性はある。大儲けの可能性を取り除き、それからしばらくして人々が態度を改めるなら、彼らは再び達成の喜びのために熱心に仕事をするようになるだろう。
「プログラマに報酬を与えるためにはどうしたらよいか」という問題は、彼らに大金を与えるかどうかという問題ではないということがわかれば、簡単な問題になる。ただ生活できるようにするための資金なら、簡単に用意できる。
プログラマに報酬を与える組織は、別にソフトウェアメーカーでなくてもよい。同じことができる他の組織はすでにたくさんある。
ハードウェアメーカーは、ソフトウェアの利用形態をコントロールできなくても、ソフトウェア開発を支援することが重要なことだと考えている。1970年には、ハードウェアメーカーのソフトウェアの大半はフリーだったが、それは彼らがソフトウェアに制限を加えることを考えなかったからである。今日、ハードウェアメーカーがコンソーシアム (協力組織)を結成する意欲を高めつつあることは、彼らにとってソフトウェアの所有権を持つことがそれほど重要ではないことを示している。
大学は、さまざまなプログラミングプロジェクトを組織している。今日の大学はプロジェクトの成果を売ることが多いが、1970年代にはそのようなことはなかった。大学がソフトウェアを売ることを認められていなければ、大学がフリーソフトウェアを開発するだろうということに疑問の余地があるだろうか。これらのプロジェクトは、現在私有ソフトウェア開発を支援している政府の契約や助成金で支援できるはずのものである。
今日では、大学の研究者が助成金を受け取ってシステムを開発し、ほとんど完成というところまで作業を進めたところで、それを「完成した」と称し、企業を起こしてそこで本当にプロジェクトを完成させて、使えるものにするということがよくある。彼らの中には、未完成バージョンを「フリー」と宣言する者もいるが、徹底的に堕落した分子は、大学から排他的なライセンスを手に入れる。これは秘密ではない。関係者全員が公然と認めていることである。しかし、このような誘惑にさらされていなければ、研究者たちもそれぞれの研究をしていたはずである。
フリーソフトウェアを開発しているプログラマたちは、ソフトウェアに関連するサービスを販売することによって、生活をしていける。私は、新しいハードウェアにGNUCコンパイラを移植するため、また、GNU Emacs のユーザーインターフェイスに拡張を加えるために雇われたことがある(私は、完成後には、これらの改良点を公開している)。私は、教室で授業を行うことによっても給与を得ている。
このようにして働いているのは、私だけではない。現在、他のタイプの仕事を一切せずに、成功し、成長している企業が1つ存在する。ほかにも、GNU システムのフリーソフトウェアにサポートを提供している営利企業がいくつかある。これは、独立したソフトウェアサポート産業の始まりである。この産業は、フリーソフトウェアが主流になれば、大きく成長するだろう。この産業は、私有ソフトウェアでは一般に得られないような選択肢を裕福でないユーザーにも提供する。
フリーソフトウェア財団(FSF)のような新しい*8組織も、プログラマに資金を提供できる。財団の基金の大半は、メールでディスクやテープを購入したユーザーから集められたものである。テープ上のソフトウェアはフリーだが、それはすべてのユーザーがそれをコピー、変更する自由を持っているということで、多くの人々はコピーを入手するためにお金を払っている(「フリーソフトウェア」のフリーは、自由のことで価格のことではないということを思い出していただきたい)。すでにコピーを持っているユーザーが、FSFに貢献するための手段としてテープを注文している例もある。FSFは、コンピュータメーカーからかなり高額の寄付も受けている。
FSF は慈善団体であり、収入はできる限り多くのプログラマを雇うために使われる。企業として設立され、一般人に対して同じフリーソフトウェアを同じ料金で頒布していれば、創立者は今ごろ莫大な財産を作っていただろう。
FSF は慈善団体なので、プログラマは他の職場で得られる報酬の半分で仕事をすることが多い。彼らがそれでも仕事をするのは、私たちが官僚主義に縛られておらず、自分の仕事が自由に使われることに満足を感じているからである。何よりもまず、彼らはプログラミングが楽しいから仕事をする。さらに、私たちのために多くの役立つプログラムを書いたボランティアがたくさんいる(テクニカルライターのボランティアさえいる)。
このことは、プログラミングが音楽や芸術と並んであらゆる分野の中でもっとも魅力的な仕事だということを証明している。私たちは、プログラムを書く人間がいなくなることを恐れる必要はない。
ソフトウェアのユーザーがその支援のために貢献しなければならないという義務感を感じるのは不思議なことではない。フリーソフトウェアの開発はユーザーの活動に貢献しているのであり、ユーザーが開発を継続できるように資金を提供するのは公平なことでもあり、長期的な利益をもたらすことでもある。
しかし、このことは私有ソフトウェア開発者には当てはまらない。阻害は、報酬ではなく懲罰に値する。
ここに矛盾がある。役に立つソフトウェアの開発者はユーザーの支援を受ける資格を持つが、この倫理的な義務感を要求に転化させると、義務感の基礎が失われてしまうのである。開発者は報酬に値するか報酬を要求するかで、両方を兼ねることはできない。
この矛盾に直面した倫理的な開発者は、報酬に値するように行動するに違いないと私は思うが、ユーザーに寄付を依頼することも考えてよいと思う。ユーザーは、市民ラジオや市民テレビを支援したときと同じように、いずれ強制されなくても開発者を支援することを学ぶはずである。
ソフトウェアがフリーでも、プログラマは残るはずだが、その数はおそらく減るだろう。これは、社会にとって悪いことだろうか。
必ずしもそうとは言えない。今日の先進国では、1900年よりも農民の数は減ったが、その少ない農民が以前よりも多くの食料を消費者に提供できるようになったので、農民の減少が社会にとって悪いことだとは考えていない。私たちは、これを生産性の向上と呼ぶ。フリーソフトウェアは、あらゆる段階でソフトウェアの生産性を高めるので、プログラマの数を大幅に減らした上で、需要を満足させるはずである。
プログラマの雇用を減らすと主張して協同作業に反対している人々は、実際には生産性の向上に反対しているのである。にもかかわらず、それらの人々でさえ、ソフトウェア産業は生産性の向上を必要とするという広範に支持されている考え方を受け入れるのである。これは一体どういうことだろうか*9。
「ソフトウェアの生産性」は、2つの意味を持つことができる。すべてのソフトウェア開発全体の生産性と個々のプロジェクトの生産性である。全体的な生産性は社会が向上させたいと思っているものであり、そのためのもっとも直截的な方法は、生産性を低下させる協力に対する人為的な障害を取り除くことである。しかし、「ソフトウェアの生産性」の研究者たちは、第2の狭い意味での用語しか相手にしていない。そのため、生産性の向上のためには、難しい技術的な前進が必要となるのである。
人々が社会でライバルを出し抜くために競争しようとすることは避けられないことなのだろうか。おそらくそうだろう。しかし、競争自体は有害ではない。有害なのは、闘争である。
競争には無数の方法がある。競争は、他人の成果を乗り越え、頂上を目指すことを意味することがある。たとえば、昔はプログラムの達人たちの間で競争があった。コンピュータにもっとも驚くべき仕事をさせられるのは誰かとか、特定の仕事のためにもっとも短くもっとも高速なプログラムを書けるのは誰かを競ったのである。この種の競争は、良きスポーツマン精神が保たれる限り、すべての人々の利益になる。
建設的な競争は、人々に大きな力を発揮させる動機として充分である。地球上のすべての国を訪問した最初の人物になるために競争している人々がいる。中にはそのために大金を使うような人さえいる。しかし、彼らは船長に賄賂を贈って砂漠の島にライバルを置き去りにさせるようなことはしていない。もっとも優れた人物が勝つことに満足している。
競争者が自分の前進ではなく、互いに相手の足を引っ張り合おうとすると、競争は闘争になる。それは、「もっとも優れた人物が勝つようにする」という態度が「もっとも優れているかどうかにかかわらず、私を勝たせてくれ」という態度に変わったときである。私有ソフトウェアが有害なのは、それが競争の1つの形態だからではなく、社会を構成する市民の間での闘争の形態だからである。
ビジネス上の競争が必ず闘争になるわけではない。たとえば、2つの文房具店が競争するとき、それぞれの店の全精力は、ライバルを妨害することではなく、それぞれの仕事を向上させることに注がれる。しかし、これは企業倫理に特に力を入れているわけではない。物理的な暴力を持たないこの種の業務には、闘争を招くような領域がほとんどないのである。しかし、ビジネスのすべての分野が、このような性質を共有しているわけではない。すべての人々が前進することを助けられるような情報を隠匿することは、一種の闘争である。
ビジネスのイデオロギーは、人々が闘争の誘惑に抵抗するのを助けるわけではない。反トラスト法、誇大広告防止法などは、闘争のいくつかの形態を禁止しているが、それを一般化して闘争全般の禁止という原則を導いているわけではない。経営者たちは、明示的に禁止されていない他の闘争形態を発明してくる。社会資源は、経済的な内戦とも呼ぶべきものによって浪費されている。
アメリカでは、もっとも極端な形の自由放任の利己主義者以外の人間は、このような非難を受けることが多い。たとえば、自由世界の他の先進国と同様の国民健康保険制度を支持すると、このような非難を受ける。同じく先進国では当たり前になっている芸術の国家補助を支持すると、やはりこの非難を受ける。アメリカでは、市民が公共の福祉を向上させる義務を持つという思想は共産主義とみなされる。しかし、これらの思想に類似点があるだろうか。
ソ連で実践されている共産主義は、すべての活動が統制下にある中央集権的な制度である。その目的は、全体の福祉のためとされているが、実際には共産党の党員のためである。そして、ソ連では、コピー装置は違法コピーを禁止するために厳重にガードされている。
アメリカのソフトウェア著作権制度は、プログラムの頒布を中央集権的な管理統制のもとに置き、違法コピーを防ぐために、自動コピー防止機能でコピー装置をガードしている。
それに対し、私は、人々が自由に自分の行為を決められるような制度を築くために働いている。特に、隣人を助ける自由、日常生活で使う道具を修正、改良する自由を守ろうとしている。自発的な協力と分権を基礎とする制度である。
ロシア共産主義との類似から判断するなら、共産主義者はソフトウェアの所有権者たちのほうだ。
本稿では、ソフトウェアのユーザーが作者、ましてや作者の雇用主などよりも重要でないということはありえないという前提で話を進めてきた。つまり、どの方向に進むのがもっとも良いかを決めるときに、ユーザーの利益やニーズも同等の重さを持つということである。
この前提条件は、普遍的に受け入れられているわけではない。多数派は、作者の雇用主が他の誰よりも根本的に重要だと考えている。たとえば、ソフトウェアが所有権者を持つことの目的は、作者の雇用主に、地位に見合うだけの利益を与えることだと言っている。一般人にどのような影響を与えるかには無頓着なのだ。
これらの前提を証明したり反証したりすることに意味はない。証明を成立させるためには、前提の共有が必要である。そのため、私が言おうとしていることの大半は、私と同じ前提を共有している人々か、少なくともこれらの前提がどのような結果を生み出すかに関心を持っている人々以外には届かない。所有権者は他の誰よりも重要だと信じている人々にとって、この論文は無意味だろう。
しかし、特定の人々が他の誰よりも重要だという前提条件を多数のアメリカ人が受け入れるとしたら、それはなぜなのだろうか。その理由の一部は、このような前提がアメリカ法の伝統の一部だと信じられていることにあるだろう。この前提を疑うことは、社会の基盤に挑戦することだと感じる人がいるかもしれない。
そのような人々にとって重要なことは、その前提条件がアメリカ法の伝統ではないことを学ぶことである。そんな伝統は決して存在しない。
憲法は、著作権の目的が「科学と工芸の進歩を促進する」ためにあると言っており、最高裁は、Fox Film-Doyal 裁判の判決でこの内容を拡張して「合衆国の唯一の関心と[著作権] 独占が認められている主要な目的は、作者の労力から国民が引き出せる利益全般にある」と述べている。
私たちは、憲法や最高裁に同意しなければならないわけではない(以前、両者はともに奴隷制を容認していた)。だから、これらの見解が所有権者至上主義の前提条件の反証になるわけではない。しかし、所有権者至上主義が、伝統的に認められた見解ではなく、極右的な前提だということがわかれば、訴求力も弱まるのではないだろうか。
社会は、隣人を助けることを奨励するものであってほしい。しかし、他人の邪魔をしたことに対して誰かに報酬を与えるたびに、あるいはそのようにして富を得た人物に敬意を表するたびに、私たちは逆のメッセージを送ることになるのである。
ソフトウェアの死蔵は、個人の利得のために社会の福祉を軽視する私たちの一般的な意思の一つの現れである。このような社会軽視の系譜は、ロナルド・レーガンからジム・バッカー*10、イワン・ボイスキー*11、エクソン*12に、失敗した銀行から失敗した学校にたどることができる。この傾向の規模は、ホームレス人口と獄中人口によって測ることができる。私たちは他人が自分を助けてくれないのを見れば見るほど、他人を助けるのはばかばかしいと考えるようになる。そのため、反社会的精神は、自力で成長するのである。社会はこのようにして腐敗、崩壊していく。
ジャングルのような過酷な生存競争の場で生きるのがいやなら、私たちは自らの態度を改めなければならない。私たちはまず、良き市民とは、適切なときに協力を惜しまない者で、他人からうまく物を奪い取る者のことではないというメッセージを送らなければならない。私は、フリーソフトウェア運動が、この流れに寄与することを期待している。少なくとも1つの分野では、ジャングルを、自発的な協力を奨励して実現する効率的な体制に変えていきたい。
初出:第1稿は1992年に執筆。このバージョンは、"Free Software, FreeSociety: Selected Essays of Richard M. Stallman", 2002, GNU Press(http://www.gnuprèss.org/); ISBN 1-882114-98-1の一部である。
本文に一切の変更を加えず、この著作権表示を残す限り、この文章全体のいかなる媒体における複製および頒布も許可する。