開発者による支配から身を守るために自由ソフトウェアを使いましょう

目次

投稿日: 2020-06-17 水

自由ソフトウェアの使用を推奨するための非エンジニア向けの文書です。

1. 自由ソフトウェアとは何か

自由ソフトウェアは Free Software Foundation が定義している用語で下記のように定義されています。

あるプログラムが自由ソフトウェアであるとは、そのプログラムの利用者が、以下の四つの必須の自由を有するときです:

  • どんな目的に対しても、プログラムを望むままに実行する自由(第零の自由)。
  • プログラムがどのように動作しているか研究し、必要に応じて改造する自由(第一の自由)。ソースコードへのアクセスは、この前提条件となります。
  • ほかの人を助けられるよう、コピーを再配布する自由(第二の自由)。
  • 改変した版を他に配布する自由(第三の自由)。これにより、変更がコミュニティ全体にとって利益となる機会を提供できます。ソースコードへのアクセスは、この前提条件となります。

https://www.gnu.org/philosophy/free-sw.ja.html から引用

私はこの自由ソフトウェアを使用することを強く推奨します。 この四つの自由のうち一つでも欠いてしまっている不自由なソフトウェアには致命的な欠陥があると考えているからです。

2. 不自由なソフトウェアによる利用者の支配

不自由なソフトウェアの何が問題かといういうと、 ソフトウェアの開発者に利用者が支配されるからです。 多くの人々はソフトウェアの利用者です、今日において何らかのソフトウェアの利用者でない人はほとんどいません。 不自由なソフトウェアを選択してしまうと、あなたはそのソフトウェアの開発者に支配されてしまいます。 どうしてでしょうか? ソフトウェア開発者による利用者の支配とはどのようなものなのでしょうか?

では不自由なソフトウェアだとどうして開発者に支配されてしまうのか、 自由ソフトウェアの定義に戻って確認してみましょう。

2.1. 第零の自由「どんな目的に対しても、プログラムを望むままに実行する自由」の不足

まず、第零の自由すなわち「どんな目的に対しても、プログラムを望むままに実行する自由」についてですが、 この自由のないソフトウェアというのは、「こういう使い方をするときだけ使ってもいいですよ」とソフトウェアの作者が使用するための条件を指定していることを意味しています。 そのようなソフトウェアは、データとしてあなたが保有していたとしても実際にはあなたの物ではありません。 あなたがソフトウェアの開発者が想像していなかった新しい使用方法を思いついたとしてもそれを試すことはできないのです。 これは、分かりやすい開発者によるソフトウェアによる支配のパターンですね。

2.2. 第一の自由「プログラムがどのように動作しているか研究し、必要に応じて改造する自由」の不足

しかし、どんな目的のためにソフトウェアを実行しても良いだけでは自由ソフトウェアとは呼べないことに注意してください。 次の第一の自由、「プログラムがどのように動作しているか研究し、必要に応じて改造する自由」も重要です。 あなたが利用しているソフトウェアに何らかの不備があったとしましょう。 あなたはそのソフトウェアの問題を自分で直す、もしくは誰かに直して欲しいと依頼したいと思うかもしれません。 この第一の自由のない不自由なソフトウェアの場合、そのソフトウェアを修正できるのは著作権を持つソフトウェアの開発者だけです。 あなたがいくら直して欲しいと思っても、ソフトウェアの開発者が拒否すればそれは叶いません。 目の前で起きている不具合をあなたは直すことができないし、誰にも修正を依頼できないのです。

2.3. 第二の自由「ほかの人を助けられるよう、コピーを再配布する自由」の不足

では、第二の自由は何を言っているのでしょうか? 第二の自由は「ほかの人を助けられるよう、コピーを再配布する自由」ですが、これも重要です。 ソフトウェアはコンピュータで何らかの問題を解決したり生産性を改善するのに使われます。 たとえば、あなたの友人が自分の保有しているソフトウェアを使って解決できる問題で悩んでいたとします。 このとき自分の持っているソフトウェアをコピーして友人に渡せば助けることができるわけですが、 第二の自由のないソフトウェアでは許されません。 ソフトウェア開発者が指定した方法でしか、そのソフトウェアを入手することができないのです。 これもまたソフトウェア開発者によるソフトウェアの所有者への支配なのです。 一点補足すると、自由ソフトウェアではコピーを渡す際に対価としてお金を要求しても問題ありません。

2.4. 第三の自由「改変した版を他に配布する自由」の不足

