TinyPilot: Month 8

Michael Lynch

TinyPilot:8ヶ月目

一行まとめ

ずっと続いてきた成長も、いつかは途切れるものです。

ハイライト

  • TinyPilotの売上が6ヶ月ぶりに減少しました。
  • 2月の売上は33,061ドルで、1月から21%減少しました。
  • TinyPilotに不可欠な部品の一つが、突然市場から入手できなくなりました。
  • 業務を他者に任せ始めたのに、皮肉なことに自分の自由な時間はむしろ減っています。

目標の達成度

毎月月初に、その月に達成したい目標を掲げています。結果は次のとおりでした。

ブロガーまたはYouTuberを5人、TinyPilotのアフィリエイトプログラムに招待する

  • 結果:アフィリエイトプログラム自体を立ち上げられませんでした
  • 評価:D

簡単だと思っていました。決済にはShopifyを使っていて、Shopifyにはアフィリエイトプログラムを作成できるアプリが山ほどあります。しかし実際に作ろうとして気づいたのですが、どのアプリも顧客の個人情報をすべてアフィリエイトアプリ側に渡す必要があるのです。

そこで自作することにしました。見た目ほど単純ではないかもしれませんが、やってみます。アフィリエイターには tinpilotkvm.com/?ref=some-affiliate のようなリンクを使ってもらい、取引と紐づけてアフィリエイトIDを記録するだけです。月末に手作業で報酬を支払います。スケールはしませんが、10人程度であれば問題ないはずです。

サポートや製造コストを下げる機能をTinyPilotに2つ追加する

  • 結果:アプリに3つ、ウェブサイトに2つ、サポートコストを下げる機能を追加しました
  • 評価:B

TinyPilotに3つの便利機能を追加しました。まだ正式リリースには含めていませんが、内容は次のとおりです。

  • Web UIからTinyPilotをアップデートする機能
  • Web UIからホスト名を変更する機能
  • Web UIからデバッグログを確認する機能

さらにサポートフォーラムよくある質問ページも追加しました。本当はもっと早く作っておくべきでした。これらがあれば、ユーザーは私に直接メールで問い合わせるのではなく、自分で疑問を解決できます。

ラックマウント版TinyPilotについて、顧客10人からフィードバックを集める

  • 結果:0人からもフィードバックを集められませんでした
  • 評価:D

ラックマウント版TinyPilotの構想をまとめるのに、想定以上に時間がかかりました。顧客に見せて意見をもらえるプレビュー資料の完成まで、あと数日のところです。

TinyPilot の数値

指標2021年1月2021年2月増減
ユニーク訪問者数11,2497,824-3,425 (-30%)
総ページビュー数17,73712,909-4,828 (-27%)
販売売上$41,992.92$33,061.41-$8,931.51 (-21%)
寄付$0.00$50.00+$50.00 (+inf%)
合計収益$41,992.92$33,109.96-$8,882.96 (-21%)

2月は、2020年8月以来初めて売上が前月を下回った月でした。もちろん33,000ドルという売上は決して小さくありませんが、1月の40,000ドル台を維持したかったというのが本音です。

一因は在庫不足でした。月中旬に新規の広告やプロモーションを停止しましたが、前半に行ったマーケティングも期待ほどの効果はありませんでした。

部材不足への対応

1月中、業者から「旧正月で2月は動きが鈍る」という話を何度も聞きました。警告を真に受けて、中国から仕入れている部品は3月中旬まで持つ分を確保しました。それでも、正直みんな大げさに言っているのだろうと思っていました。国全体が1ヶ月も止まるわけがない、せいぜい1週間ほど止まっても、すぐに通常営業に戻るだろうと考えていたのです。

2月4日に、いつもの仕入先にプレミアムモデル「Voyager」で使っているHDMIキャプチャチップを注文しました。ところが注文が一向に進みません。単に注文が遅すぎただけで、月末に業務が再開すれば届くだろうと思いました。問題ない、想定内です。

2週間後、こんな連絡が届きました。

こんにちは。この商品は現在在庫切れです。3月に入荷予定です。お待ちいただけますか?

HDMIチップの業者からの悪い知らせ

最初は大したことではないと思いました。別の業者に頼めばいいだけです。

ところが、予備の業者にも在庫切れだと言われました。嫌な予感がしてきました……。

他にも数社の仕入先を見つけましたが、取引実績のない海外業者に大きな発注をするのは不安でした。これまで代金を完全に持ち逃げされたことはありませんが、注文を何ヶ月も放置された経験は何度もあります。

