クローズドソースとオープンソース

IT 系零細企業の場合

簡単なまとめ

クローズドソースの WebRTC SFU Sora とオープンソースの WebRTC Native Client Momo の両方で利益を出せるようになった。

クローズドソース

現時点での一番の売上を上げる自社製品である WebRTC SFU Sora はクローズドソースとして提供している。よくあるサブスクリプションライセンス方式で年契約。

クローズドソースなので利用するためにはお金を払う必要がある。お金を払うとサポートもついてくる。サポート費用という概念はなく、あくまで製品を動かすためのライセンスの利用権利を売っている。製品自体は自社のもの。ほぼほぼ貸し出している感じ。

クローズドソースの WebRTC SFU 製品を購入するメリットは安定した開発、最新ブラウザへの追従、テクニカルサポートあたり。

ありがたいことにクローズドソースの製品単体で社員全員を養えるところまでは来ている。

オープンにしないことで「利用するための権利」を売るという戦略。

オープンソース

WebRTC SFU Sora SDK

クローズドソース製品である WebRTC SFU Sora の SDK があり、全てのソースコードを Apache License 2.0 で公開している。クライアント開発している人が困ったときにソースを見れたほうがいいだろうということから。

SDK 自体は利益を生まないが、SDK が充実していないとクローズドソース製品が売れないので、SDK への投資は社内リソースの 5 割以上を当てている。

React Native WebRTC Kit

React Native から WebRTC を利用することが可能になるライブラリ。これも Apache License 2.0 でソースコードを公開している。

これはクローズドソース製品とは関係はしているが、別に自社製品がないと使えないわけではない。

このライブラリ自体も利益は産まないが React Native を利用したい顧客には刺さる。

WebRTC Native Client Momo

ブラウザやスマートフォン以外の環境でも動く WebRTC クライアント。これも Apache License 2.0 でソースコードを公開している。

これもクローズドソースとは関係しているが、単独でも利用可能。

実はこの製品が利益を生み出している。

この製品は複数のプラットフォームへの対応やハードウェアエンコーダへの対応を積極的に行っている。もちろん利用しているライブラリのアップデートも行っている。

このオープンソース製品を利用するのは誰でもできる。さらにビルド周りも簡単にしたことあり、使うことには困らない。

ただ、カスタマイズをするのはかなりしんどい。自社ではカスタマイズは受け付けていない。もし機能追加をする場合はオープンソースでの公開が前提となる。そのため「カスタマイズのサポート」を Sora を購入している顧客に対してのみ有償にて提供している。

これは自社でフォークしてメンテナンスをしていきたいが最新の Momo に追従するのが大変なので、そこを自社からアドバイスを貰いながら追従していくという仕組みだ。

また、オープンソースにしてよければ「要求機能」をこちらが受け入れられれば対応していくというのも有償にて提供している。


つまり、この製品のビジネスモデルこうだ。

  • カスタマイズを提供せずカスタマイズのテクニカルサポートを提供する
  • カスタマイズはせずオープンソースとして公開する
  • WebRTC SFU Sora を購入してもらっている顧客へのみ提供する

リアルタイムな音声や映像をバイナリ一つで配信できるのはとても便利だ。ただ、それを特定のハードに対応させる場合はカスタマイズが必要になる。さらにもともとリアルタイム配信の世界は難しい。

1から自分たちだけでカスタマイズするよりも、そもそも Momo を開発をしている会社と一緒にやっていったほうがいい。

実際、すでに複数社と一緒にお仕事させていただいている。

オープンソースで利益を上げる方法としてはよくある手法だとは思うが、思った以上にうまく回っている。

まとめ

  • クローズドソース製品は使いたい人がお金を出してくれる
  • オープンソース製品は一緒にやっていきたい人がお金を出してくれる
  • カスタマイズ維持のためのテクニカルサポートというポジションは良い

ここ最近はクローズドソース、オープンソースの両方の製品に積極的なコミットができている。これも理解ある顧客のおかげだ。

今後もがんばっていきたい。