
1. はじめに
昨年10月、IdentityServerの共同創設者兼メンテナであるDominick Baier氏とBrock Allen氏は、現在のビジネスモデルが本質的に持続不可能であることを発表し、相互公衆利用許諾(Reciprocal Public License、RPL)に基づく有料ライセンスモデルを採用し、新会社Duende SoftwareのもとでIdentityServer5を提供することになりました。
最近、マイクロソフトはASP.NET 6のテンプレートにDuendeのIdentityServerの依存関係を引き続き含めることを発表しました。IdentityServerはかつて寛容なApache 2.0ライセンスの無料オープンソース製品であり、ASP.NET開発者がOpenIDやOAuth 2.0トークンを扱うために広く使用していたツールであるため、マイクロソフトは長年にわたりASP.NETテンプレートにデフォルトでこのライブラリを含めていました。現在、マイクロソフトの一般的なテンプレートに含まれるIdentityServerは、年間収益が100万ドルを超えるユーザーに対して、最低でも年間1,500ドルのライセンス料を要求しています。
.NETコミュニティはこの発表に非常に落ち着いて対応しました。独立系ソフトウェアベンダーを支援することで.NETオープンソースエコシステムの革新的な発展を促進する役割を慎重に検討し、IdentityServerが年会費の形でライセンス料を徴収してコードベースを維持する行為は、メンテナーがプロジェクトを放棄するよりはましであると認識しました。
しかし、.NETコミュニティの多くの人々はパニックに陥り、.NETオープンソースソフトウェアのマネージャーと、一部のテンプレートに含まれるコードについて議論するよう要求しました。最も厄介な問題は、.NETオープンソースソフトウェアエコシステムの真の管理者がマイクロソフトであるということです。
現在、マイクロソフト、IdentityServer、そして無料と有料の「オープンソース」ソフトウェアに関する話題が絶えないため、この記事では.NETオープンソースソフトウェアの「フリーランチ」が終了することがユーザーにとって何を意味するのかについて一緒に考えたいと思います。
2. 人の欲には限りがない
人々が無料/価格設定の低すぎる/許可されていないリソースを乱用するのを見るたびに、「人の欲には限りがない」という言葉を思い出します。
小さな店でキャンディーを1つ盗んでも起訴されることはありませんが、銀行強盗を犯せば必ず法の裁きを受けます。
オープンソースに関して言えば、メンテナーが少数のユーザーをサポートするだけで、しかもニーズが類似している場合、コストはそれほど高くありません。しかし、プロジェクトが臨界点に達し、ユーザーの要求がメンテナーの提供意欲を超えた場合、誰かが代償を払わなければなりません。
IdentityServerのユーザーはあまりにも貪欲でした。過去10年間、ほとんどのIdentityServerユーザーは無料の夕食を貪り食べてきましたが、今になって請求書が届きました。
マイクロソフトのこの投稿(https://github.com/dotnet/aspnetcore/issues/32494)には、さまざまな意見が寄せられていることは想像に難くありません:
- これは不可欠なサービスであり、マイクロソフトはDuendeを買収してIdentityServerを再び無料で提供すべきだ。
- Duendeの価格条項にある「年間収益が100万ドル未満の企業または非営利団体はIdentityServerを無料で使用できる」という規定を誰も読んでおらず、多くの人が苦情を言っている。
- Apache 2.0のもとで無料オープンソースのままのIdentityServer4に貢献するのは非常に難しい。
- マイクロソフトはIdentityServerの代わりに他の製品、例えばhttps://github.com/openiddict/openiddict-core や https://github.com/simpleidserver/SimpleIdServer を使用すべきではないか。そうすれば、これらのプロジェクトもIdentityServerと同じ持続可能性の問題に直面するまで、無料の夕食が続けられる。
また、マイクロソフトが特定のテンプレートにIdentityServerを含めることを選択し、RPL条項を採用したコアライブラリを含めなかったことに対する人々の反応もばかげています。
突然、開発者が「ビジネスに関わる」サービスに対して年間1,500ドル、4,000ドル、またはそれ以上の支払いを要求されると、彼らはすぐに貧乏を装います。
開発者の専門知識は金で買えるものではありません。また、ドメインエキスパートによって構築されたIdentityServerのような、優れた実績があり、十分に文書化され、再利用性の高いソリューションを購入することは、自分で開発者を雇って実装するよりもはるかに安く、リスクも低いのです。アプリケーションの認証や認可エラーといった重大な問題が発生すれば、必ずや大きな代償を払うことになります。
もしあなたが企業ソフトウェアのこの分野の責任者であり、Duendeのわずか数ドルのライセンスコストに悩んでいるのなら、どうか辞職してください。あなたにはその職務を遂行する資格がありません。
ネット上の一部の人がライセンスコストについて不満を言い、貧困を装っているのは、実際にはコストの問題ではなく、調達部門に関係しているのではないかと疑っています。
3. 調達部門の不満
オープンソース技術がこれほど急速に普及し、大きな価値を生み出した最大の理由の1つは、部門予算を考慮することなく、誰でも認可を受け、採用、使用、修正、再配布できることです。
しかし、メンテナーが彼らの専門知識と経験に対する対価として課金を始めると、開発者は調達部門と交渉し、これらの製品を購入する承認を得なければならなくなります。
調達部門の承認プロセスは、サプライチェーン内の各ベンダーの「リスク」を徹底的に調査するために存在します。通常、調達機関は有意義な結果を生み出さず、双方間の取引をより高価で困難にするだけなので、ソフトウェア開発者はこのような関わりを避けたいと考えています。
.NET開発者が直面しているこのような困難な状況について、私は特に気の毒には思いません。結局、それは主に彼らの責任だからです。
4. フリーランチの終わり
オープンソースプロジェクトを無料で使い続けることはできますが、一度課金を決定されると、あなたは彼らのなすがままになります。
IdentityServerに関しては、新バージョンの有料条項はすでに非常に寛大だと思います:IdentityServerオープンソースソフトウェアのサポートは2022年11月まで継続されます!
他のプロジェクトであれば、完全に放棄し、ユーザーを放置する可能性もあります。
オープンソースソフトウェアは.NETエコシステムにおいてますます人気が高まっており、この傾向は時間の経過とともに加速する一方です。したがって、.NETにおける持続可能性の問題はより一般的になるでしょう。数年前、マイクロソフトはすべての費用を負担し、無料のライブラリを提供した結果、.NETエコシステムは大混乱に陥りました。私たちは同じ過ちを繰り返すべきではありません。
フリーランチは終わりました。現実を直視してください。
さまざまなパッケージや技術を選んで.NETアプリケーションを維持・構築する際には、支払いの心構えをしておくべきです。将来の予期せぬ事態やサプライチェーンの混乱を避ける唯一の方法は、今すぐそれをコストとして計上することです。
あなたが使用しているプロジェクトに直接貢献したり、寄付をしたり、メンテナーから付加価値のある製品やサービスを購入したりするなど、上流の依存関係に価値を還元する習慣を身につけるべきです。さらに良いのは、ブログ記事や動画、コースを通じて彼らのプロジェクトを宣伝することです。業務ソフトウェアで特定の製品を使用しているなら、さまざまな方法で還元すべきです。しかし、大多数のユーザーはそうしていません。
オープンソースソフトウェアプロジェクトと良好な価値交換のサイクルを構築することは、「オープンソースの持続可能性危機」の必然的な結果であり、誰もが恩恵を受けることができます。したがって、今すぐ行動を起こし、オープンソースプロジェクトに貢献しましょう。これらのプロジェクトの継続的な発展は、最終的にはあなた自身の利益にもつながります。
原文著者:Aaron Stannard
原文タイトル:.NET Open Source: What Happens When the Free Lunch Ends?
原文リンク:https://aaronstannard.com/dotnetoss-free-lunch-ends/
翻訳者:弯月 編集者:欧阳姝黎 | 出品:CSDN(ID:CSDNnews)
翻訳タイトル:.NET オープンソースのフリーランチは終わったのか?
翻訳リンク:https://www.sohu.com/a/472062543_115128