リスクを分散するため、eBayとAliExpressの複数の業者に注文を分けました。しかし、どうやらその多くが実は同じ会社だったようです。あるeBayの出品者ははっきりとそう教えてくれました。

やあ友よ、この注文は本当に確定しますか? あなたが私の同僚の別ストアでも注文しているのを確認しました。あなたが注文した他の2つのストアも私の会社です

リスク分散のために複数の業者に注文しましたが、実際はすべて別名で営業している同じ業者でした。

注文するたびに、次のどちらかのパターンが起きています。

悪いパターン

  1. 注文する
  2. 業者から「在庫切れなので、待つか返金するかどうしますか?」と連絡が来る
  3. 返金を依頼する
  4. お金は戻ってくるが、チップは手に入らない

さらに悪いパターン

  1. 注文する
  2. 業者が偽の追跡番号を登録する
  3. DHLで追跡できない理由を問い合わせると「すぐ反映される」と返事が来る
  4. 2日おきに(3)を繰り返す
  5. お金もチップも手元にないままになる

同じチップの別バリエーションに切り替えることも試しましたが、そちらでも同じようにごまかされています。在庫はまだ尽きていませんが、このままでは2週間以内に底をつく見込みです。ひとまずVoyagerの価格を10%値上げして、販売ペースを抑えています。

YouTubeでの成功は再現しないかもしれない

TinyPilotが初めてYouTubeでレビューされた後、売上は過去最大の急増を見せました。当然、「もっと多くのYouTuberにレビューしてもらわなければ」と思いました。

初のYouTubeレビューが売上の爆発的な急増を引き起こしました

さらに2人のYouTuberにレビューを依頼しましたが、結果はそこまで劇的ではありませんでした。レビュー自体は好意的でしたが、売上に測定できるほどの影響はありませんでした。

2本目3本目のYouTubeレビューは、売上に測定可能な影響を与えませんでした

それでもYouTubeには大きな可能性を感じています。サーバー管理を教えるYouTuberは大勢います。彼らが低レベルな管理作業のデモでTinyPilotを使ってくれるようになれば、TinyPilotのブランドにとって非常に大きな価値になります。

深い集中のための時間を確保する

ここ数ヶ月、極度に時間に追われていると感じています。やるべきことは山積みで、重要なことよりも緊急なことばかりを片づけがちです。メールの返信など短期的なタスクに大半の時間を使い、長期的な目標につながる深い集中を要する仕事(ディープワーク)に取り組めていません。

一方で、時間の使い方は最適なのかもしれません。最近は業務の委任に力を入れていますが、新しい人を雇うと短期的には深い集中のための時間がむしろ減ります。人とのやり取りや、新しく入った人の立ち上げサポートに時間を取られているのです。

カスタマーサポートはまだ委任していません。TinyPilotの魅力の大きな部分は、顧客が「この事業はこの人が個人的に責任を持っている」と感じられることだと思っているからです。エンタープライズ向けKVMベンダーでは、エンジニアはおろかCEOと直接やり取りすることなどまずありません。

とはいえ、あまりにもアクセスしやすすぎて一日中顧客からのメール返信に追われるのも避けたいところです。アクセスしやすさは保ちつつ、顧客が私にメールするよりも簡単に問題を解決できる方法を模索しています。

カスタマーサポートの負担を減らすための計画は次のとおりです。

  • サポートドキュメントの表現を調整し、直接のメールよりもサポートフォーラムへの投稿を優先することを伝える
  • 繰り返し寄せられる質問についてFAQ記事を追加する
  • バグ修正や使いやすさの改善により多くの開発リソースを割く

既存プロジェクトの近況

現在も維持はしているものの、開発の中心ではないプロジェクトについて、近況を簡単にご報告します。

Is It Keto

指標2021年1月2021年2月増減
ユニーク訪問者数80,17760,437-19,740 (-25%)
総ページビュー数182,367135,865-46,502 (-25%)
ドメインレーティング(Ahrefs)11.011.00
AdSense収益$677.36$584.18-$93.18 (-14%)
Amazonアフィリエイト収益$238.02$202.78-$35.24 (-15%)
合計収益$915.38$786.96-$128.42 (-14%)

Is It Ketoは、新年の抱負でダイエットを始めた人たちによる訪問者数の増加がまだ続いています。1月から2月にかけての落ち込みは、2020年の同じ時期とほぼ同じです。

サイトは私が手をかけなくてもバックグラウンドで回り続けています。先月、まずまずの価格で買収の打診がありましたが、売却を完了させるのにかかる時間を考えると、TinyPilotに割く時間が奪われすぎると判断しました。

