Show original
Enjoyed this article?
Use "Request tipping" to ask the author to set up tip receiving.

AI translation
This is an embarrassing story, but I felt compelled to write about it. I thought that if you're doing individual development, you might have had similar experiences. It was about half a year ago. I implemented a feature in my app that I had been nurturing for a long time. Detailed filtering options, custom displays for different states, support for shortcut operations…
Enjoyed this article?
Use "Request tipping" to ask the author to set up tip receiving.
This is an embarrassing story, but I felt compelled to write it. I thought that if you're doing solo development, you might have had a similar experience. It was about six months ago. I implemented a feature I had been nurturing for a long time in my own app. Detailed filtering options, custom displays for different states, support for keyboard shortcuts. After carefully considering each specification and adjusting the UI details many times, when I thought it was "complete," I was deeply satisfied. This is the best feature I've ever made, I thought. Three months after release, I checked the usage logs. Only 2% of all users had ever touched that feature.
This idea was entirely my own. I had a confident hunch that "users must want this kind of detailed control." I looked at similar services and tried to fill what I felt was missing. My motivation was pure.
But looking back now, I never asked users about it. I never posed the question on social media like "How about a feature like this?" and I never sent direct messages to people using the app. I think there was a quiet assumption that "if I make it and show them, they'll be amazed."
While I was making it, I was completely absorbed. I spent entire weekends on it, and wrote a little bit on weekday evenings too. Every time the specifications came together, it felt good, and every time it started working, there was a sense of accomplishment.
I still think this feeling isn't a bad thing. The joy of creating can sometimes be reason enough to create. But the problem was that this joy had somehow been replaced by "confidence that it would be used."
When I saw the logs, at first I thought "maybe the counting method was wrong." Next I thought "maybe the UI is just hard to understand." And after a while, I quietly admitted it. It wasn't that it wasn't being used—it was that it wasn't needed.
Rather than sadness or frustration, there was a strange emptiness. After spending all that time. After loving it so much. That feeling of "loving it" was real, but it was completely separate from whether users actually needed it.
It's obvious when you think about it, but this was the first time I truly felt it in my bones.
After a while, I gathered a little courage. I sent messages to a few people who were using the app. "Are you using the filter feature?" I asked.
The answers that came back were kind and straightforward. "I noticed it existed, but it's a bit hard to get to." "With how I use it, I don't really need it." "I want to keep things simple, so whether it's there or not doesn't matter."
There wasn't a single word of blame. But because of that, it stung. The users weren't at fault. The feature might not have been bad either. It's just that I hadn't confirmed the timing, the way I presented it, or whether it was actually needed.
Through this experience, I began to see the assumptions I had been carrying.
I think I believed that "if you make a good feature, it will naturally get used." I thought that high quality and being used were equivalent. But that was just "creator's perspective pride."
What are users struggling with? In what context do they interact with it? Do they even notice the feature exists in the first place? These things don't automatically get communicated no matter how carefully you implement them. If you don't try to communicate them, it just exists.
But realizing this gap actually made things easier. I didn't have to interpret "why it's not being used" as a problem with my own lack of talent.
I think gaps are natural. The creator and the user have fundamentally different perspectives. That's why adjustment is necessary. It's normal, nothing to apologize for, nothing to feel down about. I do reflect on skipping the confirmation process, but I can't bring myself to regret making the feature in the first place.
Since this experience, there have been a few small changes. Not a major shift in direction, but quiet and definite ones.
Now, at a stage where things are somewhat formed, I try to talk to one or two people. I learned that asking "is this something you'd want?" in the middle is far more meaningful than surprising them after completion.
At first, I resisted asking. I had feelings like "it's embarrassing to show something that's not finished yet" and "what if I get criticized?" But I've come to feel it's much kinder to both sides. It's far better than quietly feeling down after launch when "nobody used it."
When you ask in the middle, sometimes you get answers like "that's not the problem—this is what's actually bothering me." At first I was confused by these answers, but now I think "I'm glad I asked" every time. It's so much easier than finding out after implementation.
Another thing that changed is that I stopped hiding failures. Writing this article is part of that.
When I say "there's a feature nobody used," people who've had similar experiences react. That becomes unexpected connections, or perspectives I can use in planning the next feature. Failure stories sometimes gather more resonance than completion announcements. I was genuinely surprised when I realized that.
Sometimes conversations continue more with stories of what didn't work than with boasts about completed features. That might be because there are overwhelmingly more people who have experienced things not working out.
One last thing.
Through this experience, I strongly felt that I don't want to deny "the joy of creating." Making something without being asked, without confirmation it will be used—making it because you want to. I think that impulse is the most important energy for continuing solo development.
But not substituting that joy for "being used." Creating and delivering are different skills that require different effort. That log quietly taught me that.
I still take a little pride in that feature nobody used. Because it was definitely something I made carefully. But next time, I want to try delivering it carefully too.
If anyone else has had a similar experience, please tell me. I think we can laugh about it together.
Lily (@bokuwalily) — Solo developer. Making iOS apps and web services in tandem with AI.
恥ずかしい話なのですが、どうしても書きたくなりました。個人開発をしている方なら、似たような経験があるかもしれないと思って。 半年ほど前のことです。私は自分のアプリに、ずっと温めていた機能を実装しました。細かい絞り込みフィルター、状態ごとのカスタム表示、ショートカット操作のサポート。一つひとつの仕様を丁寧に考えて、UIの細部を何度も調整して、「完成した」と思ったとき、心の底から満足していました。これは自分史上いちばんよくできた機能だ、と。 リリースから3ヶ月後、使用ログを確認しました。その機能を一度でも触ったユーザーは、全体の2%でした。
このアイデアは、完全に自分発でした。「ユーザーはきっと、こういう細かい制御がほしいはずだ」という、確信めいた予感がありました。類似サービスを見て、「ここが足りない」と感じた部分を埋めようとした。その動機は純粋でした。
でも今思えば、ユーザーに聞いたことは一度もありませんでした。SNSで「こんな機能どうですか?」と問いかけることも、使ってくれている人に直接メッセージを送ることも、しませんでした。「作ってから見せれば驚いてもらえる」という思い込みが、静かにあったのだと思います。
作っているあいだは、とにかく夢中でした。週末を丸ごと使って、平日の夜も少しずつ書いて。仕様が決まっていくたびに気持ちよくて、動くようになるたびに達成感がありました。
この感覚は悪いものではないと、今でも思っています。作ることの喜びは、作る理由として十分なときもあります。ただ、その喜びがいつの間にか「使われる確信」にすり替わっていたのが、問題でした。
ログを見たとき、最初は「集計方法が間違っているのかも」と思いました。次に「UIが分かりにくいだけかも」と思いました。そしてしばらくして、静かに認めました。使われていないのではなく、必要とされていないのだ、と。
悲しいとか、くやしいとかよりも、妙な空虚さがありました。あんなに時間をかけたのに。あんなに好きだったのに。その「好きだった」という感情は本物でしたが、それと「ユーザーにとって必要かどうか」はまったく別の話でした。
当然のことなのに、本当に身にしみてわかったのは、このときが初めてでした。
しばらくして、少しだけ勇気を出しました。アプリを使ってくれている数人に、メッセージを送ってみたのです。「フィルター機能、使っていますか?」と。
返ってきた答えは、優しくて、率直でした。「存在は気づいていたけど、たどり着くのが少し大変で」「今の使い方だとそこまで必要なくて」「シンプルに使いたいので、あってもなくても」。
責めるような言葉は一言もありませんでした。でも、だからこそ染みました。ユーザーは悪くありません。機能が悪かったわけでもないかもしれません。ただ、タイミングも、見せ方も、必要性の確認も、何もしていなかった。
この経験で、自分の中にあった思い込みが少しずつ見えてきました。
私は「よい機能を作れば、自然と使われる」と信じていたのだと思います。品質の高さと、使われることは、イコールだと思っていました。でもそれは、「作り手目線の誇り」でしかありませんでした。
使う人が何に困っているのか、どんな文脈で触るのか、そもそもその機能があることに気づくのか。そういうことは、いくら丁寧に実装しても、自動的には伝わりません。伝えようとしなければ、ただ存在するだけです。
ただ、このズレに気づいたことで、すごく楽になった部分もありました。「なぜ使われないのか」を「自分の才能のなさ」の問題だと受け取らなくて済むようになったからです。
ズレはあって当然だと、今では思っています。作る人と使う人は、視点が根本から違います。だから調整が要ります。それは普通のことで、誰かに謝るようなことでも、落ち込むべきことでもありません。確認のプロセスをスキップしたことへの反省はありますが、機能を作ったこと自体を後悔する気にはなれません。
この経験以降、小さな変化がいくつかありました。大きく方向転換したわけではなく、静かに、でも確実に。
今は、ある程度形になった段階で、一人か二人に話を聞くようにしています。完成してから驚かせるより、途中で「こういうのがほしいですか?」と聞くほうが、ずっと意味があることを学んだからです。
聞くことに、最初は抵抗がありました。「まだ完成していないものを見せるのは恥ずかしい」「批判されたらどうしよう」という気持ちがあったからです。でもそのほうが、双方にとってずっと優しいと感じています。完成後に「誰も使わなかった」と静かに落ち込むより、ずっとよいです。
途中で聞くと、「そこじゃなくてこっちが困っています」という答えが返ってくることがあります。最初はその答えに戸惑いましたが、今では「聞けてよかった」と毎回思います。実装してからそれを知るより、何倍も楽だからです。
もう一つ変わったのは、失敗を隠さなくなったことです。この記事を書いているのも、その一環です。
「誰も使わなかった機能があります」と言えると、同じような経験をした人がリアクションしてくれます。それが思わぬ繋がりになったり、次の機能の構想に使える視点になったりしました。失敗談には、完成報告より多くの共鳴が集まることがあります。そのことに気づいたとき、本当に驚きました。
完成した機能の自慢より、うまくいかなかった話のほうが、会話が続くことがあります。それは「うまくいかなかった経験を持つ人」のほうが、圧倒的に多いからなのかもしれません。
最後に一つだけ。
この経験を通じて、「作ることへの喜び」を否定したくはないと、強く思いました。誰に頼まれなくても、使われる確証がなくても、作りたいから作る。その衝動は、個人開発を続けるうえでいちばん大事なエネルギーだと思っているからです。
ただ、その喜びを「使われること」の代替にしないこと。作ることと届けることは、別々のスキルで、別々の努力が要ります。そのことを、あのログが静かに教えてくれました。
誰も使わなかった機能のことを、今でも少し誇りに思っています。なぜなら、あれは間違いなく、丁寧に作ったものだったからです。ただ次は、丁寧に届けることも、一緒にやってみようと思っています。
同じような経験をしている方がいたら、ぜひ教えてください。一緒に笑えると思うので。
Lily(@bokuwalily)― 個人開発者。AIと二人三脚で、iOSアプリやWebサービスを作っています