IT@RIETI

RIETI政策シンポジウム:「インターネット時代の著作権」

基調講演:「自由なソフトウェアの未来」(仮訳)

リチャード・ストールマン氏 (GNUプロジェクト)

今日はフリーソフト、そしてその倫理・社会的・政治的な重要性について、またその経済的帰結についてお話ししたいと思います。

フリーソフトは自由に関わる問題です。"Free"という言葉が英語では二つの意味を持つので、わかりにくいのですが、幸運なことに日本語では二つの違う意味になっています。つまり、あなたが日本語で"Jiyuu Na Sofuto"と言えば、これは価格の問題ではなく、自由(Freedom)について語っていることがすぐに分かります。

だから、私はみなさんに、わかりにくい「フリーソフト」ではなく、日本語の明瞭な意味の「自由なソフトウェア」という言葉を使うように促したいと思います。

自由なソフトウェア(※以下、「フリーソフトウェア」は「自由なソフトウェア」と訳出した。)という言葉を使う理由は非常に単純です。自由な世界に生きるために、そして特に他の人を立派に扱うことの自由のためということです。自由でないソフトウェアはあなたを無力で、分割された状態に追いやります。つまりそのソフトウェアが何を実行しているかさえ知らされないのです(開発者の言葉を信じることは出来ますが)。また、そのソフトウェアを気に入らない場合でも、ソフトウェアを変更することは出来ません。開発者は最善の努力をするでしょうが、それでも完璧はあり得ないのです。私はプログラムを書けますが、私のプログラムはあなたの望むものに近いかも知れない。しかしそれは必ずしもあなたの目的に沿って書かれているとは限らないのです。

誰もすべてを予想することなど出来ないのです。私はプログラムを書く際に最高の知りうる知識を動員していますが、あなたも良いアイデアを持っているでしょう。誰もが常に正しいというわけではないのです。

自由でないソフトウェアを使っていると、あなたはたぶん立ち往生(※Stuck)し、自由でないソフトウェア故に苦しまなければなりません。そして最も重要なことですが、自由でないソフトウェア故にあなたは他の人とソフトウェアを(※ソースコードレベルで)共有することが出来ません。この社会は、助け合いに依存しています。あなたが困ったときに隣人に助けを求めるのは有益です。もちろん、いつも、誰もに他の人を助けろと強制できませんが、もしあなたに友人が居るなら、しばしば助けてくれることがあるでしょう。もちろん、彼らを助けたいときがあるなら助けた方がいいことは言うまでもありません。

それでは、誰かからも助けてもらうことが出来ないと言われるような状況とはどういうことなのでしょうか?ここにある有益な知識があるとします。その知識を共有することで、あなたの隣人を助けられるかも知れないが、その共有を禁じられているような場合です。これは社会契約への攻撃であり、社会を互いに助け合えない個々人に分解するようなものです。

これとは対照的に自由なソフトウェアは、あなたが4つ(のレベル)の本質的な自由を持っていることを意味しています。

  • 自由レベルゼロは、あなたがプログラムをどのような目的にも、好きなやり方で実行できるというものです。
  • 自由レベル1は、自分の目的のために改造をしたり、プログラムが何をしているか調べるためにソースコードを好きに学ぶ自由です。
  • 自由レベル2は、ソースコードを配布し隣人と共有し、彼らを助ける自由です。
  • 自由レベル3は、(その(自由な)ソフトウェアの)改善されたバージョンを配布することでコミュニティを構築することを支援する自由です。このことにより他の人が改善バージョンを代わりに使用でき、あなたの助力から利益を得ることができるようになります。

これらの自由により、ユーザは使用するソフトウェアをコントロールできます。
これらの自由が欠けている場合、ソフトウェアの所有者はソフトウェアばかりか、ユーザをもコントロール下においてしまうのです。