最後に第三の自由である「改変した版を他に配布する自由」についてですが、 これは第一の自由によって、ソフトウェアの問題を直したりより良くするために改造したソフトウェアを他の人に配るための自由です。 この第三の自由がないソフトウェアでは、 プログラムの問題を修正したり改善したりしてもそのソフトウェアを使うことができるのは自分だけになってしまいます。 既に解決した問題で悩んでいる人を見つけても、ソフトウェアを渡すことはできなくなってしまいます。 また重要なことなのですが、自由ソフトウェアでは対価として改変したバージョンを渡す際にお金を要求しても問題ありません。 この自由のおかげで、ソフトウェアに関する問題を直した人に対価としてお金を渡すことができます。

3. 不自由なソフトウェアの何が問題か

不自由のソフトウェアを使用すると開発者に支配されてしまうこと自体については納得してもらえたと思うので、 次にそれがどうして問題なのか考えてみましょう。

不自由なソフトウェアの問題は他のものに喩えられて反論されることがしばしばあります。 過去に私が返答に困った例として料理があります。 「料理のレシピはソフトウェアにとってのソースコードのようなものだ、自身の利益を守るために飲食店に料理を食べに来た客にレシピを秘匿するのは正当なことではないか」 というものです。 料理の場合でも食の安全を守るといった観点から、客が料理の工程を知ることができるという点で自由な料理にはそこそこの価値があるとは思うのですが、 少なくとも私は自身の利益を守るためにレシピを秘匿することに対して大きな問題があるとは考えてはいません。

そもそもソフトウェアを料理に喩えるべきではありません。 利用のされかたが全く異なるからです。 完成した料理の主な機能は味わって食べることです。 それによって元気になったり、自分の体に合わなくて逆に気分が悪くなったりすることまで考慮すると、 基本的には完成した料理を一度食べたことによる影響は数時間から数日に及ぶものだと考えて問題ないはずです。 もしも料理がおいしくて仕方がないのであれば、特定の飲食店に通いつづけるでしょう。 それは飲食店に支配されているようにも見えますが、そのこと自体が成果物である料理に問題がないことを意味しています。

それに対して、ソフトウェアは何らかの作業をするための道具として使用されます。 どのようなソフトウェアであっても、利用者はソフトウェアの使い方を学び、操作に慣れる必要があります。 一度特定のソフトウェアに慣れてしまえば、同じことをするために別のソフトウェアを使用するのに苦痛を伴います。 使用しているソフトウェアの特定の機能に依存して仕事をするようになったら、 その機能のない別のソフトウェアを使用して仕事をすることはできなくなります。 そうやって依存したソフトウェアが不自由だったら最悪です。 仕事に依存したソフトウェアに対して不備の修正や改善を実施しようと考えても、 不自由なソフトウェアであれば開発者が許さない限りは修正も改善も行なわれません。 不自由なソフトウェアによる開発者からユーザーへの支配はこのようにして成立するのです。

不自由なソフトウェアを別のもので喩えるなら料理よりも家の方が適切で、ソフトウェアを選択して使うようになることは家を選んでそこに住むのと同じようなことです。 不自由なソフトウェアを使用することは建築した業者に点検や修理をする権利が独占された家に住むことと同義 です。 家の所有者は別の業者に家の点検や修理を依頼をすることができず、 点検や修理をする技術を持っていても家が不自由であるために自分自身では何もできません。 場合によっては家に誰を住ませるかを決める自由(第零の自由)すらないかもしれません。

このような家に住みたいと思いますか?

4. 自由ソフトウェアを使って支配から逃れましょう

現在、スマートフォンやタブレットの使用が盛んになっていますが、不幸なことにこれらのデバイスで不自由なソフトウェアによる支配から逃れるのは極めて難しいという現実があります。 自由なOSを搭載したスマートフォンやタブレットを入手することは現在の日本では大変困難です。 この状況は改善しなければなりません。

しかし、パソコンのOSの状況はスマホやタブレットとは違います。 実は多くの道徳的なソフトウェア開発者[1]​によって自由ソフトウェアが活発に開発されています。 パソコン向けには自由ソフトウェアで構成されたシステムがいくつか存在していて、 WindowsやmacOSなどの不自由なOSを置き換えることができます。 ここではGNU/Linuxディストリビューションの一つであるDebianを紹介します。 Debian は GNU/Linux というシステムを構成するさまざまなソフトウェアを集めて、 それぞれが連携してうまく動くようにまとめたものです(他のGNU/Linuxディストリビューションも同じです)。 インストールした時点で文書作成やインターネット閲覧などのパソコンを使うのに必要なソフトウェアが揃っています。 最初から入っていないソフトウェアもありますが、パッケージマネージャという仕組みにより追加できます。 他のGNU/Linuxディストリビューションもここまではだいたい同じなのですが、 Debianは特に自由ソフトウェアを重視したプロジェクトであり、 Debian社会契約という文書で自由ソフトウェアについてのスタンスを明確に示しています[2]​

