ソフトウェアは世界を動かしていますが、多くの場合、最大かつ最も人気のあるソフトウェア パッケージにはかなりの金額を支払わなければなりません。今日あなたがお金を払って購入しているほぼすべてのソフトウェアが、少なくとも部分的に無料のオープンソース開発者の仕事に基づいて構築されていることを考えると、これは少々皮肉以上のものです。
ほとんどの商用ソフトウェアは組み立てられたものであり、発明されたものではありません
コンピューティングの初期、そして現代の PC の初期でも、ソフトウェアは通常、ゼロから作成されました。しかし、オペレーティング システムとソフトウェアの複雑さが増大し始めると、車輪の再発明を続けるのは意味がなくなりました。そのため、ソフトウェアはモジュール化されました。関数を手動で記述する代わりに、共有ライブラリからその関数を呼び出します。
他のソフトウェアと同様に、一部のライブラリはプロプライエタリであり、所有者からライセンスを取得する必要がありますが、他の多くはオープンソースです。どれほど多くの種類のソフトウェア ライブラリがあるかを確認したい場合は、Wikipedia にオープン ソース ソフトウェア ライブラリの包括的なリストが用意されています。あなたが現在使用しているほぼすべてのソフトウェアは、これらのライブラリの少なくとも 1 つに依存している、と私はかなり自信を持って言えます。
共通機能のライブラリに依存することで、ソフトウェア開発者は、ソフトウェア内で真に新しくユニークな機能にリソースを転用できます。
オープンソースは最も困難な問題を静かに処理します
ソフトウェア開発における最も複雑な問題は、私たち全員が当然のことと考えている問題です。その主な理由は、大規模なオープンソース ソフトウェア プロジェクトが、これらの基本システムに関する重労働をすべて行っているためです。
ここで話しているのは、ネットワーク、暗号化、メディア コーデック、データベース エンジン、およびデータ圧縮です。大多数の「プログラマー」が理解することはおろか、再現することもできない、まさに天才レベルの数学とコード。
もちろん、十分な資金と人材があれば、大企業は独自のコードを使用してこれらの機能を複製することができますが、やり方を間違えると莫大なコストと評判に影響を及ぼす可能性があります。一方、これらのコア機能のオープンソース ソリューションは実証されており、コミュニティ主導のバグハンティングの長いプロセスを受けてきました。これは、開発者がコードの所有者であると主張することはできませんが、コード ベースを維持および改善するという共通の責任から恩恵を受けることも意味します。
誰にも不当な利益を与えるものではありません。誰もが同じオープンソース基盤にアクセスできれば、競争の場は実際に平等になります。
有料ソフトウェアは基礎ではなく磨きを収益化する
プロプライエタリなソフトウェアにお金を払うとき、純粋な発明に対してお金を払うことはほとんどありません。あなたは、磨き、個人的な顧客サポート、そして一定レベルのサービス提供の約束に対してお金を払っているのです。
これは、堅実なオープンソースの骨組みの上に美しいファサードを重ねたものであり、それは当然のことです。オープンソース ソフトウェア プロジェクトは、プログラマーによるプログラマーのためのプロジェクトになる傾向があります。あなたや私のようなエンドユーザー向けのオープンソース アプリは、FOSS (無料およびオープンソース) のパイの大部分を占めているわけではありません。また、FOSS プロジェクトとクローズドソース プロジェクトのインセンティブが同じではないため、オープンソース アプリのユーザー インターフェイスがひどい場合が多い理由も説明されています。
ライセンスにより商用利用が可能になります
オープンソース ソフトウェアが、私たちが使用する有料ソフトウェアの強力な共有足場セットとなり得る理由全体が、コンピューター コードとはまったく関係がないことは見落とされがちです。実際、コードはすべてまったく同じです。 FOSS の特徴はライセンスです。 「コピーレフト」運動の天才的な点は、ソフトウェアをいつ、どこで、誰がどのように使用できるかについて、オープンソース ライセンスが慎重に設計されていることです。
これらのライセンスが適切に策定されていない場合、悲惨な結果を招く可能性があるため、有料ソフトウェアを開発する企業は FOSS コードを使用するリスクを負うことはありません。
これは、Linus Torvalds (Linux の作成者) が Linux カーネル ライセンスを GPL-2.0 から GPL-3.0 に移植することを拒否したことで見事に証明されました。これは、新しいバージョンのライセンスにより、ストリーミング ボックスやその他の組み込みシステムなどのデバイスで Linux カーネルを使用したい人がそのデバイスをロックダウンすることができなくなるためです。これにより、そのようなデバイス上のソフトウェアを好きなものに置き換える権利が誰にでも与えられます。
Linux カーネルがこの新しいバージョンに移行した場合、現在 Linux カーネルをハードウェアの基盤として使用しているハードウェア メーカーは、商用製品にとってリスクが大きすぎるため、Linux カーネルを放棄するでしょう。
エコシステムは敵対的ではなく共生的です
多くの人が商用ソフトウェアや FOSS ソフトウェアを敵視していると思いますが、それは決して真実ではありません。実際、FOSS ソフトウェアが誕生したのは、少なくとも部分的には、さまざまな営利団体が、法的枠組みを複雑にすることなく物事を共有する何らかの方法が必要であると認識したことが原因です。ある観点から見ると、FOSS は Bluetooth LE や ACPI のような、ある種のオープン スタンダードであると見ることができます。
必要なソフトウェアを作成し、リソースを効率的に使用するには、両方のタイプのコードが必要ですが、もちろん、FOSS はそれをはるかに超えたものになっています。このことから本当に理解していただきたいのは、次にお金を払ってアプリを開くときは、最初にそれを可能にしたすべてのオープンソース コードについて考えてみるということです。