Corporate Open Source Anti-Patterns: A Decade Laterの意訳
Qiita Advent Calendar 2025の海外SRE関連セッション意訳の8日目です。ひとりアドベントカレンダーですが、完走できるように頑張ります。
このアドベントカレンダーでは、海外のSRE関連のセッションを翻訳しながら、私の意見や疑問や補足を追加したものです。私の誤解から誤った説明になっている箇所は、コメントでご指摘お願いします。
前回は、Automated deployments of SLOs Using Sloth and Prometheusの意訳でした。SLOを開発者がコード管理するためのツールチェーンについてのセッションでした。
このアドベントカレンダーでは、私の意見やコメントは可能な限り、下記の記法で要約と区別します。ただ、そこまで厳密にできないため、要約文中に私の思想が混じってしまうことはご容赦ください。(気がついたらご指摘ください)
紹介するセッションについて
セッション詳細: Corporate Open Source Anti-Patterns: A Decade Later - P99 CONF
今回のセッションは、SREを行って行く上で必ずお世話になるであろうオープンソースソフトウェアの話です。これを読んでいる方の中には、オープンソースソフトウェアに貢献している方やオーナーの方、利用している方など様々な方がいると思います。そして、しばしば私たちはライセンスやコミュニティの問題で、技術選定をやり直すこともあるでしょう。このセッションではオープンソースソフトウェアのアンチパターンについて説明しています。
要約
背景とこの10年の変化
たとえば十年前、ブラジルのFISL13の講壇で私は、90年代から2010年代にかけて企業がオープンソースに対して犯してきた過ちを並べ立てていました。いま振り返れば、あの頃から景色はずいぶん良くなりました。大手ベンダーの態度は軟化し、MicrosoftがTypeScriptを生むなんて誰が想像できたでしょう。けれど2023年の私は、別の痛みを語らざるを得ません。正解のレシピはまだ持っていない。だからこそ、十年後の再会で答え合わせをしよう、と約束したのです。会場も時代も変わりました。OSCONは消え、P99 CONFはオンラインで世界中に開かれた。カンファレンスのあり方が変わったように、オープンソースも完全に主流へと変貌しました。
オープンソースの特異な重要性
その変化を称えつつ、私はまず「なぜオープンソースが特別か」を改めて説明します。人の知恵を時間と空間の制約から解き放ち、さらに次のイノベーションを誘発する——半導体におけるムーアの法則のような連鎖反応を、インターネットと分散バージョン管理とOSSの組み合わせが現実にしてしまった。もし今日のプロダクトから過去十年のOSSを一切外してみろと言われたら、私たちは一歩も動けないはずです。OSSは非常に価値のあるもので、私たちはこの特別な世代に生まれて幸運であることを最初に述べたいと思います。
社会契約という前提
鍵は「社会契約」です。OSSは、単なる成果物でも、開発者でも、コミュニティでもない。三者のあいだに横たわる、法廷で争う種類の契約ではない、礼節と相互敬意にもとづく約束ごとです。義務ではないものを少し差し出し、義務ではないものを少し受け取る——その微妙な均衡の上に、いまや世界の情報インフラが立っている。この現実を忘れたとき、アンチパターンが始まります。近年、その過ちは伝統的大企業よりも、むしろ“OSSを中心にビジネスを構築する企業”で目立つようになりました。ビジネスとOSSが絡み合うほど、社会契約の半分を切り捨てる誘惑は強くなるからです。
アンチパターン(2020年代版)
- ユーザーと顧客の混同
最初の過ちは、GitHubスターやダウンロード数といった“人気”を、そのまま顧客価値やプロダクトマーケットフィットと読み替えてしまうことです。これらは確かに目を引く指標で、投資家にとっては魅力的に映ります。2010年代には、多くのプロジェクトがその勢いだけで巨額のベンチャー投資を受け取りました。しかし、人気と収益化はまったく別の話です。私がDocker Incに投資した直後のVCと話したとき、彼らは「このダウンロード数を見れば収益化できるはずだ」と自信満々でした。私はそこで問い返しました。「もしその人気こそが“これは収益化できない”という逆シグナルだったら?」。VCは青ざめ、「そんなことがあるのか」と聞き返しました。私は答えました。「わからない。ただ、ユーザーと顧客を混同するのは危険だ」と。これは、オープンソースの人気をビジネス価値と誤読した瞬間に、生じうる典型的な落とし穴なのです。
- 粗利益と純利益の混同
次の過ちは、ソフトウェアは“高粗利ビジネス”であるという事実に酔い、純利益を忘れてしまうことです。投資家はしばしば「ソフトウェアの粗利益は素晴らしい」と持ち上げます。しかし、事業は粗利益だけでは回りません。開発、サポート、マーケティング、管理など、現実の摩擦はすべて純利益に跳ね返ります。投資家が粗利益の甘い幻想に基づいて企業価値を押し上げれば、その圧力は1990年代のプロプライエタリ企業のような戦略をOSS企業に強要し、持続不能な状態をつくり出すのです。起業家も投資家も責任があります。多額の調達で膨らんだ事業は、正しい収益モデルを持たないまま破綻していきました。もしあなたが人気のOSSプロジェクトに関わっているなら、これは強く心に留めてください。資金調達は慎重に。どのようにして製品を構築し、どう収益化につなげるか、事前に明確にしておかなければなりません。
- 再ライセンス(許容度の低い方向への転換)
10年前、私は「著作権譲渡」をアンチパターンの代表例として挙げました。今でもそれは間違いです。そして2020年代の問題は、そこからさらに踏み込んだ再ライセンスです。OSSプロジェクトに貢献する人々は、「自分のコードがOSSライセンスのもとで自由に利用される」という前提で貢献しています。企業はその前提に対して道義的責任を負っています。サブライセンスや第三者へのライセンス供与が必要な場合があることは理解できます。しかし、より制限的で非OSS的なライセンスへ再ライセンスし、「クラウド事業者はこういう使い方をしてはならない」といった形で使用条件を狭めた瞬間に、企業はコミュニティとの社会契約の半分を破棄することになります。たとえ「数年後にはOSSになります」という“時間差オープンソース”のような仕組みを導入しても、それはOSSライセンスではありません。OSSコミュニティは、自由な利用を前提とした信頼で成り立っています。再ライセンスが破壊するのは、その信頼そのものなのです。
- 余分で曖昧なライセンス
さらに深刻なのは、HashiCorpのケースに象徴されるような、曖昧で反競争的なライセンスだ。彼らが導入したライセンステキストには「このソフトウェアは利用できる。ただし、HashiCorpの製品と競合するホストまたは組み込みビジネスで第三者にライセンスを提供することは含まれない」と書かれている。
しかしこの文言は驚くほど不明瞭で、「製品とは何か?」「競合とは何を指すのか?」「ホストや組み込みの境界はどこか?」といった最も重要な部分が煙に巻かれている。買収されたサービスはどう扱われるのか、どの会社名義で判断するのか、どの機能が“競合”とみなされるのか——読み込むほどに疑問が増えていく。
HashiCorpはFAQで追加説明をしているものの、FAQはライセンスではなく、法的拘束力を補うものではない。リスクを嫌うユーザーや企業は、この曖昧さのせいにより、安心して使う判断ができなくなる。問題は、この再ライセンスがコミュニティの存在をほとんど意識せずに進められた点にある。コミュニティ側には当然多くの質問が生じたが、それに個別に回答するだけでは十分ではない。もし本当にその説明が重要なら、FAQではなくライセンスそのものに書き加えるべきなのだ。
このような“余分で曖昧なライセンス”は、社会契約の片側を切り捨てた瞬間に発生するものであり、コミュニティの信頼を失う典型的なアンチパターンと言える。
- コミュニティをフリーローダー呼ばわり
コミュニティを“フリーローダー”と呼ぶ企業がありますが、やめてください。私たちは皆、他者のOSSの上に成り立っている。事実上、私たち全員がフリーローダーなのです。問題の本質は、企業が本当の競争相手を見誤ることにあります。競争すべき相手は“コミュニティの個人参加者”ではなく“サービスプロバイダーや市場の別プレイヤー”であるべきなのに、コミュニティ自身と競争してしまう。もし企業が「私たちはコミュニティに負けている」と感じているのなら、それはコミュニティの問題ではなく、企業側の問題です。HashiCorpのケースでは、コミュニティからの貢献をあまり受け入れておらず、にもかかわらずライセンス変更を一方的に進めたため、大きな反発が生じました。コミュニティは企業の敵ではなく、共に築く土台であることを忘れた瞬間、このアンチパターンに陥るのです。
- 社会契約違反後に信頼を要求
そして最後は、社会契約を損ねたあとで「私たちを信じてくれ」と要求することです。OSSの世界で、コミュニティに“選択肢がない”と思い込むのは致命的です。コミュニティにも選択肢は常にあります。HashiCorpのライセンス変更からわずかの間にOpenTofuが立ち上がり、健全な代替を掲げたことは、その生々しい証拠です。信頼は一瞬で壊れますが、復元には途方もない時間がかかる。だからこそ、企業は社会契約を軽んじてはならない。コミュニティには常に逃げ道があり、裏切ればあっという間に離れていくのです。
私たちはOpen Tofuでこれを目の当たりにしました。Open Tofuは素晴らしいですし、これからも素晴らしくあるでしょうが、すべて不必要でした。
これらのアンチパターンの教訓
これらのアンチパターンから得られる教訓は、何か厳密な規則としてまとめられるものではありません。むしろ、条件はいつだって曖昧なものばかりです。私自身、オープンソース企業としてどう振る舞うべきか悩んだとき、コミュニティに相談したことがあります。驚かされるのは、彼らがこちらの事情、つまり持続可能なビジネスを構築し、それを実際に回していかなければならないという現実を深く理解してくれていたことです。つまり、“正しい方法”は確かに存在する。しかし、それを実行するのは本当に難しい。簡単な道などどこにもありません。
だからこそ、オープンソースを中心に会社を立ち上げたいのなら、まず1つだけはっきりさせなければならない。顧客は何にお金を払いたいのか?
この問いから逃げてはいけません。人気のあるプロジェクトであれば、多くの人は対価を払う意思があります。価値がどこにあるのかを正しく捉え、そこに線を引くことが必要なのです。
そして誤解しないでほしいのは、サポートやサービスは“汚れ仕事”ではないということです。サポートを中核にした素晴らしいビジネスは存在しますし、オープンソースの力を借りて洗練されたプロダクトを提供できます。企業のビジネス課題と収益モデルの都合は、コミュニティの責任ではありません。自分たちの問題をコミュニティに転嫁してはいけない。
大切なのは、繁栄し、持続可能で、健全なビジネスを築きながら、同時に健全なコミュニティも育てていく方法を見つけることです。可能です。しかし難しい。だからこそ、細部への注意と誠実さがすべてを分けます。
そして、十年後にまた会いましょう。遠いように感じても、時間はいつも驚くほど速く過ぎていきます。その頃、もしかしたらAGIが世界をひっくり返しているかもしれません。
全体を通してコメント
OSS、特にコミュニティやライセンスやビジネスという話にはなるべく触れないように生きてきました。これは非常に理想論のように思えることもあり、でも現実的な問題でもあり、さらに著作権などの法律的な問題でもあります。今回、要約するにあたって、厳密な法律用語を正しく使えていない可能性があります。ニュアンスはなるべく捉えるように努力したつもりですが、不正確で問題のある要約になっている可能性がある点だけ、特にこの要約では注意してください。
セッションの中でも触れられていますが、TerraformとOpenTofuの話は私の業務にも非常に大きな影響がありました。そのほかにもRedisとValkeyや、MongoDBやElasticsearchなども記憶に新しいです。直近では、MinIOも話題になりました。社会契約や道徳という言葉がセッションで何度も繰り返し、重要なキーワードとして出てきたのは印象的ですね。
次回は、Production load testing as a guardrail for SLOsの意訳という本番環境での負荷試験についてです。
Discussion