くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

個人開発のやり方を見直してみる

最近なんとなく、考えていることの雑記(*´ω`*)

本業が少しだけ落ち着き、時間が取れるようになったので、
個人開発の熱が戻ってきた。

年々個人開発に使える時間が減ってきたので、
もうすこしうまくできないかをいろいろ考えている途中。。

やりたいこと

最近はこのあたりをよく思ったりする。

  • 作りたいものを素早くつくりたい
  • 多くの人に使ってフィードバックをもらいたい
  • 開発部分の以外はなるべく最小に
  • 個人開発だけで生活できるように

大きくは変わっていないけど、より強く思うようになったかも。

考えている施策

利用技術を固定する

いままでは割りと新技術を試す事が多かったけど、
ある程度、使う技術を固定して、習熟/開発の速度を上げる

今のところ、技術スタックはこんなイメージ

  • WebApp ... Nuxt3/TypeScript/TaiwlindCSS/ElementPlus
  • DocSite ... Docus or nuxt-content
  • スマホApp ... Flutter
  • Server ... Express/tosa
  • インフラ ... GCP(CloudRun)/Firebase
  • CD/CI ... GitHub Actions
  • 決済 ... Stripe/RevenueCat

技術スタックを固定することで、習熟の深さや速度も上がるけど、
テンプレート/ライブラリ化もしやすくなり、再利用性も高める。

これ以外のライブラリも整理/固定する感じ。 iconはiconify/nuxt-iconを使うなど。

前に使ったアイコンを思い出す。みたいな無駄な部分をなるべく削っていく。

アーキテクチャを固定する

アーキテクチャも都度特性に合わせて考えていたけど、
思いつく作りたいものだと、ある程度パターン化できる。

OGPほしい/いらない、Webのみ/スマホアプリもなど。

パターンごとに、更に内部の構成もパターン化/モジュール化できる。

通知系はある程度、整えておく

機能だけのminimamだと、初期でとても貴重な フィードバックを受け取ったり、お知らせをしたりを落としがち。

Twitterとかでもいいけど、ユーザに向けたものは必須だと思う。

主には、

  • 要望・不具合の報告窓口
  • ヘルプなどのドキュメントサイト
  • (チャットやアンケートフォーム)

GitHubのissueやGoogleフォームでもいいので、
なにかしら用意しておくのがいい。

ライブラリ化などで再利用性を高める

段階があるけど、よく使う処理をまとめておくと便利。

いきなりパブリックで公開するのは気が引けるけど、
GitHub Packagesなどをうまく使って、ライブラリを育てていける土台を作っておく。

あとは、HygenVSCodeのUser Snippetsなども。

今は、こんな感じで分ける想定。

  • 全サービス共通 ... GitHub Packages
    • 汎用的な処理やUIパーツなど
  • 1サービス内共通 ... pnpm workspacesでの共通パッケージ
    • サービス独自の型/処理/UIパーツなど

公開してもいいなと思う部分を切り出せれば、
OSS化して出すのもよい。

デザインで決める箇所を整理する

いくつか作っていて、「基本的な部分」と、
「サービスの色を出す部分」の2種類がある気がする。

「基本的な部分」は汎化しておいて、パターン化/ライブラリ化しておく。

「サービスの色を出す部分」について何を決めればよいかを整理し、
企画のときに決めて置けるようにしておくといい。

たとえば、テーマカラー/ロゴ・アイコンなどが後者。

企画するときの方針

バズは狙わない

以前はバズりたいと思っていたけど、
長く続けてくれる人のほうが大事だと改めて気づく。。

なので、バズよりも日常的に使うものを考える。

シェアできる

SNSで投稿できることもそうだけど、招待できる形が理想的。

シングルテナント型ばかりだったけど、
プロジェクトやワークスペースといった形の
マルチテナント型をメインにしたい。

マネタイズまで

サービスを作るのはたのしいけれど、
運営しつづけるにもお金がいるので、
ある程度、最初に考えておく。

広告は導入しやすいけど、感覚としてなかなか厳しいので、
有料プランを用意/考えておく。

あまり安すぎるとジリ貧になるので、
ある程度余裕を持った価格帯に。

値上げはなかなかしづらいけど、
値下げや割引クーポンなどは気持ち的に出しやすい。

無料枠は無い方がよいという意見もあるけど、
「個人的には体験して、よいと思ったら課金」
みたいなのが好きなので、ある程度体験できる方がよいと気がする。

有料プランのバリエーション

有料プランもいくつかバリエーションがあるけれど、
ある程度カスタマイズできるほうが都合が良い気がする。

固定のプランは実装/管理が楽だけど、
ユーザの使いたい形によっては、リッチすぎたり、足りなかったりする。

従量課金かオプションを選択できるかあるけど、
ユーザがプランを組み立てれる形がよい気がしている。

サポート/投げ銭の窓口

奇特な人も少なからずいると思うので、
いちよう受けれる窓口だけ用意しておくのがよいかもしれない。

StripeのPayment LinksとかGitHub Sponsorsとか

ダメ元で置いておく準備だけしておきたい。


おわりに

ざっと考えていることをまとめてみた。
当たり前だと思われる項目も多いと思うけど。。

「少人数で多くのサービスを作る」に特化してるので、
合う合わないがあると思うけど、今のところの考え。

技術の発展速度はだいぶはやくなって、キャッチアップも大変だけど、
うまく取り入れつつ、安定して開発できる型を見つけたいね(*´ω`*)