我々は、本当はコンピュータはそれ自身、意思決定を行わないことを知っています。彼らはそれを扱う人間から命令されたことを行うのです。しかし、誰がその命令を行うのでしょうか?あなたがコンピュータを使っているとき、あなたがコンピュータに何をするかを告げることができますか?(もしかして)誰か他の人がそれを告げているのではありませんか? いったい、誰があなたのコンピュータを(真に)コントロールしているのですか? この問題はフリーソフトウェアの(根幹の)問題です。自由レベルゼロ、1,2,3という自由なソフトウェアの定義に係る4つの自由が重要なのは、市民が自分のコンピュータをコントロールするために必要な事項だからです。自由レベルゼロは、あなたがコンピュータでやりたい仕事を実行するために必要です。自由レベル1はあなたがコンピュータに仕事を行わせるために必要なソフトウェアを書く際に必要です。これが無ければ、あなたは立ち往生するでしょう;そして、あなたは(自由でない)ソフトウェアの奴隷になってしまうのです。

しかし、全ての人がプログラマではありません。もし我々が自由レベルゼロしか持っていなかったら、プログラマはソフトウェアをやりたいように改変出来なかったでしょう。ただし、もしそれぞれのプログラマが個人的にソフトウェアを改変できるとしても、それでは真にコンピュータをコントロールしているとはいえないでしょう。個々人で出来ることには限界があるのです。そして、プログラマではない人はまったく利益を享受できません。自由レベル2と3が非常に重要であるというのはそういうことなのです。自由レベル2と3はユーザが協働して彼らが望むソフトウェアを作っていくことを認めています。

従ってソフトウェアをそれぞれ個人的に変更することは制限されていません。(例えば)同じ目的を持つ、あなたと50人の人々がいるならば、みんなでグループを作ればいいのです。その中で2,3人がプログラマであれば、彼らは必要な改変を施せるでしょうし、改善バージョンをグループの残りに配布することが出来ます。もちろん、あなたが望む変更に対する対価をプログラマに払っても構いません。あなたの会社が同じ事(その会社が望む変更を、自由なソフトウェアのグループに所属するプログラマにしてもらい、対価を支払うこと)をしても構いません。もちろん、改善されたバージョンを公表すれば、誰もが使えるような状況になります。こうして、社会の全て(の人々)がそのソフトウエアに対してのコントロールを確立するのです。

自由なソフトウェア(の考え方)はソフトウェアの開発を巡る意思決定のための民主主義的な方法です。しかし、これは選挙を行わないし、それ自体誰が何をすべきかを伝えるわけでもないので、ちょっと変わった形の民主主義といえます。自由なソフトウェアのコミュニティでは誰に何かを指図されると言うことはありません。誰もが自分で意思決定できるのです。しかし、こういう問題も起こり得ます。もし多数の人々がある方向でソフトウェアを改良しようとしていたら、多くの人が携わるので非常に早く改良が行われます。しかし、その方向での改良を望む人が少数である場合は、少数しか携わらないので必ずしも早く改良されるとは限りません。誰も(そのような方向に)改良を望まない場合は改良されないでしょう。我々個人個人が何をするつもりなのかを決めることで、私たちはコミュニティで起こること、あるいはソフトウェアが改良される方向性を決めることに寄与するということなのです。

従って、社会は集団的にソフトウェアが全体としてどのように発展するのだろうかという問題に対してのコントロールを行っているのです。しかし、それは集団的に意思を全員に強制するということではなく、あなた個人、またはどんなグループや会社でも、ソフトウェアをどのように開発していくかを決めることが出来ます。その帰結は、自由なソフトウェアは開発者ではなく、ユーザの求める方向に沿って開発される傾向があると言うことです。例えば、「誰もがソフトウェアを自由に改変できたならば、互換性はどうなるのですか?」という質問がよくあります。その答えの真実は、ユーザは互換性を求めるということです。時折、他の便益があるために(確信犯的に)互換性を捨て去る改良を施す例もあります。しかし、ほとんどのユーザは互換性を欲しているのです。そういうわけで、ほとんどの自由なソフトウェアは互換性に非常に留意して開発されています。もし、私が互換性をなくしてしまう改良を私のプログラムに施して、ユーザがそれを嫌ったと想像してみてください。何人かのユーザはプログラムを修正して互換性を保つように改良し、そちらのバージョンが全体として支持されるようになるでしょう。そして、彼のバージョンが有名になり、私のバージョンは忘れ去られるというわけです。そういう危険性があるので、私は互換性を保つことの利点を強く認識しています。そして、私は人々が(私のソフトウエアを)気に入った上で使って欲しいと思っているので、自分の作るソフトウェアは最初から互換性が確保されるようにしています。