Hit the Front Page of Hacker News

指標2021年1月2021年2月増減
ユニーク訪問者数1,042483-559 (-54%)
合計収益$2,565.22$359.95-$2,205.27 (-86%)

残念ながら、このコースのプロモーションは停止しました。1月にいくつかのマーケティング施策を試しましたが、どれも売上に影響が見られなかったため、取り組みをやめました。多くの時間を費やしたコースなのに、成果があっという間にしぼんでしまったのは、もったいない気がしています。

Zestful

指標2021年1月2021年2月増減
ユニーク訪問者数419434+15 (+4%)
総ページビュー数1,1941,236+42 (+4%)
RapidAPI収益$155.50$32.52-$122.98 (-79%)
合計収益$155.50$32.52-$122.98 (-79%)

Zestfulもバックグラウンドで細々と続いています。エンタープライズプランへの問い合わせが予想外に増えましたが、今のところ具体的な成果にはつながっていません。

最近の発見

Litestream

データベースのバックアップに責任を持つのは嫌なので、これまでGoogle Cloud DatastoreやGoogle Firestoreのようなマネージドデータベースを使っていました。しかしGoogleが自社プラットフォームで構築したことを後悔させることが増えてきたため、代替手段を探していました。

Litestreamは、まさに待ち望んでいた解決策に見えます。SQLiteデータベースをS3互換のストレージにレプリケートする軽量なサービスです。これがあれば、サーバーを予告なく完全に削除しても、すべてのデータはS3バケットに安全に残ります。サーバーを再起動すれば、S3から自動的にデータベースを復元し、手作業での修復なしにそのまま再開できます。

Litestreamを試すために、TinyPilot用に欲しかった小さなログ貼り付けサービスを作りました。どのDockerホスティングサービス(Heroku、Lightsail、DigitalOcean)でも動かせますが、HerokuとAmazon S3の両方で無料枠に収まります。いつでもDockerコンテナを削除して別の場所で立ち上げ直しても、同じデータが保持され、自動的にレプリケーションが継続されます。

Plaintext accounting

この2年間、Xeroで仕方なく記帳を続けてきました。あまり好きなソフトではないのですが、今見つかる中では一番マシな簿記ソリューションなのです。

最近、プレーンテキスト会計というものを知りました。コマンドラインツールとプレーンテキストファイルでの複式簿記を使って収支を管理する、開発者向けの手法です。Xeroと比べると、プレーンテキスト会計の方がはるかに直感的で、正しく処理できているという安心感もあります。

どのツールも習得のハードルは高めですが、今のところ一番気に入っているのはBeancountです。この分野で最も成熟したツールの一つであり、Pythonベースである点が気に入っています。

まとめ

今月できたこと

  • TinyPilotのためにフリーランスの開発者を3人採用しました
    • うち2人はプロダクトを週10〜15時間、1人はウェブサイトを週3〜5時間担当しています
  • TinyPilotのサポートフォーラムとFAQを作成しました
  • TinyPilotの次回リリースで予定していた機能をすべて実装しました
  • 「My Third Year as a Solo Developer」を公開し、/r/programmingで1位Hacker Newsで7位を獲得しました
  • 2つのポッドキャストにゲスト出演しました

学んだこと

  • 汎用品の部品でさえ一晩で消えることがある
    • 特定のHDMIキャプチャチップに依存することのリスクは意識していました。
    • 数十の業者がそのチップを販売しており、常時1,000個以上の在庫を掲示している業者も多かったため、リスクは低いと感じていました。
    • 最悪の場合、同じチップセットを使った代替ボードに切り替えればよいと考えていました。代替ボードはいくつも存在したのです。
    • しかし実際に不足が起きると、この2つの前提はどちらも崩れました。すべての業者がすべてのボードバリエーションで同時に在庫切れとなり、業者同士が見かけほど独立していないことが明らかになりました。
  • 旧正月にもっと備えるべきだった
    • 1週間程度は返信が遅くなるだろうと予想していましたが、実際にはほとんどの業者が2月の大半で業務を停止していました。
    • 今後は、2月初めから3月末まで、中国の業者は完全に連絡が取れず、新たな部品の発送もできないものとして計画します。

来月の目標

  • 注文発送業務を引き継ぐため、地元でパートタイム従業員を2人採用する
    • 現在の発送担当者は6月に大学院に戻ります。
  • ブロガーまたはYouTuberを5人、TinyPilotのアフィリエイトプログラムに招待する
  • ラックマウント版TinyPilotについて、顧客10人からフィードバックを集める

原文は Michael Lynch により に公開されました。

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。