2024/03/31 追記: 2023/03/30 までの版ではGNU が推奨する自由な GNU/Linux ディストリビューションを紹介していました。 注釈[2]​に記載した理由により現在はDebianを紹介しています。

4.1. Android のスマートフォンやタブレットを使用している場合

F-Droid という自由かつオープンなソフトウェア(FOSS)のみ扱っているアプリケーションストアがあり、 これを使うと簡単に自由ソフトウェアを探してインストールをしたりソフトウェアの更新をしたりできます。 Android では自由ソフトウェアの開発が活発で、日常生活に必要なアプリが既に揃っているので Google Play ではなく F-Droid を優先して使うことをおすすめします。

5. 注釈

  1. 2024/03/31: 「道徳的な」という記述に違和感があったので消そうか悩んだのですが、 プロプライエタリなソフトウェア(独占的ソフトウェア、不自由なソフトウェア)の開発元と比較をすれば相対的には「道徳的な」と付けることに問題はないと考えたため残しました。 自由ソフトウェアのの開発者が自由ソフトウェアについて意識していない、 もしくは自由ソフトウェアに関連する思想に反対しているというケースは少なくないのですが、 そうだとしても自由ソフトウェアであることには違いはなく、自由ソフトウェアとして公開されていることはユーザーにとって良いことです。 私自身はソフトウェアの選定時には開発元の考えを参照し、自由ソフトウェアを重視しているものを優先しています。
  2. 2024/03/31: Debian の公式のインストールメディアには一部のハードウェアを動かすために必要なプロプライエタリなソフトウェア(独占的ソフトウェア、不自由なソフトウェア)が含まれています。 よって、公式のインストールメディアを含めるとDebianは完全に自由ソフトウェアのみで構成されたシステムであるとはいえません。 しかし、この選択には理解できる点があり一部のハードウェアに依存するプロプライエタリなソフトウェアを動かすことができないとパソコンの一部の機能が使えない状態になってしまいます。 特にノートパソコンに内蔵されているような一般的な無線機器にはプロプライエタリなソフトウェアがほぼ確実に必要であり、 自由ソフトウェアで動作する無線用のハードウェアを入手するのも困難です。 海外で販売されていたとしても日本で使うためには技術基準適合証明(通称: 技適)がないと電波法に違反するため使えません。 多くの困難を乗り越えて問題のない無線機器を入手できたとしても古い機器しか存在しないので低速な通信しかできません。 このような状況において自由ソフトウェアのみで構成されたシステムを一般的なコンピュータの利用者に推奨するのは現実的ではありません。 よって他のプロプライエタリなシステムを選択する場合と比較して圧倒的にマシと判断してDebian GNU/Linuxを本記事では紹介しています。

    このような理由でDebianを紹介していますが、これは苦虫を噛み潰すような思いの中で妥協をした結果です。 何故なら、真の問題はプロプライエタリなソフトウェアが必要な無線機器しか手に入らないことだからです。 結局のところプロプライエタリなファームウェアを使うということは、 ハードウェアのコントロールの自由を奪うベンダーによる支配に屈しているということに他なりません。 GNU/Linuxのユーザーを増やすのには間違いなく寄与しますが、自由ソフトウェアを使おうという主旨とは明らかに逆行しています。

    自由ソフトウェアで動作する無線機器などのハードウェアが供給されるような状況を作ることが本当の問題解決です。 仕方がないからといってプロプライエタリなソフトウェアを使ってしまうのは、 ハードウェアをコントロールする権利をベンダーに奪われた状態を維持するだけです。 よって、現状を理解した上で開発者による支配に対して徹底的に抵抗することを推奨します。 その場合はGNU が推奨する自由な GNU/Linux ディストリビューションの中から使用するOSを選んでください。 この中で一般におすすめできそうなのはTrisquelです。 いま私が実際に使っていて一番好きなOSはGNU Guix Systemです。

著者: Masaya Tojo

Mastodon: @tojoqk

RSS を購読する

トップページに戻る