最近、私は SNS でオープンソースに関する誤解についていくつか見かけましたが、それには困惑しました。もう 2024 年ですが、IT 業界にいる人々の中には、オープンソースが何であるかをまだ理解していない人が多いのです。
もちろん、現状をどのように説明するかは、個々の人が進歩の意欲を持っているかどうかを区別するための鍵です。
たとえば、オープンソースの領域では、log4j などのプロジェクトの脆弱性による影響が、「人間は想像以上に欲深く愚かである」という現状を示しています。これらのオープンソースプロジェクトを使用している大小さまざまな企業は、オープンソースプロジェクトを通じて大きな利益を得ていますが、それでもこれらのプロジェクトに寄付するための 1 セントさえ出すことを望んでいません(log4j の脆弱性が発覚する前にはわずか 3 回の寄付しかありませんでした)。その結果、これらのプロジェクトはメンテナンスが不足し、最終的には自身に大きな損失をもたらしました。
では、以下の点について考えてみましょう:
-
この状況を「人間はそういうものだ」と説明することはあまり役に立ちません。上記の大小さまざまな企業も同じように考えているでしょう - これらの企業は自分たちが使用しているオープンソースプロジェクトに寄付がないことを自然に知っていますが、「私が寄付しなくても他の人が寄付するだろう?」、「他の人も寄付しないで使っているのだから、私がこうするのに何か問題があるのか?」と考えているのです。
道徳的な判断を除外して、「投資→収益」という観点から考えると、規模のある企業は、自分たちが重要に依存しているプロジェクトに対して、毎年数百〜数千ドルの寄付をすることで、使用しているコンポーネントの安定性を大幅に向上させ、コンポーネントの更新が必要になる手間を省くことができます。
(余談:もちろん、私は自分自身から道徳的な判断を完全に排除できる人々はすべてクズだと思います。人間社会の安定は法律によって、良い発展は道徳によってもたらされます。「もし常に強盗が勝つなら、私たちは石器時代に生きているはずです」by @ksintmelody。) -
この状況を「だから私たちは大衆の認識、法律の改善、欲深い人々への制約により注力すべきだ」と説明することは、オープンソースに対するより関心を持ち、状況を改善しようとする意欲を明らかにしています。
実際、オープンソースの領域では、この環境を健全に運営するための取り組みが常に行われています。さまざまなライセンスの誕生はその中でも最も重要な要素です。
ライセンスはさまざまな行動を規定し、使用者がオープンソースプロジェクトに対して好き勝手に行動することを禁止するだけでなく、オープンソースソフトウェアの収益性を確保するための堅固な基盤を提供します - もちろん、これは法的なサポートと厳格で実効性のある法的執行がある場合に限ります。朝鮮などの国にオープンソースの権利を主張しに行っても、良い結果は得られません。
(余談 2:知識や芸術の共有にもライセンスがあります。有名な CC-BY シリーズなど、多くの人々がこれが画像にのみ適用されると思っているかもしれませんが、実際には両方が適用されます。したがって、どの公開プラットフォーム上のテキストベースの知識や画像も自由に使用することはできません。)
しかし、新しい時代において、オープンソースの現状は非常に悲観的です。#
統計によると(*2):
2011 年以降、コード行数の増加は持続的に減少し始めました。2015 年以降、コード行数は完全に増加しなくなりました。同時に、コミット数も時間とともに減少しています。2015 年以降、コミット数は自由落下し、2007 年の水準に戻りました。これは、クラウドや AI が盛んになった 2015 年以降とは強烈な対照をなしています。
一部の人々は、ここで主にオープンソースプロジェクトを統計していると言うかもしれませんが、多くのプロジェクトはもはや必要とされていないため更新されていません。新しいプロジェクトの状況ははるかに良好ですが、当時の人気のあるオープンソースプロジェクトの統計によると(*3):
"50%以上のプロジェクトは赤色です:これらのプロジェクトはメンテナンス者が貧困線以上の生活を維持することができません。31%のプロジェクトはオレンジ色で、これらのプロジェクトの開発者は低賃金で働くことを望んでいますが、その給与は当業界では受け入れがたいものです。12%が緑色で、わずか 3%が青色です:Webpack と Vue.js です。"--50%のプロジェクトは文字通り食べることさえできません。
"すべてのメンテナンス者にとって、オープンソースに投資される総資金は不十分です。データセットに含まれるこれらのプロジェクトの年間収入を合計すると、250 万ドルになります。中央値の給与は約 9,000 ドルで、貧困線以下です。このお金を均等に分配すると、約 22,000 ドルになり、それでも業界の基準を下回ります。"-- 平均的な分配でも年間 22,000 ドルしかありません。これは単に GitHub で受け取った寄付だけを見ているのではなく、プロジェクトが Patreon などのプラットフォームで受け取った資金もできるだけ統計しています。
オープンソースのトレンドは全体的に見ても心配です。
個々のオープンソースに対しては、もちろん多くの提案がありますが、例えばオープンソースプロジェクトを行わずに直接製品を構築することが挙げられます。
しかし、オープンソース自体に対してはどうでしょうか?
「オープンソースの持続可能性の闘いは、人類を奴隷制度、植民地化、そして剥奪から解放するための千年の闘いです。勤勉で誠実な人々がすべてを捧げた結果、不公平な報酬を得ることはこれが初めてではありません。」(*3)
オープンソースを利用して多くのお金を稼ぐ一方で、開発者自身は食べることさえできないというこの循環は、長期的には持続することはできません。最終的には、オープンソースは衰退するだけです。そして笑えることに、オープンソースで生計を立てている人々の中には、オープンソースが飢え死にする可能性があることさえ知らない人々がいます - もちろん、彼らが知っていても関心を持たないかもしれません。人間は想像以上に欲深く愚かなのです。
オープンソースが直面している困難な状況は明らかに長期的かつ困難です。これらの問題を解決するには十分な時間と努力が必要です。
「貧困線以下のソフトウェア」(*3)の記事では、次のような対策が提案されています:
- オープンソースに大部分の利益(少なくとも 0.5%)を寄付する企業だけを受け入れるか、オープンソースに依存しない企業の仕事だけを受け入れる。
- 十分な給与がある場合は、オープンソースに寄付する。
- 労働組合に参加しないでください(私はフィンランドでこの記事を書いており、そこでは労働者の 65%が労働組合に加入しています)。
- 新しいプロジェクトに代替ライセンスを使用しないでください。
- マイクロソフトに圧力をかけて、数百万ドルの寄付をオープンソースプロジェクトに要求する。
- このようなデータ研究を公開し、企業の行動の真実を明らかにする。
個人的には、次のようなことも追加できると思います:
- 自分のプロジェクトのライセンスを厳密に検討し、無謀に MIT ライセンスを使用しないでください。
- 著作権侵害に対して勇敢に立ち向かい、ソーシャルメディアや法的手段の力を活用してください。
- 法的手段が通用しない場合は、法律に頼らずにセキュリティ関連の知識を学び、相互報復の能力を保持してください。仮に本当の菩薩であっても、仏教は金剛怒眼を説いています。
このプロジェクトに参加したり寄付したりするには、Onlydust を使用できます。Onlydust は Web3 のオープンソースプロジェクトコラボレーションプラットフォームです:
https://app.onlydust.com/p/wasm-cairo
参考文献:
- GitHub によるオープンソースライセンスの説明:https://docs.github.com/zh/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository
- オープンソースは成長していない:https://www.oschina.net/news/118100/open-source-is-not-growing-anymore
- 貧困線以下のソフトウェア:https://github.com/xitu/gold-miner/blob/master/TODO1/software-below-the-poverty-line.md