KubeCon NA 2020で語られたオープンソースに貢献する意味・メリットとは?

2021年3月25日(木)
松下 康之 - Yasuyuki Matsushita
KubeCon NA 2020において、オープンスースに貢献する意味を元Facebookのコンサルタントが解説したセッションを紹介する。

今回は、KubeCon+CloudNativeCon NA 2020で行われたオープンソースプロジェクトに貢献する意義を解説したセッションを紹介する。これはUnlockOpenというコンサルティング会社の代表を務めるTobie Langel氏が行ったセッションだ。Langel氏はコンサルタントとしてMicrosoft、Google、Intelなどのクライアントと仕事をした経歴を持ち、Facebookに所属していた時はW3CにおけるFacebookの代表として活動をしていたという。

セッションへのリンク:Making the Business Case for Contributing to Open Source - Tobie Langel

OSSに貢献するビジネス上の意味を探るというセッション

OSSに貢献するビジネス上の意味を探るというセッション

セッションのタイトルは「Making the Business Case for Contributing to Open Source」であり、オープンソースを使うだけではなくプロジェクトに貢献することのビジネス上の意義を解説するものだ。テクニカルな解説やデモが中心となるIT系のカンファレンスでは、少し毛色の違った内容となった。

セッションを行うTobie Langel氏

セッションを行うTobie Langel氏

「オープンソースソフトウェアが世界の中心になった」と解説

「オープンソースソフトウェアが世界の中心になった」と解説

このスライドで引用されているのはMarc Andreessen氏がWall Street Journalに2011年に語ったコメントの「Software」を「Open Source」に改めたもので、すでに多くのソフトウェアの中にオープンソースソフトウェアが含まれていることを、「97%のアプリケーションにオープンソースソフトウェアが含まれている」というBlack Duckの調査から紹介した。

どうしてオープンソースソフトウェアに貢献しなければいけないか

どうしてオープンソースソフトウェアに貢献しなければいけないか

このスライドでは、単に利用するだけではなくオープンソースソフトウェアに対して貢献を行う際の理由付けを問うもので、「常識として良いことだから」「正しいことだから」などが挙げられているものの、ビジネス上の理由が挙げられていないことがわかる。ちなみに「The Right Thing to Do」は1972年のカーリー・サイモンのヒット曲のタイトル、「Pay it forward」は2000年のヒット映画のタイトルから取られているようだ。

プラスとマイナスを秤にかけるとマイナスのほうが多い!

プラスとマイナスを秤にかけるとマイナスのほうが多い!

そしてオープンソースソフトウェアに貢献することに対するマイナスを挙げ、常識で考えれば「貢献しない」という選択肢になるだろうと説明した。ここではマイナスのポイントとして「ノウハウがない」「リスクが増える」「リソースの無駄」「知的財産の損失」「競争力を失う」などが挙げられている。

オープンソースソフトウェアに貢献するROIはあまり認知されていない

オープンソースソフトウェアに貢献するROIはあまり認知されていない

ここでもわかるように、オープンソースソフトウェアを使う、消費する利点は理解されているが、それに貢献する利点は理解されていないとして、ここからそれを解説するフェーズとなった。

オープンソースソフトウェアに貢献するリスクは過大評価されている

オープンソースソフトウェアに貢献するリスクは過大評価されている

このスライドに鮫の写真が使われている意味は、「実際に鮫に襲われて死亡するリスクは蜂に刺されて死ぬリスクよりはるかに少ない」ことだとして、人々は鮫に対して過剰な恐怖を覚えることを説明した。そして同様に、オープンソースソフトウェアに貢献すること自体のリスクが過大評価されていると強調した。

オープンソースソフトウェアに貢献することを理解する3つのポイント

オープンソースソフトウェアに貢献することを理解する3つのポイント

ここからは戦略的な価値、運用的な価値、付加的な価値の3つの観点からオープンソースソフトウェアに貢献する意味を解説した。

北米の大手企業における戦略的な価値を探る

北米の大手企業における戦略的な価値を探る