ですから、私たちのコミュニティでは、開発者はユーザの望むものに抵抗することは出来ません。我々はユーザの欲する方向と共に歩んでいくのです。

しかし強大な力をもって非互換性を強制する、自由でないソフトウェアを開発する人々を見れば、彼らの権力があまりに強力なのでユーザが何も出来ないことが分かるはずです。マイクロソフトはこのような手法で有名ですね。彼らは(ネットワークの)プロトコルにおいて非互換な変更を施すので、ユーザがそれで立ち往生してしまいます。でも、これはマイクロソフトだけの問題ではありません。例えばWAPプロトコル(※注1:GSM/CDMA方式の携帯電話でインターネットコンテンツを見られるようにする規格)を例に取りましょう。これは通常のインターネット・プロトコル(TCP/IP)に、非互換になるような改造を加えたものです。この改造の背景はWAPプロトコルを使う携帯電話がインターネットに接続できるようにするというものです。しかし、WAPが通常のインターネット・プロトコルを採用しなかったことで、ユーザが非互換の不自由を背負わされることになったのです。これは(WAPプロトコル開発者達にとって)織り込み済みのことでした。ただし、WAPプロトコルは(市場的に)あまり上手く行きませんでした。幸運にも(笑)。しかし、これはユーザが(コンピュータを)本当に支配していない場合に直面する危険の典型であり、誰かがまた、非互換を用いたこのような企みを行うでしょう。

(このように)自由なソフトウェアは基本的に政治的、倫理的、社会的な問題なのです。これまで、それらのレベルについて説明してきました。それに加えて、自由なソフトウェアには経済的な帰結も持ち合わせています。例えば、自由でないソフトウェアは富の集約をもたらします。極端に富裕な企業の少数の人々が世界中の人々からお金を集める一方で、その他の人々は収奪されるというようなことです。たぶん日本ではそうでないと思いますが、コンピュータを持つ余裕はあっても自由でないソフトウェアの代価を払う余裕のないような国々があります。そのような国々では自由でないソフトウェアはとてつもなく強力な収奪装置として機能します。どんな国でも、お金は大多数の人々から搾り上げられ、自由でないソフトウェアによって富裕になろうとする少数の人々に集中するのです。自由なソフトウェアの下では、そのような企みはできません。他の人からたくさんのお金を搾り取ることは不可能です。しかし、あなたは他の人々に真のサービスを提供し続ける限り、彼らと共にビジネスを進めることが出来るでしょう。

自由なソフトウェアによるビジネスは既に立ち上がっています。実際、私は1985年に自由なソフトウェアによるビジネスを始めました。GNU/Emacsエディタのコピーを販売していたのです。私は自由なソフトウェアを通してお金を稼ぐ道を模索していました。ですから、私は「$150払ってくれれば、GNU/Emacsエディタのコピーを納めた磁気テープを送付します」と言ったのです。そして人々がお金を払ってくれるようになったので、私はせっせとGNU/Emacs入りのテープを送り、生活して行くに十分なお金を得たのです。その後、FSF(Free Software Foundation:(フリーソフトウェア財団))を設立することになったので、この商売は止めました。それに、FSFがGNU/Emacsを配布し始めたので、商売をしなくても十分ニーズには応えられると判断したのです。FSFと競合したくありませんでしたから、私は別のやり方を見つける必要が出てきたのです。実際のところ、(GNU/Emacsのような)自由なソフトウェアを自分で売っていれば、それで十分私は裕福に暮らしていけたと思います。その後、私は、手数料を変更するという形で別の自由なソフトウェアによるビジネスを始めました。自由でないソフトウェアではあなたはソフトウェアを変更することは出来ません。それはソフトウェアの囚人とも呼べる状態です。そのままの状態で使い続けるか、まったく使わないかのどちらかの選択肢しかないのです。

