開発ストーリー
33件の記事
「未登録ユーザー」をひとくくりにしない — 自治会アプリの残り6世帯を原因で3つに分けた話
自治会向けアプリで登録が済まないまま残った世帯を、原因で3つのクラスタに分けた記録です。未登録ユーザーを単一の数字で見ると打ち手が画一的になります。原因で分けて初めて、不具合修正・ログイン手段の追加・運用設計のどこに力を注ぐべきかが見えてきます。
Civic Tech としての自治会DX — 高齢化社会のプロダクト設計と国際的な語彙の接続
「自治会DX」という言葉は、その仕事の射程を実際より小さく見せてしまう。Civic Tech / Aging Tech / Inclusive Design という国際的な語彙に接続し直すと、何が見え方として変わるのか。ポートフォリオ整理の副産物として軸を言語化したPdMの記録です。
高齢者が多い自治会DXの「持ち帰り完走率」 — 説明会後66.6%が登録した話と二段階測定設計
自治会向けアプリの理事会説明会で「説明だけして登録は各自に委ねた」結果、1週間後に18世帯中12世帯(66.6%)が登録完了。説明会当日の登録率ではなく『持ち帰り完走率』こそがスケールの天井を決めると気づいた、高齢者が多い自治会DXの二段階測定設計を共有します。
「太い幹」を見つけた話 — 本業と個人開発が同じ軸に通じた瞬間
個人開発のサービスポートフォリオを整理する作業の副産物として、本業と自治会DXが「シニア向けインターネットサービス」という同じ幹に通じていることに気づいた話。E-E-A-Tを「狙って取りに行く」のではなく「既にあるものを言語化する」順序の重要性を共有します。
「アスペクト比が勝手に変わる!」と怒られた日 — 一括リサイズUIを根本から見直した話
ユーザーの怒りを起点に、画像リサイズツールの一括モードUIを1日8ラウンドで全面改修した記録。設計の根本的な欠陥発見から、EXIF対応・SEO強化・ガイドライン自己撤回まで。
72歳のらくらくフォン利用者にアプリを使ってもらった — シニア向けユーザーテスト#001で見つかった3つの致命的な問題
自治会DXアプリのシニア向けユーザーテスト初回。72歳のらくらくフォン利用者に試してもらった結果、「1人での登録完了は不可能」という現実が判明。P0課題3件を即日修正した開発の記録。
ダークモードからライトモードへ — 個人開発サイトのデザインリニューアル判断
92ツール・139記事・6プロダクトに成長した個人開発サイトを、ダークモード(黒背景+ネオングリーン)からApp Store風ライトモード(白背景+emerald)に全面リニューアル。184ファイル4,568箇所の一括変換、WCAG AA準拠、20コミットのイテレーション過程を記録する。
Vibe Audit 開発記 — バイブコーダー向けセキュリティ診断ツールの設計判断
バイブコーディングで生成されたWebアプリのセキュリティ診断ツール「Vibe Audit」を企画から公開まで1日で開発した記録。外部スキャン×内部監査の二段構え、データ取得しない倫理設計、MCP Server統合までの設計判断を開発日記から振り返る。
自分で作ったデモ動画ツールを使ってUI/UXを改善した話 — ズーム3フェーズ設計とイージング関数の体感速度
自作のデモ動画作成ツールを自分で使い、ズームの違和感、動画配置の不自由さ、MP4エクスポートエラーの3つの問題を発見・改善した。ドッグフーディングで見えるUI/UXの細部と、easeOutCubicが体感速度を変える発見を記録する。
MCP Serverを5バージョンリリースして見えた設計原則 — v0.1.0→v0.5.0の進化と後悔
ZERONOVA LAB MCP Serverをv0.1.0からv0.5.0まで5バージョンリリースする過程で見えた設計原則を記録。薄いラッパーから始めるTier分類、Workflow as a Tool設計、情報パリティの重要性、段階的リリースの実践を振り返る。
89ツール×59記事のSEOコンテンツクラスターを構築した方法 — ツールページ×記事の双方向リンク戦略
89個の無料ツールと59本のFocus Blog記事を双方向リンクで結ぶSEOコンテンツクラスターの構築方法を解説。tools.tsによるrelatedArticles一元管理、content-mapによるカバレッジ追跡、記事リライトによるクラスター拡張の実践を記録する。
個人開発サイト公開5週間のアクセス解析 — 検索流入76%とChatGPT流入の実データ
ZERONOVA LABを公開してから5週間のVercel Analyticsデータを公開。72UU・93PV、検索流入76%(Google 38%+Bing 31%)、Qiita経由15%、ChatGPT経由3%の実データから見えた個人開発サイトの流入構造と次の一手を記録する。
Qiita・Zenn初投稿で学んだプラットフォーム戦略 — PMはどこで勝負すべきか
Qiita初投稿415ビュー、Zennはほぼ無風。2つのプラットフォームで全く異なる結果が出た理由を分析し、PM×AIの独自ポジションで技術記事を届ける戦略に辿り着いた記録。
X投稿でAI自慢を避けるべき理由 — 実データで見る投稿パターン別の反応差
Xのエンゲージメントデータを分析した結果、実体験ストーリーはAI自慢投稿の3〜6倍のリーチを獲得していた。投稿戦略の方向転換と、ストーリーログの導入に至った経緯を振り返ります。
個人開発で「著者ペルソナ」をドキュメント化した理由 — Single Source of Truthの実践
6つのコンテンツチャネルに散らばった著者ペルソナ情報を1ファイルに集約しSingle Source of Truthを実現した記録。AI協業の2段階表現レベル設計、PM≠エンジニアの一貫性、創作禁止ガイドライン。
Claude Codeで10日間に82個の無料ツールを量産した開発プロセス
PMがClaude Codeと協業し、10日間で82個の無料オンラインツールを開発・公開した全プロセス。並列エージェントによる同時開発、5段階品質保証、SSRF脆弱性発見とセキュリティチェックリストの実践記録。
MCP Server開発記 — 82ツールのWeb検査を16コマンドに凝縮した設計判断
82個の無料ツールからMCP Server用に16ツールを厳選し、npmパッケージとして公開するまでの設計判断。B2A戦略、Workflow as a Toolパターン、情報パリティ問題、TypeScript型との格闘を開発日記から振り返る。
作って、壊して、やめた — MapLibre マップジェネレーターで撤退を決めた話
簡易マップジェネレーターに徒歩ルート表示を追加しようとして、OSRMとOpenFreeMapの座標ズレ問題に直面。4回のスタイル修正で根本原因を特定し、313行を削除して撤退を決断した過程を記録。
Wakulier 開発記 — RLS first 設計と OAuth 苦労話を添えて
フリーランス向け依頼管理ツール Wakulier を RLS first 設計で2日間MVP構築。カレンダーUI自作、タイムゾーン3回ハマり、LINE内ブラウザOAuth問題を乗り越えた2週間の開発記録。
BandBridge 開発記 — ミュージシャン向けマッチングサービスの設計判断
ミュージシャン同士をつなぐマッチングサービス BandBridge の開発で直面した、RLS設計、リアルタイムチャット、セキュリティ監査の舞台裏を振り返ります。
CancelNavi の開発記 — サブスク解約ガイドを1ヶ月で作ってリリースした話
サブスク解約の方法を案内するサービス CancelNavi を企画からリリースまで1ヶ月で開発した過程を、情報鮮度問題、セキュリティ監査、機能削除の判断を交えて振り返ります。
自治会DXで学んだシニア向けWebアプリ開発の設計判断
自治会の業務をデジタル化するWebアプリを開発した際に直面した、シニアユーザー向けUI設計の試行錯誤と設計判断の舞台裏を振り返ります。
個人開発サイトに74個の無料ツールを作ってSEO流入を増やした話
ZERONOVA LABで74個の無料オンラインツールを開発しSEO流入の導線にした戦略、品質保証フロー、セキュリティ対策の舞台裏を開発日記から振り返ります。
個人開発者の「名前」をどう決めるか — Zeronova が生まれるまで
個人開発者にとってブランド名・活動名は避けて通れない問題です。Zeronovaという名前が決まるまでの試行錯誤と、ブランド体系の設計判断を振り返ります。
IdeaSpool の進化 — AIタグ付けの試行錯誤から Supabase 移行まで
IdeaSpool の開発で直面したAIタグ付けの一貫性問題、GitHub から Supabase への移行判断、そして1日で10機能を実装した舞台裏を振り返ります。
機能・コンテンツマップで記事企画を効率化する — プロダクト機能から逆引きする方法
プロダクトの機能一覧からブログ記事を逆引きする「機能・コンテンツマップ」を考案し、IdeaSpool と Wakulier で実践。記事企画の効率化と SEO・CVR の両立を実現した方法を解説します。
開発記事でAIとの協業をちゃんと書くことにした理由
PMがClaude Codeと協業して開発する過程を記事で明確に表現する方針に転換した経緯と、AIネイティブ実験スタジオとしてのブランド一貫性について。
情報系サービスの「鮮度」問題にどう向き合うか
サブスク解約ガイドのような情報系サービスでは、情報の古さが致命的になる。鮮度を担保する仕組みと、個人開発での運用の現実を語ります。
機能を減らす勇気 — プロダクトから機能を削除した話
CancelNavi からバグ報告機能を削除し、別プロダクトに移行した判断の背景と学びを共有します。機能を「減らす」ことで、プロダクトの価値が上がることもあります。
1日でMVPを作る — Supabase フル活用の高速開発術
BandBridge と Wakulier を1日でMVPまで作り上げた経験から、個人開発で高速に動くものを作るための技術選定と設計パターンを解説します。
個人開発で「完璧主義」をやめた話 — CancelNavi リリースの決断
情報が揃っていない状態でリリースするべきか悩んだ末に「完璧を目指すより、まずリリースして改善していく」方針を選んだ経緯と、その後に得た学びを共有します。
開発日記を書く習慣で記事ネタが尽きなくなった話
毎日の開発日記が技術ブログのネタ元になる。実際の開発日記から記事ネタを抽出した経験をもとに、書き方とパイプライン設計を解説。
個人開発で6プロダクトを同時に運用する方法
6つのプロダクトを1人で並行開発するための仕組みづくり。開発日記の自動集約、完璧主義をやめる判断、技術スタックの統一を実践ベースで解説。