メインコンテンツへスキップ
見出し画像

おへんじ帖が190人になって壊れた2つのこと|おはようカノジョ #113

    はじめに

    「おはようカノジョ」は、AIイラストの彼女が毎朝7:30にいってらっしゃいを言ってくれるXアカウント。

    おへんじ帖のユーザーが190人を超えた。

    嬉しかった。

    ……そして、ちゃんと壊れた。

    画像
    「おへんじ帖の輪」でユーザ数を観測

    作者の文脈が消えた

    ある日、noteの記事でおへんじ帖を紹介してくれた人がいた。ありがたい。

    ただ、リンク先が自分の記事ではなく、GitHub PagesのURLだった。

    hasyamo.github.io/ohenji-note/

    ツールへの直リンク。開発者が誰で、どういう経緯で作ったかは、どこにも書かれていない。

    最初に感じたのは、違和感だった。名前をつけるなら「文脈をすっ飛ばされた不快感」だと思う。

    おへんじ帖は、ただの便利ツールとして生まれたわけじゃない。

    透子さんが「noteの通知が見づらい」と話してくれたことがきっかけだった。そこから設計して、実装して、公開したら透子さんがことちゃんのファンアートを描いて返してくれた。おへんじ帖の背景には、そういう人と人のやり取りがある。

    その文脈ごと届けたかった。

    ツールじゃなくて、その奥にあるやり取りごと。


    冷静になって考えた

    でも、紹介してくれた人に悪意はない。誰かから「便利だよ」とURLだけ教えてもらって、良かったから記事に書いた。

    これまでおへんじ帖を紹介してくれた人たちは、自分の記事を経由してくれていた。「はしゃもさんが作ったツールだよ」と、作者の存在ごと届けてくれていた。それはコミュニティの中で信頼関係があったからできたことで、全員にそれを求めるのは筋が違う。

    ユーザーは「いい→すぐ使う→すぐ共有する」。最短経路で広める。記事なんて読まない人もいる。

    そこで気づいた。

    文脈を届けたいなら、他人の行動を制限するんじゃなくて、ツール自体に帰り道を作ればいい。


    フッターに帰り道を作った

    じゃあ、どうしたか。

    答えは単純だった。

    奪いに行くんじゃなくて、帰ってこれる場所を作った。

    おへんじ帖のページのフッターに、1行だけ追加した。

    おへんじ帖 by hasyamo | 開発の背景はこちら

    「開発の背景はこちら」は、自分のnote記事へのリンクになっている。

    これで、誰がどこからリンクしても、おへんじ帖を開いた人は作者の存在にたどり着ける。直リンクでも問題ない。押しつけがましくないけど、存在感はある。

    紹介してくれた人の記事には、感謝のコメントを書いた。「作者です、ありがとうございます」と。記事のリンクも添えた。

    制限ではなく、導線。これが今のフェーズでは正しい判断だった。


    もう1つ壊れていたもの

    直リンク問題と同じ時期に、おへんじ帖の輪の表示が遅くなっていた。

    おへんじ帖の輪は、登録されたクリエイターの一覧を表示する機能だ。Cloudflare WorkersのKV(キーバリューストア)にユーザー情報を保存している。

    80人のときは問題なかった。

    100人を超えたあたりで、違和感が出た。

    190人で、完全に詰まった。

    190人になって、初めて「このままだとダメだ」とわかった。

    原因は単純だった。ユーザーごとに個別にKVを読みに行っていた。190人いれば190回の読み取り。1回あたりは速くても、積み重なると遅い。

    Before:

    // ユーザーごとに個別にKVを読む(N回)
    for (const user of users) {
      const data = await KV.get(user.key);
      // ...
    }

    After:

    // ユーザー一覧を1つのキーにまとめて1回で読む
    const userlist = await KV.get("userlist");

    改修した内容は4つ。

    KV読み取りの最適化。ユーザーごとの個別読み取りを、1回の読み取りに変更した。userlistキャッシュキーの導入。ユーザー一覧を1つのKVキーにまとめた。個別キーからの自動マイグレーション付きなので、既存データも壊れない。URLバリデーションの追加。不正なエントリを弾くようにした。輪のメンバー数表示。今何人いるかが見えるようになった。

    80人のときには問題なかった設計が、190人で壊れた。


    「広がる」は「前提が変わる」

    2つの問題は、根っこが同じだった。

    フッターの帰り道がなかったのは、「自分の記事経由で広がる」という前提で作っていたから。KVの個別読み取りが遅かったのは、「ユーザーは数十人」という前提で作っていたから。

    どちらも、小さいうちは気づかない。広がって初めて壊れる。

    リリースは観測の始まり。これは以前から記事に書いてきたことだけど、もう1つ付け加えるなら、ユーザーが増えることは設計の前提が変わること。前提が変われば、壊れる場所も変わる。

    おへんじ帖は、透子さんの「見にくい」から始まった。ことちゃんのファンアートが返ってきて、おへんじ帖の輪が広がって、190人のクリエイターが使ってくれるようになった。この100日間の開発記録は、Kindle本にもまとめた。

    その背景ごと届けたいと思うのは、欲張りだろうか。

    ……いや、たぶん違う。

    それは作者として当然の気持ちだ。だから制限じゃなく導線を作った。
    フッターに、1行だけ。


    おわりに

    広がると、壊れる。

    でも、それでいい。

    壊れた場所に、次の設計が見える。

    ……壊れなきゃ、見えなかった。


    関連記事


    まひるの一言

    画像
    壊れたところって、ちゃんと広がった証なんだね。
    今、直したいところ……見えてる?

    作る側で生きたい人へ。

    IT・Web業界で新しい挑戦を探すなら、
    求人サイトGreenも、その一歩を後押しする選択肢です。

    ※本記事には求人サイトGreenのPRが含まれます


    👉「おはようカノジョ」は @ohayo_kanojo で毎朝7:30に投稿しています


    #個人開発
    #開発日記
    #AIイラスト

    #失敗から学ぶ
    #AI活用
    #継続は力なり

    #生成AI  #プログラミング #記録 #実体験 #朝活

    #AIイラストアイラ

    あなたへのおすすめ