このスライドではGoogle、Intel、Red Hat、Facebookを例に挙げて、それぞれの企業の本業とそれぞれの企業が貢献しているオープンソースソフトウェアを挙げ、本業を補完する役割としてのオープンソースソフトウェアを解説している。

例えばGoogleの本業は広告だが、Chrome Webブラウザーのオープンソース版であるChromiumや、スマートフォンのOSのデファクトスタンダードであるAndroidといったオープンソースソフトウェアも手掛けている。そのどちらも、広告を載せるプラットフォームとして重要と言えるだろう。

Intelの本業はCPUを始めとしたチップだが、そのチップを稼働させるエンジンとしてのLinuxに大きな貢献を行っている。Red Hatの本業はオープンソースをパッケージし、サービスとサポートを提供することだが、そのコアとしてLinuxは重要だ。Facebookの本業は利用者から生み出されるデータを使って広告枠を売ることだが、そのためには大量のデータを処理できる膨大なサーバーを安価に実現することが必要だ。それぞれの本業を補完し、強化するためにオープンソースのコミュニティを利用しているとも言える。

運用上の価値とは?

運用上の価値とは?

2つ目の観点である運用上の価値に対しては、レガシーなシステムをメンテナンスするソフトウェアエンジニアにとっては理解し易い「技術的な負債(Technical Debt)」という概念を用いて解説を行った。

技術的負債を返すために使う

技術的負債を返すために使う

このスライドで使われているような複雑に絡み合った電線のようなシステムをメンテナンスするような場合、利用するだけではなく貢献することによって、内部の構造やアーキテクチャーをより深く理解することができる。その結果、負債を返上することが容易になるというロジックだ。

FacebookのReactを例に解説

FacebookのReactを例に解説

そしてこのスライドで使われた例は、Facebookがオープンソース化したJavaScriptのライブラリーであるReactを挙げ、業務として利用しているソフトウェアをオープンソース化することで、品質の向上とその他のプロジェクトに発展的に拡大したことを解説した。ここで単に使う&作るだけではなく、公開&共有することで大きな価値が生まれることを強調した。またFacebookは、コミュニティからReactに精通したエンジニアを雇うことが可能になったとして、Facebookに所属していた当時の経験を活かしたコメントをしていた。

付加的な価値の解説

付加的な価値の解説

最後のパートは、エンジニアの活動を模式化して解説することから始まった。ここではソフトウェアエンジニアに問題とコーヒーを与えるとコードが生成されるが、副産物としての皮肉/批判(Sarcasm)が生まれることを解説した。

問題とコーヒーを与えるとコードが生成されるのがソフトウェアエンジニア

問題とコーヒーを与えるとコードが生成されるのがソフトウェアエンジニア

この場合、Sarcasmの意味はそれほど重要ではなく、「副産物がある」という部分が重要だ。複数のエンジニアがオープンソースコミュニティとして活動することで対話やコードレビューなどが行われ、その副産物として単に皮肉や批判以上の価値のあるモノが生まれるというのが、Langel氏の主張のポイントだ。

複数のソフトウェアエンジニアが対話することで、多くの副産物が生まれる

複数のソフトウェアエンジニアが対話することで、多くの副産物が生まれる

特にコード品質の向上やベストプラクティスの共有などは、バックグラウンドが違うエンジニアにとっては大きな価値があるだろう。その中でそれらの副産物をカテゴリー別に整理したのが次のスライドだ。

副産物を個人、チーム、プロジェクト、組織ごとに整理

副産物を個人、チーム、プロジェクト、組織ごとに整理

複数のソフトウェアエンジニアがオープンソースコミュニティで協力することで、個人、チーム、プロジェクト、組織のそれぞれに大きな利益があることを紹介した。例えば個人にとっては、レベルアップや良いポジションへの転職の可能性が高くなるといった点などが挙げられた、また組織にとっても、社内文化やモラルの改善、より良い才能にアクセスできることなど利点は多いと言える。

オープンソースに貢献を行う組織は、フリーライダーの組織よりも倍の生産性があるという調査を紹介