自由なソフトウェアにおいても、あなたは(改変しないか、使わないか)という二つの選択肢を保持しています。しかしそれに加えて、実際に自由なソフトウェアではたくさんの異なった選択肢があるのです。あなたはその規模の大小にかかわらず改変をプログラムに加え、改良バージョンを使用することが出来ます。いま、もしあなたがプログラマだとしたら、あなたは自分で改変を加えられるでしょう。プログラマではないとしても、あなたのために改変を加えてくれるプログラマにお金を払えばいいのです。例えば、経済産業省が走らせている、あるプログラムが所定の性能を発揮していないと判断されたら、(そのソフトウェアを自由なソフトウェアとして配布して)本当に望むレベルに改良してくれるプログラマにいくらかのお金を払えばよいでしょう。これは1980年代の数年間に私がやってきた、ある種の自由なソフトウェアを用いたビジネスの形です。私はそれをやり続けても良かったのですが、大きな賞をもらったこともあり、それをこれ以上続ける必要が無くなりました。最近ではこのようなやり方で多くの人々が生計を立てています。最近私が聞いた話ですが、南米で30人ほどの人々がこのやり方で生計を立てているそうです。南米は世界レベルから見ると必ずしも技術的に最先端のエリアではありませんが、そのようなビジネスは既に始まっているのです。1989年か1990年だったと思いますが、このような形のビジネスがある会社で開始されたのですが、その会社はたった3名でスタートしたのです。彼らはそのままのペースでも十分やっていけましたが、欲が出てきたので彼らは自由でないソフトウェアを開発するようになりました。その後、彼らはRedHat社に買収されたのです。

いずれにしても、自由なソフトウェアによるビジネスは、プロプライエタリ(※注2:所有権の存在する=一般の、ソースコードを公開せず、再配布も禁じる形の商用ソフトを指す)なソフトウェアの世界には存在しない、新しいビジネスの方法です。ですから、多くの人々がしばしば自由なソフトウェアの雇用に対する影響について驚くことになります。すべてのコンピュータが自由である状況を仮定してみてください。それゆえに、すべてのソフトウェアも自由な状況を仮定してみてください。この状況は言い換えれば、もしあなたがプログラムを持っていれば、あなたは実行することも、学ぶことも、改変することも再配布することも自由に可能なのです。このことはIT分野における雇用に何をもたらすでしょうか。この分野での雇用は、プログラミング作業の小さな断片という形で発生しています。そしてほとんどのプログラミング作業はカスタム・ソフトウェア(ある顧客のために特別に書かれたソフトウェア)です。これは、クライアントがソースコードを得てその代価を払ったのであれば、十分なソフトウェアのコントロール権を得る限りにおいて、完全に正統性を持ちます。実際、それはクライアント用の自由なソフトウェアなのです。ですから、プログラミング作業はほとんどカスタム・ソフトウェアで占められており、一般に販売されるソフトウェアは全体から見ると小さな小さな部分にすぎないのです。

それで、自由なソフトウェアは何を行うのでしょうか?それは雇用のごく一部分(プログラミング作業の小さな断片)を排除するかもしれませんが、全体を危機に陥れるわけではありません。ユーザの制限により、これらのプログラマにお金が渡る可能性が無くなるかもしれませんが、そこには自由なソフトウェアの改良と拡張のためにお金を払ってもらえるプログラマになるという新しい可能性があるのです。それでは、自由なソフトウェアは雇用を減少させるのか、それとも拡大させるのでしょうか?誰も分かりません。それに答えるのは不可能です。私たちが知るべき事は、IT分野における雇用の減少は全体から見れば、それを一般に販売されるソフトウェアに関連する小さな部分にすぎないということです。残りの部分はいまあるやり方を引き続き継続するでしょう。従って、雇用に関しては何の問題もないのです。

