Beekeeper Studio は2020年に、100%無料のオープンソースプロジェクトとしてリリースされました。

最初のバージョンを作るのに、平日の夜と週末を8か月費やしました。それ以前にも誰にも使われないアプリをリリースしたことがありましたが、Beekeeper は違いました。リリースして紹介し始めるとすぐに、多くの人が興味を持ち、ダウンロードして使い始めてくれたのです。

反響は非常に大きく、Hacker News のトップページに掲載されるほどでした。その日の早い時間に投稿したものの、あまり気にかけていなかったのですが、数時間のうちに数千人のアーリーユーザーが集まりました。

しかし、そこからが大変でした。実際のユーザーが使う本物のアプリを保守し、改善し続ける……それはいつまで?数年?数十年?

オープンソースの墓場

ほとんどのプロジェクトやアプリ、ビジネスは、最終的には成功せずに消えていきます。これはオープンソースに限った話ではありませんが、オープンソースではより顕著です。そもそも、ほとんどのオープンソースプロジェクトは最初から無料であることが前提です。これはプロジェクトを持続可能にするうえで大きなハードルです。

実は、Beekeeper Studio を作ったのは、多くの人に愛されたツール Sequel Pro が、私がこれまで使った中で最高のデータベースアプリだったにもかかわらず、放置されてしまったからです。

SequelPro がなくなってほしいと思った人などいるでしょうか?私はもちろん違いますし、毎日使っていた何千人ものユーザーもそうでしょう。私が望んでいたのはその逆で、Linux でも、PostgreSQL でも使いたかったのです。

喜んでお金を払ったでしょう。本当に素晴らしいアプリでしたが、残念ながらもう存在しません。

同じ運命をたどったアプリは数多く、本当に数多く、他にも、似たようなアプリがあります。

良いプロジェクトが消えていく理由

なぜ他のツールは消え、Beekeeper Studio は生き残ってきたのでしょうか?答えはシンプルで、お金と時間です。

お金と言っても主に時間のことですが、ほら、時間はお金と言いますよね(ここで呆れ顔)。つまり、どう捉えるにせよ、答えは時間とさらなる時間、あるいはお金とさらなるお金です。

ソフトウェアを作るのは大変です。良いソフトウェアを作るのはさらに大変です。しかも時間がかかります。LLM の助けがあっても、膨大な時間と労力が必要です。本当に、とてつもない時間です。どれだけ時間がかかるか、いくら強調してもしきれません。時間がかかるってもう言いましたっけ?

人気があり活発なオープンソースプロジェクトを、資金もなしに一人で、夜と週末だけで何年も維持し続けることは到底できません。Issue やプルリクエストの管理だけでもフルタイムの仕事です。

オープンソースを持続可能にするアプローチ

オープンソースプロジェクトを持続可能にする方法はいくつかあります。Vue.js のような要となる大規模プロジェクトは、寄付で維持できるほどの知名度があります。React のような他の大規模プロジェクトは、開発者に直接給与を払う企業スポンサーによって全面的に資金提供されています。

商用の分野では、Kafka や Trino のような大規模インフラソフトウェアが「オープンソースコア」プロジェクトとして主流です。システムの中核部分はオープンにしつつ、企業向けに役立つ多くの追加機能を販売するモデルです。この道を進むには、たいてい多額の資金調達を行い、ユニコーン企業を目指して大きな賭けに出る必要があります。残念ながら、このアプローチが機能するのは、プロジェクトがすでに業界標準となり、数百万人の開発者に広く採用されている場合だけです。

Kafka は、独立して自らのビジネスになるまで、何年もの間 LinkedIn 社内のチームによって資金提供され、保守されていました。

このアプローチは、規模は小さくなりますが、AG-Grid のようなコンポーネントライブラリでも機能します。それでも、ライブラリがある程度の標準になっている必要があります。

Beekeeper Studio のような小規模なアプリには、選択肢があまりありません。100万ダウンロードを超えても、寄付による収入は最大で月$30でした。また、私たちは何かの「業界標準」でもなく、サーバーにデプロイされるイベント処理エンジンではなく、人が使うアプリです。

私たちのモデルは、求められるソフトウェアを販売すること

役に立ち、人々がお金を払ってもよいと思えるものを販売するのはシンプルな収益モデルであり、Beekeeper Studio で私たちが採用しているモデルです。

これは、お金を払ってもよいという人に追加機能を販売することで、ユーザー中心であり続けながらプロジェクトを維持する、最もクリーンでシンプルな方法だと考えています。

とはいえ、アプリを無料でオープンに保つ最善の方法が、一部を制限して有料にすることだという皮肉は無視できません。これは本当に難しいバランスです。オープンソースコミュニティをないがしろにしてはいけない一方で、有料版は生活費をまかなえるだけの価値がなければなりません。

しかも時間がかかります(良いソフトウェアを作るには膨大な時間がかかるって言いましたっけ?)。最初の有料機能を出したのは2022年でしたが、私がこのプロジェクトにフルタイムで取り組めるようになったのは、丸4年後の2026年でした。

幸い、このアプローチには前例があります。Mike Perham による Sidekiq のような優れたオープンソースソフトウェアは、コミュニティを遠ざけることなく、このモデルで大きな成功を収めています。

誠実であり続けます

今のところ、私たちのアプローチはうまくいっています。私たちは黒字のビジネスであると同時に、本物のコミュニティの参加と貢献を集めるオープンソースのコミュニティプロジェクトでもあります。完全なオープンソースではないものの、商用機能のソースも公開しています。

私たちは、Beekeeper Studio をできる限りオープンで利用しやすい状態に保つことに真剣です。たとえば、有料機能を定期的に無料機能へ移行するよう努めていますし、一度リリースした無料機能を取り上げることは決してありません。また、本当は有料にしたい場合でも、コミュニティから貢献された機能はすべて無料でオープンにしています。

最良の選択

プロジェクトを持続させるための私たちのアプローチは、私たちにとって適切なバランスであり、驚くほど高機能な Community Edition のような強みをもたらしてくれていると考えています。

私たちは長期的に取り組んでいきます。それまでの間、私たちが作るのを楽しんでいるのと同じくらい、皆さんにも私たちのソフトウェアを楽しんで使っていただければ幸いです。

Matthew Rathbone
Beekeeper Studio 創業者

Matthew は、Linux で本当に快適に使えるデータベースアプリが欲しくて、2019年に Beekeeper Studio を始めました。今も会社の意見の大半と、コードの一部を書いています。