個人アプリ開発、試行錯誤の記録 11 〜「開発者の自己満足」機能を削った
概要:AIを用いた自慢の機能、コアな体験がぼやけるので削ることにした。
(全然ダウンロードされないアプリを個人開発しています。本記事はその試行錯誤の記録シリーズの一環です👇)
※本記事は全文無料で読めます。
がんばってつくった新機能
機械学習を使って「顔が写っている」「食べ物が写っている」「ペット(犬・猫)が写っている」といった条件で写真を絞り込んだうえで高速閲覧できる、フィルター機能を追加した。
・複数のモデルを動かしつつもオンデバイスで高速に処理(iPhone上ですべての処理が完結)
・CPU, GPUがあいてる状態のときにバックグラウンドスレッドで処理を進める
・処理結果をキャッシュするのでML処理は一度だけでOK
・・・と、わりとしっかりつくったので、この機能だけで5日間ぐらいかかった。初回リリース以来の大型新機能。
問題点:いらない
この機能を人に見せると、わりと良いリアクションをもらえる。
(うめのん氏「すごい!AIでこんなことできんの!?」)
嬉しい。
しかしまぁ率直にいって、ユーザーにとっては「なくてもいい」機能なのだ。
「あってもいい」と言ってくれる人もいるが、たとえば上の動画でも終盤に「おれは使わないかな」というコメントをもらっている。
正直つくっている段階から「この機能、使われないだろうな〜」とちょっと思っていた。じゃあなぜつくったのかというと、後述する思惑もあるのだけど、まぁ端的にいって開発者の自己満足だ。つくりたかったからつくった。
コア機能がぼやける
フィルター機能の追加によって、UIはこのようになっていた。
右から3番目のボタンがフィルターボタン。
で、僕が問題視したのは、右から2番目の、「表示グリッドを切り替えるボタン」の存在感が薄まること。
この右から2番目のボタンは、表示方法を3列、2列、1列、etc...に切り替えるための、めちゃくちゃコアな体験に関わるボタンだ。
(1列表示)
フィルターボタンが加わることで、「なんかボタンがいっぱいあるな...」となって、大事なコア機能のUIに気付いてもらえなくなる事態はどうしても避けたかった。
フィルターボタンを削除
というわけで、フィルターボタンを削除。
ただしフィルター機能自体をなくしてはおらず、まだアクセスはできる。
どこにあるかおわかりになるだろうか...?
枚数表示の左側にフィルターアイコンがあり、ここからアクセスできる。
この位置だとほとんど気付かれないと思うが、しばらくはこれでOK。多くのユーザーにとって便利な機能になったと思えたら、また昇格もあるかもしれない。
つくったのは無駄だったのか?/使われない機能をなぜつくったのか?
前述したとおり自己満足ではあるのだが、別の意図もあった。
このフィルター機能の実装はSwift Packageとして再利用しやすいようにつくっており、他の個人開発アプリへの横展開を考えている。
VisionやCore MLの処理結果を統合的に使う/それらの処理結果を保存して二度目以降は高速に取り出せる、という本質的なところは汎用性が高いので。
このへんはまた横展開版がリリースできた際にお知らせしたい。
最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/