その他に上がってくる論点としては次のようなものもあります。私たちは(コンピュータを利用するのに)十分なソフトウェアを開発でき、それを自由にできるのか?というものです。これに対しての解答は明快です。なぜなら我々は既に存在しているからです。そのような質問をする人たちは、いわば「飛行機は本当に飛べるんですか?」と聞いているのに似ています。うーん、私はそのような飛行機の一つでここに飛んできました。たぶん、ここにいるすべての人たちが同じように飛行機で飛んだことがあるでしょう。私は飛行機というのは飛べるから飛行機というのだと思います。今日の自由なソフトウェアの世界では、何百人、いやおそらく何千人もの人々が自由なソフトウェアの開発で給料を得ているのです。さらに加えて、おそらく50万人を超えるボランティアの開発者達がパートタイムで、しかも無償で数々のソフトウェアを開発しているのです。

ですから、実は、自由なソフトウェアによるビジネスは自由なソフトウェアが成立するために必ず必要なモノでもありません。自由なソフトウェアによるビジネスは非常に望ましいものです。私たちがユーザから自由なソフトウェアの開発者達に資金が還流するような組織を作り上げていけば行くほど、私たちはよりたくさんの自由なソフトウェアを作り出すことが出来ますし、その質もまた向上していくのです。ですから、自由なソフトウェアによるビジネスは確かに望ましいのですが、それは重大な問題ではありません。我々は既に2種類の完全なオペレーティングシステム、2種類のGUIデスクトップ環境、2種類のオフィス・スイートソフトウェアを自由なソフトウェアとして開発してきました。人々(ユーザ)は実のところ、自由なソフトウェアに対して金銭的サポートを行う機会を創造しようと探しているのです。あなたがもしかすると期待しているように、いくつかの場合それは機能します。もちろん機能しないものもありますが。例えば昨年の夏の話ですが、ユーザにとても人気があった、ある自由でないソフトウェアがありました。Blenderというものですが、このソフトウェアを開発して売っていた会社がサポートを止め、製品としてもう売らないという決断、つまり製品の廃盤を決めたのです。しかし、Blender好きな開発者達はそれを望まず、開発元の会社と交渉を行いました。版権買い取りに必要な値段は10万ドルで、これを用意すれば自由なソフトウェアとして公開できるというわけです。そこで彼らはコミュニティに呼びかけ、数週間のうちに10万ドルを集めたのです。Blenderは現在自由なソフトウェアとなっています。このケースが示唆するのは、もしソフトウェアに対して特定の拡張が必要となった場合、コミュニティから同じような方法で資金調達が可能であるということです。

ある、有名な、その技術から尊敬を集めるプログラマがコミュニティに「もしこれだけのお金をコミュニティで集めることが出来れば、私はこの仕事をする」と宣言したとします。このような場合、彼は完全に自分自身だけで働く必要はないのです。彼は他の共に働くプログラマを雇うことも出来ます。これが、あなたが(コミュニティとの協働を)始めるきっかけになるのです。もしあなたが有名でなく、コミュニティにおいて自分自身の名声を確立してもいない場合は、他のプログラマたちの補助として働くという事が出来ます。彼らは資金を調達できますし、仕事全体を監督できます。このようなプロジェクトに参加することで、あなた自身の名声をコミュニティで高めることにもなり、いずれ単独で顧客を得ることも出来るようになるのです。

もちろん、便利なソフトウェアの開発を金銭的に支援する政府の役割の正統性ですが、これは市民に役に立つための科学研究に対しての同様の支援、そして人間自身の好奇心のためにさえ成り立ちます。基本的には市民のため、つまり公の目的ですが。同じように政府が公共的に役立つソフトウェアの開発を金銭的に支援することにも正統性があります。そして、その役目が終わったら、そのソフトウェアを公開し、配布して「誰もがこのソフトウェアを自由に使い、改良して構わない。これは人間の知識なのだ」と宣言するのです。何故なら、これは自由なソフトウェアの本質的な意味を表しているからです。自由なソフトウェアはすべての人間の知識と表現できます。一方、自由でないソフトウェアは知識を制限します。知識は少数の人々に独占され、他の人々はそれらへのアクセスを許されません。ソフトウェアを使う際も表面的に使っているにすぎません。彼らは決して知識を得ることはないのです。