オープンソースに貢献を行う組織は、フリーライダーの組織よりも倍の生産性があるという調査を紹介

このスライドで引用されている「オープンソースに貢献する組織は、使うだけの組織よりも倍の生産性がある」というコメントは、ハーバードビジネススクールのFrank Nagle教授の論文からの引用だ。

参考:Learning by Contributing: Gaining Competitive Advantage Through Contribution to Crowdsourced Public Goods

Facebookのエンジニアの75%が、Facebookによるオープンソースへの貢献が転職のキーとなったと語った

Facebookのエンジニアの75%が、Facebookによるオープンソースへの貢献が転職のキーとなったと語った

このスライドではFacebookのリクルーターのコメントとして「新たに雇われたエンジニアの75%がFacebookによるオープンソースへの貢献を知っており、それが転職の大きな理由となったこと」を挙げているとして、組織がオープンソースに貢献することがエンジニアにとって重要であることを示している。

Wayne Gretzky氏の名言を引用

Wayne Gretzky氏の名言を引用

またリスクの一つとして挙げられていた「競争力を失う」ことについては、北米のプロアイスホッケーの大スターWayne Gretzky氏の有名なコメント、「I skate where pack is going to be, not where it has been」を例として挙げた。これは「凡庸なプレイヤーは今パックがある所に行こうとするが、私はパックが行くところを予想してそこに行く」という意味だ。競合力を強めるためには、常に先行していなければいけないという意味だろう。多くのイノベーションがオープンソースをコアにして行われていることを前提にすれば、オープンソースに貢献することで、より速くイノベーションを起こせると言う意味とも取れる。

知的財産の損失に関するコメント

知的財産の損失に関するコメント

このスライドは自社が開発したソフトウェアをオープンソース化することで「知的財産の損失」となるというリスクについて解説したもので、コメントはNew York Universityの教授でFacebookのChief AI ScientistでもあるYann LeCun氏の発言だ。ここでは「現代のインターネットサービスの進化のスピードを考えれば、知的財産を所有することは、研究の結果を製品として素早く世に出して、スケールさせることよりも重要性は低い」という意味だ。ソフトウェアを知的財産として守ることに時間とコストを掛けるよりも、オープンスースとして公開し、素早く実装することのほうが大事だという、いかにもインターネットサービスの現場を知る研究者らしいコメントと言える。

最後にまとめとして、ビジネスのトレードオフとして考えることと、利益と損失を考えた戦略の必要性を訴えた。さらに「小さく始めること」「マインドシフトが重要であること」などを付け加えて、セッションを終えた。

ビジネスのトレードオフとして考えることが重要

ビジネスのトレードオフとして考えることが重要

日本では、事業会社もオープンソースソフトウェアの消費者としてフリーライドする傾向にあり、エンジニアにとって社外のエンジニアと交流したり、自社製ではないソフトウェアに時間を使ったりすることの価値があまり理解されていないというのが現状だろう。

企業によっては特許を申請することがキャリアアップの条件になっていることもあるだろう。しかし進化が早いソフトウェア業界では、知的財産を守るために人的資源を使うよりも、公開することで無駄なコストを省いて品質を上げるほうが、トータルで見れば利益を最大化できる。管理職や経営層はこのことを理解するべきだ。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

運用監視イベント
第7回

ベンダーニュートラルな可視化ツールOpenTelemetryの最新情報を紹介

2021/3/29
可視化のためのプロジェクトOpenTelemetryの最新情報を、KubeConのセッションなどから解説する。
OSSイベント
第6回

KubeCon NA 2020で語られたオープンソースに貢献する意味・メリットとは?

2021/3/25
KubeCon NA 2020において、オープンスースに貢献する意味を元Facebookのコンサルタントが解説したセッションを紹介する。
クラウドイベント
第5回

KubeCon NA 2020 LinkerdとAmbassadorを使ったマルチクラスター通信を紹介

2021/3/23
LinkerdとAmbassadorを使ったマルチクラスターの実装例を、BuoyantとAmbassador Labsのエンジニアが紹介した。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています