English [en]   العربية [ar]   български [bg]   català [ca]   Deutsch [de]   español [es]   فارسی [fa]   français [fr]   hrvatski [hr]   magyar [hu]   Bahasa Indonesia [id]   italiano [it]   日本語 [ja]   한국어 [ko]   മലയാളം [ml]   Nederlands [nl]   polski [pl]   português do Brasil [pt-br]   română [ro]   русский [ru]   Türkçe [tr]   українська [uk]  

原文は英語で、これはその翻訳です。

コピーレフト: 実際的な理想主義

リチャード・ストールマン

人間が何らかの決断を下すとき、それはその人の価値観や目標に基づいています。目標や価値観は人によって様々で、名誉や利益、愛、生存、愉しみ、そして自由は善き人が抱きうる目標のごく一部に過ぎません。目標が原則の問題であるとき、わたしたちはそれを理想主義と呼びます。

自由ソフトウェアに関するわたしの仕事の動機となっているのは、自由と協力を広めるという理想主義的な目標です。わたしは、自由ソフトウェアの普及が促進され、協力を禁じるプロプライエタリなソフトウェアが自由ソフトウェアで置き換えられて、それによってわたしたちの社会がより良いものになることを望んでいます。

これが、GNU一般公衆ライセンスが現在のかたち、すなわちコピーレフトを主張するように書かれている基本的な理由です。GPLで保護されたプログラムに追加されたコードは、たとえそれが別のファイルに納められたとしても、全て自由ソフトウェアでなければなりません。わたしは、他の人も自分の書いたソフトウェアを自由にするよう奨励したいので、わたしが自分で書いたコードは自由ソフトウェアでは利用できるようにしておき、プロプライエタリなソフトウェアでは利用できないようにしています。わたしは、プロプライエタリなソフトウェアの開発者たちが著作権をわたしたちが共有することを止めさせるために利用している以上、わたしたち協力する者も著作権を他の協力者たちが有利になるよう使うことができると考えています。協力者は、わたしたちのコードを使うことができるのです。

しかし、GNU GPLを使う人誰しもがこのような目標を抱いているわけではありません。何年も昔のことですが、ある友人が、コピーレフトが主張されたプログラムをコピーレフトではない条件の下で再リリースするよう頼まれたことがあります。彼は大体次のように返事しました。

「僕は自由ソフトウェアの作業をすることもあるし、プロプライエタリなソフトウェアの仕事をすることもある。で、プロプライエタリなソフトウェアの仕事をするときには、僕は金銭的報酬をもらうのが当然と考えているんだ。」

彼は、ソフトウェアを共有するコミュニティとは自分のつくったものを喜んで共有したいと思っていましたが、わたしたちのコミュニティには出入り禁止の独占的な製品をつくる企業に、自分の成果を施し物のごとくただ差し出すことには何の理由も無いと考えていました。彼の目標はわたしのとは違いましたが、彼はGNU GPLは自分の目標にも有用だと判断していたのです。

もしあなたが何かをこの世界で達成したいならば、理想主義だけでは十分ではありません。あなたが目標を達成するには、そのために使える手段を選ぶ必要があります。言い換えれば、あなたは「実際的」になる必要があるのです。GPLは実際的なんでしょうか。いくつかの成り行きを見てみましょう。

GNU C++のケースを考えてみます。どうやってわたしたちは自由のC++ コンパイラを手に入れたのでしょうか。それは、GNU GPLがそれが自由でなければならないと規定していたからに過ぎません。GNU C++は、ある業界コンソーシアム(MCC)によってGNU Cコンパイラを基に開発されました。MCCは通常、その成果をできる限りプロプライエタリにするのですが、彼らはC++のフロントエンドを自由ソフトウェアにしました。なぜなら、GNU GPLはそれが彼らが自分の成果をリリースできる唯一の道だと規定していたからです。C++フロントエンドは新しく書かれたファイルを多く含んでいましたが、それらはGCCとリンクされるようになっていたので、GPLはそれらのファイルにも適用されました。わたしたちのコミュニティへ利益があったことは明らかです。

GNU Objective Cはどうだったでしょう。NeXTは、当初このフロントエンドをプロプライエタリにしようとしていました。彼らは、自社開発の部分を.oファイルとしてリリースし、ユーザがそれらをGCCの残りの部分とリンクできるようにしておけば、GPLの諸条件を回避できると考えていました。しかしわたしたちの弁護士は、これでは条件を迂回することにはならず、許されることではないと述べました。このため、彼らはObjective Cフロントエンドを自由ソフトウェアにしたのです。

以上の例は何年も前に起きたことですが、その後もGNU GPLはわたしたちにより多くの自由ソフトウェアをもたらし続けています。

GNUライブラリの多くはGNU劣等一般公衆ライセンスによって保護されていますが、全てではありません。通常のGNU GPLで保護されているGNU ライブラリの一つが、コマンドライン編集機能を実装したReadlineです。かつて、わたしはある自由ではないプログラムがReadlineを使うよう設計されているのに気づき、その開発者にそれは許されないことだと告げました。彼はコマンドライン編集の機能をプログラムから排除することも出来たのですが、彼が実際に行ったのはそのプログラムをGPLの下で再リリースすることでした。現在そのソフトウェアは自由ソフトウェアになっています。

GCC(あるいはEmacsやBash、LinuxなどGPLで保護されたあらゆるプログラム)を改良するプログラマは、しばしば企業や大学に雇われています。プログラマが彼らの書いた改善点をコミュニティに還元し、そのコードを次のリリースで取り込んで欲しいと思っても、上司が「ちょっと待て、君のコードは我が社に帰属するんだぞ! 我が社は共有なんてしたくないのだ。我々は君が改良したバージョンをプロプライエタリなソフトウェア製品にすることに決めた。」などと言うかもしれません。

ここでGNU GPLが救援に駆けつけます。プログラマは上司に、そのようなプロプライエタリソフトウェア製品は著作権侵害であることを示せるので、上司は自分には二つの選択肢しか残されていないことに気づきます。すなわち、新コードを自由ソフトウェアとしてリリースするか、全く発表しないかのどちらかです。こうなると、ほぼ確実に上司はプログラマにやりたいようにさせるので、コードは次のリリースに加えられます。

GNU GPLはミスターお人好しではありません。人々が時折やりたいと思うことのいくつかには「ノー」を突きつけます。ユーザの一部には、これを良くないことだと言う人もいます—GPLが「自由ソフトウェアのコミュニティに引き込む必要がある」プロプライエタリなソフトウェアの開発者を「排除」しているというのです。

しかし、わたしたちが彼らをコミュニティから排除しているわけではありません。彼らが、自分から入ってこないことを選択しているのです。彼らが自分のソフトウェアをプロプライエタリにするということが、 すなわち彼らがコミュニティの外に留まるという決定を下していることに他なりません。わたしたちのコミュニティの中に入るということは、わたしたちと協力するということです。わたしたちには、参加したくない人々まで「わたしたちのコミュニティに連れ込む」ことは出来ません。

わたしたちにできることは、プロプライエタリなソフトウェアの開発者たちが参加したくなるような誘因を提供することです。GNU GPLは、わたしたちの有する既存ソフトウェアを誘因として利用できるように設計されています。「もしあなたが自分のソフトウェアを自由にするならば、このコードを利用することができます」。もちろん、これで彼らの全てが考えを変えるとは思えませんが、うまくいくこともあります。

プロプライエタリなソフトウェア開発はわたしたちのコミュニティには貢献しませんが、その開発者たちはわたしたちから施し物を欲しがることがしばしばです。自由ソフトウェアのユーザは自由ソフトウェアの開発者にそのエゴを満たすようなこと—たとえば表彰や感謝—をしてあげることができますが、特に企業があなたに、「あなたのパッケージをわたしたちのプロプライエタリなプログラムの中に入れさせてくれるだけでいいんだ、そうすればあなたのプログラムは何千もの人々によって使われることになるんだよ!」などというとき、それは非常に魅力的に聞こえるものです。この誘惑は強力なものですが、長い目で見ればわたしたちはこれに抵抗したほうが良いのです。

誘惑や圧力は、それらが間接的に加えられると認識しづらいものです。特に、プロプライエタリなソフトウェアの要求を満たすようなポリシーを採択した自由ソフトウェアの組織を通して行われる場合には。Xコンソーシアム(とのその後継者であるOpen Group)が良い例です。プロプライエタリなソフトウェアを作る企業によって資金提供されたこの団体は、プログラマたちに対し10年間に渡って、コピーレフトを使わないよう熱心に説得し続けてきました。Open GroupがX11R6.4を自由ではないソフトウェアとしようとしたとき、圧力に抵抗したわたしたちは、屈しなかったことをうれしく思っています。

1998年9月、X11R6.4が自由ではない頒布条件の下で発表されてから数ヶ月後、Open Groupはその決定を覆し、X11R6.3で使われていたのと同じコピーレフトではない自由ソフトウェアライセンスの下でX11R6.4を再リリースしました。Open Groupよありがとう—しかし、このような後の撤回劇も、わたしたちが「制限を追加することが可能である」という事実から引き出した結論を無効とするものではありません。

実際的に言えば、より長期的な目標について考えると、この種の圧力により強い意志で抵抗することができるようになるでしょう。もしあなたが自由と、あなたが断固とした姿勢を保つことによって建設できるコミュニティに自分の関心を集中すれば、あなたは圧力に屈しないだけの強さを得るでしょう。「なにものかのために戦え、さもなくばなんにでも負けるだろう」

もし冷笑家が自由を嘲り、コミュニティをあざ笑うならば…もし「抜け目のない現実主義者」とやらが、利益が唯一の崇高な目標だと言うならば…そういう手合いは放って置いて、従来通りにコピーレフトを使いましょう。


この小論は自由ソフトウェア、自由な社会: リチャード・M・ストールマン小論選集に収録され、出版されました。

[FSFロゴ]「わたしたちのミッションは、コンピュータ・ソフトウェアを利用、研究、コピー、改変、再配布する自由を維持、保護、促進し、自由ソフトウェアの利用者の権利を擁護することです。」

フリーソフトウェアファウンデーションはGNUオペレーティング・システムの主な組織的スポンサーです。GNUとFSFを支持しよう: マニュアル、関連グッズを買う賛助会員となってFSFに参加する、もしくは寄付をする(直接FSFへまたはFlattrで)。

先頭へ戻る