このような理由で、学校が自由なソフトウェアを使用することは本質的に非常に重要です。学校が排他的に自由なソフトウェアを用いるべき理由は3つあります。まず最も薄っぺらい(※shallow)議論はお金を節約しようと言うものです。先進国でさえも、学校が十分な予算を持っていることはほとんどなく、学校でのコンピュータの利用はあまり進んでいないのが現状です。現在では、それらの学校が自由なソフトウェアを用いたならば、教育システム全体がすべての学校に対して、それらのソフトウェアを多数のコンピュータにインストールできるようにソフトウェアのコピーを再配布して、ソフトウェアの利用にお金を払わなくても良いようにできます。更に加えて、GNU/LinuxオペレーティングシステムはWindowsよりも効率的に動作しますから、多少古く、パワーがない安いモデルのコンピュータでも使えます。ですから、たぶん誰かの中古のコンピュータでも問題なく使え、また違った面で学校の財政を節約するでしょう。これは明白な利点ですが、でもたいして重要ではありません。

学校における自由なソフトウェアの利用において、もっと重要なのは学習上の理由です。ご存じの通り十代の頃は、コンピュータシステムの中身のすべてを知ろうとする生徒がクラスに数人はいるものです。これは良いプログラマの予備軍です。もし強力なプログラミング能力を身につけたい場合、大きなチームの一部として機械的に動くのではなく、どでかい、強力な、凄いプログラムを作るイニシアチブを取るほうがよいでしょう。そのような衝動を子ども達が持っている場合、(教師は)それを励まし促す必要があります。ですから、この種の開発の仕方を学ぶのを促進する社会的な環境、施設を提供することは、(教育にとって)とても重要なのです。

この開発の仕方を学ぶためには、学校が自由なソフトウェアを採用するべきでしょう。そして教師は子ども達が「コンピュータはどうやって動いているの?」と疑問を持ち始めたら、「これはFoo bar(※注3:コンピュータプログラム上で「○×」のような、何らかの例をあげる際に使われる言葉)というプログラムで動いているんだ」と言えばいいのです。更に、そのプログラムのソースコードを見せても良いでしょう。「さあ、それを呼んで解読して、どうやって動いているか自分で考えてみなさい」というわけです。それで、子ども達は「僕はこのプログラムをもっと良くするアイデアがあるんだけど」と言いますから、教師は「じゃあどんどんやってみなさい。プログラムを書きなさい。そのプログラムを改変してみるんだ」と言えば良いのです。

良い書き手になるには、たくさん読んでたくさん書いてみることが必要です。それはソフトウェアを書くときも同じです。たくさんのソフトウェアのコードを読み、たくさんのコードを書いてみる。大きなプログラムを理解するためには、大きなプログラムと格闘しなければなりません。しかし、それをどう始めればよいのでしょう?はじめから大きなソフトウェアをいきなり書くことは出来ません。ノウハウが分からないからです。それではどうやってそれを学べばよいでしょうか?答えは、既存の大きなプログラムを読み、それに小さな変更を加えてみることから始めればよいのです。この段階では、あなたは大きなプログラムを自分自身で書くことは出来ませんが、小変更は加えられるからです。

このやり方で私は良いプログラマになることを学んだのです。私はMITで特別な機会を得ていました。MITには彼ら自身が書いたオペレーティングシステムの研究室があり、そこでは実際にそのオペレーティングシステムを使っていたのです。私がそこに行ったところ彼らは「あなたを雇いたいのだが」と言ってくれたのです。彼らはそのオペレーティングシステム上のプログラムを改良するために私を雇ったのです。私が大学二年の時でした。その時、私はオペレーティングシステムを自分で書く能力はありませんでした。ただしゼロから書く力はなかったですが、それらのプログラムを読み、新たな機能を付け加えたりすることは出来ました。そのようなことを繰り返して私はプログラミングの腕を磨いていったのです。1970年代にそのような体験を出来る機会を得られるのは(MITのような)特別な場所に限られていました。しかし現在ではそのような機会は誰にでも提供されています。PC上で走るGNU/Linuxシステムはソースコードも提供されています。ですから、あなた達はコンピュータに魅力を感じて将来良いプログラマになる人材である日本の十代の若者達を励ますことが簡単に出来るのです。

