I quit my job to work full time on my open source project

Ellie Huxtable

私は仕事を辞め、オープンソースプロジェクトにフルタイムで取り組むことにしました

Atuinを使えば、いつでも、どこからでも、実行したコマンドをすばやく呼び出せるため、生産性が大幅に向上します。シェルの履歴をデータベースに保存し、コマンドに関する追加のコンテキストも記録したうえで、デバイス間で同期します(E2E暗号化対応)。

12月22日が、PostHogでインフラチームを率いる最後の日でした。これからは会社を立ち上げ、Atuinにフルタイムで取り組みます。

Atuinはこれからもオープンソースであり続けます。現在と同じ形のセルフホスト型ツールとして、無料で利用できます。フルタイムで取り組むことで、上級ユーザー向けの新しい有料ホスティング機能の追加に集中し、ビジネスでの利用にも対応できるようにしたいと考えています。

どうしてこうなったのか

Atuinを始めたのは、もう数年前のことです。自分が感じていた不便を解消したいと思ったのがきっかけでした。シェルはもっと使いやすくあるべきだといつも感じていて、その中でもシェル履歴の現状が最大の問題だと思っていました。過去のどこかの時点で何度も実行したはずのコマンドをGoogleで検索したり、その週の初めに使ったコマンドの呪文を呼び出すためだけに、別のノートパソコンを起動したりしていたのです。

同じように感じていた人は、どうやら大勢いたようです。

スター数の推移 中には貢献してくれる人もいました。規模の大小にかかわらず、時間を割いてPRを送ってくれた150人を超える皆さん、本当にありがとうございます。特に、長く関わり続けてくれている皆さんには、心から感謝しています❤️

2023年の初めには、FOSDEMで講演しました。対面でもオンラインでも、このツールについて本当にたくさんの素晴らしいフィードバックをもらいました。これは大きなモチベーションになりました。数年にわたってOSSのメンテナーを続けるうちに、少し疲れを感じ始めていたからです。

プロジェクトにかける時間とエネルギーを増やしたところ、その成果は大きく現れました。利用は大幅に増え、貢献者も、サインアップする人も、コミュニティで活動するメンバーも増えました。ブログやポッドキャストなどで取り上げられる機会も増え、機能も増えました。また、GitHubのリポジトリをellie/atuinからatuinsh/atuinへ移しました。

インフラにもいくつか改善が必要でした。主な理由は、大量のデータを保存しているからです(暗号化されたBlobは圧縮しにくいのです……)。Atuinはセルフホストすることもできますが、多くの人はホスティングされた同期サーバーを使っています。いくつか指標を紹介します。

ユーザー数の増加

ユーザー数の増加を示すグラフ

履歴の増加

2023年の始めには、ユーザーがアップロードする履歴は、全体で1日あたり約1万行でした。年末には、1日あたり約20万行近くにまで増えました。

バランスを取ること

どうやら、注ぎ込んだものが多いほど、得られるものも多いようです。プロジェクトの成長を見るのは素晴らしいことでしたが、年末に近づくにつれて、手に負えなくなってきました。仕事の前にAtuinに取り組んでいましたが、オープンなPRやissueをすべて確認し終えることさえ、たいていできませんでした。まして、必要な新機能や修正に取り組む余裕などありません。年の初めには、友人のConradもメンテナンスの手伝いから一歩引いていました。もちろん、それはまったく無理もないことでした。

プロジェクトの期待に応えられていない気がしました。私生活をないがしろにしながら、仕事中はできるだけ気を散らさないよう、必死になっていました。

自分が望む形でプロジェクトを成長させるには、フルタイムの仕事をしながらでは現実的でないほどの時間を、Atuinに割けるようにする必要がありました。

そこで、会社を立ち上げ、Atuinにフルタイムで取り組むことにしました。

人生のほとんどずっと、自分の会社を経営したいと思っていました。ただ、それだけを目的に何かを始めたいわけではありません。人々に愛され、役に立つものを作りたいのです。

お金

これまでずっと、Atuinのサーバーの運用費は自腹で払ってきました。決して大金ではありませんが、少額でもありません。数千万行に及ぶ暗号化されたシェル履歴を保存していると、ストレージの費用はそれなりの額になります。バックアップや、ある程度の冗長性まで考慮すれば、なおさらです。

2022年の終わり頃、友人からGitHub Sponsorsを設定してみてはどうかと提案されました。何かにつながるとは思っていませんでしたが、実際には支援が集まりました。数か月後には、サーバー代をまかなえるだけでなく、それまでに自分が支払った費用の一部を補填できるほどのスポンサー収入を受け取ることができました。

ペイウォールも、支援の必須条件もまったくない中で、私の仕事を気に入って金銭的に貢献してくださるスポンサーの皆さんには、本当に感謝しています。

ただ、ひとつ気づいたことがあります。スポンサー制度があると定期的に言及したときにしか、実際にはスポンサーを増やせませんでした。そうしないと、新たに増えるよりも、支援をやめる人のほうが多かったのです。これは自分にとって、どこかしっくりきませんでした。物乞いをしているように感じられたからです。

他のメンテナー何人かと個人的に話してみたところ、これは珍しい経験ではありませんでした。少なくとも当分の間、スポンサー収入だけで家賃を払えるようにはならないでしょう。

Sidekiqの作者であるMike Perhamのインタビューを読んだところ、深く心に残りました。ぜひ読んでみてほしいのですが、次の2つの言葉が特に印象に残っています。

「結局のところ、OSSの燃え尽きは、軌道に乗った無料プロジェクトをどれも終わらせてしまう」

確かに、自分もそう感じていました。プロジェクトを終わらせたくはありません。適切に手をかけ、注意を向ければ、どれほど素晴らしいものになり得るかもわかっています。しかし変化がなければ、他のプロジェクトや活動にもっと時間を使うために、いずれは諦めてしまうでしょう。

もうひとつの言葉については、かなり長い時間をかけて考えました。

「価値のあるものを作ったなら、その対価を請求しよう」

これから

今あるものを土台にして、人々がお金を払いたいと思う価値ある機能を作っていきたいと考えています。上級ユーザーやパワーユーザー向けの機能もそうですが、特にビジネスでの利用を想定した機能に力を入れたいと思っています。

Atuinを、最終的には誰かに引き継げるほど成長させたいと思っています。そして、私たちが依存している人々やプロジェクトを支援できるようにしたいです。

このあたりで締めくくりますが、何か考えがあればぜひ連絡してください。Atuinが次にどこへ向かうべきか、皆さんの意見を聞かせてもらえたらうれしいです。

スポンサー

あなたやあなたの会社で支援を検討してくださる場合は、AtuinのGitHub Sponsorsをご覧ください。

支援額のティアに応じて、支援者にはステッカーやTシャツを郵送します。支援していることを公に示し、サイトへのリンクも掲載してほしい企業向けのティアも用意しています。

連絡先

Webサイト: https://atuin.sh
フォーラム: https://forum.atuin.sh
メール: [email protected]

Discord: https://discord.gg/jR3tfchVvW

GitHub: https://github.com/atuinsh/atuin

Mastodon: https://hachyderm.io/@atuin
Twitter/X: https://twitter.com/atuinsh

原文は Ellie Huxtable により に公開されました。

この記事は「gpt-5.6-terra」を使用して翻訳されました。