私には1980年頃に高校教師になった友人がいますが、彼は高校レベルにおいて、全米で最初にUNIXマシンを組み上げた人物です。彼は高校の生徒達に良いプログラマになるようにしっかりと教育しました。その教え子の中には高校を卒業するまでに既に良いプログラマとして名声を得ている者もいました。どの高校の生徒の中にも少数の良い才能があり、それを伸ばしたいと思っている子ども達が居ると確信しています。彼らは「機会」を求めているのです。そういうわけで、このような人材育成の機会という面からも、学校はもっぱら自由なソフトウェアを使用すべきなのです。

3つ目の理由はより根本的なものです。私たちは学校に真実を教え技術を磨くことを求めています。もちろんそれに加えて、良い行いをする徳を身につけることもです。これは他人を助ける準備が出来ているということを意味します。つまり、学校は子ども達に「ここにあるどんなソフトウェアもコピーできます。コピーして家に持って帰りなさい。それがここにソフトウェアがある理由です。あなた達がソフトウェアを学校に持ってきたら、そのソフトウェアを他の子ども達と共有しなさい。もし共有したくないなら学校にソフトウェアを持ってきてはいけません。私たちは互いに助け合うことを教えているのですから、そのようなソフトウェアは学校には属さないからです。」と言わなければなりません。高い徳を育成する教育はすべての社会にとって重要なのです。

私は「自由なソフトウェア」の基本概念を発明したわけではありません。自由なソフトウェアという概念は、二台の同じ種類のコンピュータがあり、ある人がそのコンピュータの一方を使って何かソフトウェアを書いている時に、もう片方のコンピュータを使う人が「この問題を解決したいんだけど何か方法ある?」と尋ね、両方とも「よし、協働して問題を解決しよう。ここにコピーがある。」と言った瞬間に生まれました。そして、彼らはもっと開発作業を進展させるために、互いに書いていたソフトウェアを交換し始めたのです。しかし1960年代には、そのような習慣は自由でないソフトウェアにより置き換えられる傾向にありました。ユーザを征服し、ユーザから自由を奪い去る傾向です。

私が大学1年目の時、現実に印象に残る道徳(モラル)の例を目の当たりにしました。私はMITのコンピュータ施設を使っていましたが、その施設の人々は「ここは教育機関で、コンピュータ工学を学ぶためにここにいるのだから、ルールを作ろうではないか。ここのシステムにインストールされているソフトウェアについてはソースコードがディスプレイ上に表示されなければならない。そして、学生はそのソースコードを見て、どのようにソフトウェアが動くのか勉強して良い。」と言ったのです。その後、コンピュータ施設の職員の一人があるユーティリティソフトウェアを作り、自由でないソフトウェアとして販売を始めました。これは私のやり方とは違いました。彼はユーザに制限をかけたのです。例外として、学校に関しては料金を徴収しないことにしたのですが、コンピュータ施設の責任者は「いや、君のソフトウェアはインストールしない。なぜならここのルールではソースコードがディスプレイに表示できる状態でなければならないからだ。もし君がソースコードのディスプレイ表示を許さないなら、我々は君のプログラムを走らせないだけだ」と言いました。この例は私に(自由なソフトウェアについての)ひらめきを与えました。実質的な利便性を放棄してでも、「教育」という学校の使命にとってはもっと重要なものがあるのだ、ということです。

MITで私が働いていた研究室では1970年代を通じて、自由なソフトウエアによるオペレーティングシステムを持っているという点で例外的な存在でした。殆どのコンピュータは当時自由でないソフトウェアをオペレーティングシステムとして使っていました。しかし、私はMITで目撃した、自分で独り占めするのではなく、知識を他者に教えることで生きるというスタイルに影響を受けて、そのやり方で生きていく術を学んだのです。1980年代初頭にそのコミュニティは死に絶えたのですが、その時点で、私は自由なソフトウェア運動(フリーソフト運動)を始めたのです。私は自由なソフトウェアそのものを始めたわけではありません。私はMITの研究室にいた人々が行っていた自由なソフトウェアによる生き方を、その研究室に加わることで学んだだけです。私が行ったのはその生き方を倫理的・社会的な運動として組織したことなのです。言ってみれば、このことは良い社会か醜い社会かの選択、自由を得ることによる清潔、親切で、助けあいに溢れた生き方か、ある種の帝国による支配の中で自由を諦めることにより、実質的な選択が出来ずに束縛の中で生きるのかという選択の問題なのです。

理論的に言えば、「誰もあなたに自由でないソフトウェア、例えば誰もあなたにマイクロソフト社のWordを使うように強制はしていませんよ」という人々が居る一方で「私には選択肢がないのだ」という人もいます。ですから、実際の所、それは個人的な選択という状況ではないのです。確かにあなたが自由でありたいと決定することも、それを拒絶することも出来ます。でも、それにはたくさんの決断を迫られます。20年前に(フリーソフト運動を)始めたときに、コンピュータを自由でないソフトウェア以外で動かすと言うのはとてつもなく大変なことでした。1983年当時の最新式のコンピュータはすべてプロプライエタリなオペレーティングシステムで動いていました。その頃は自由でないソフトウェアなくしてコンピュータは動かせなかったのです。このような状況を変えるために私たちは何年も努力して、その結果、私たちは自由なソフトウェアによるコンピューティングを実現したのです。私たちは変えたのです。

今日では状況はもっと簡単になっています。もう既に自由なオペレーティングシステムは存在しています。現在の最新式のコンピュータを自由なソフトウェアと共に入手できますし、むしろ自由なソフトウェアだけで動かすことすら可能です。ですから最近では(20年前に要した)とてつもない献身と犠牲の代わりに、ちょっとした犠牲だけで、あなたは自由な世界に生きることが出来るのです。さらに、協働していくことで、その犠牲すら除去することも出来ます。私たちは自由の世界にもっと簡単に住めるのです。しかし、そのためにはもっと努力しなければいけません。私たちは自由を社会的価値として認識しなければなりません。ほとんどすべての政府は仕事のコストを低下させようとしています。また彼らのやる仕事は専門的です。ですから政府機関が、彼らの使用するコンピュータを選ぶときは、実質的、狭い視野の疑問を投げかけがちです:それは幾らかかるんだ、いつ動かせるんだ、等々。

でも、政府はもっと大きな使命を持っています。それは国を健康な方向に導くことであり、これは国民のために良いことです。ですから政府機関がコンピュータシステムを選ぶときは、国家を自由なソフトウェアに導くような選択をすべきです。自由なソフトウェアはユーザがソフトウェアの実行許可のために単にお金を払う代わりに、ソフトウェアをより良く改良してくれる地元地域の人々にお金を払うようになるので経済にも良いのです。つまり、ワシントン州のレドモンド(※マイクロソフト本社)にお金が流れ、誰かのポケットが潤うのではなく、地域の中でお金が循環し、雇用が創出されるというわけです。しかし、より重要なのは、そのような還流と雇用創出は、自由で独立した人々と国家におけるライフスタイルを作り出すということなのです。

Copyright 2003 Richard Stallman
Copying and distribution of this entire article are permitted
without royalty in any medium provided this notice is preserved.

This work is licensed under a Creative Commons License.

脚注
  • この仮訳は、4月21日に行われたリチャード・ストールマン氏の講演に関して、RIETIウェブサイトにある英文講演録をベースに、IT@RIETI編集部の責任で翻訳した仮バージョンです。
    正式な翻訳は、近日中にRIETIウェブサイト本体のイベントページに掲載されます。
    仮訳ではありますが、できるだけ忠実にストールマンの講演を翻訳しました。ぜひお読みください。