COBOL技術者の憂鬱

COBOLプログラマは不在にしています

私の頭の中のユーザー


先週書き忘れていたことを、あと少しだけ書いておこうと思います。
クックパッド人気エントリー」サービス公開後に、実際にサービスを使ってみた妻から「なんでキーワード検索できるようにしなかったの?」と尋ねられました。
妻が言うには、「ほうれん草」などの食材でキーワード検索して、ほうれん草を使ったレシピを検索できると便利なのだそうです。
キーワード検索の機能については、私も開発中に検討していたのですが、任意のキーワードでデータストアの内容を検索するという処理が意外と難しくて、これは自分にはちょっと無理だなと感じ、途中で断念してしまいました。
そのかわりに、カテゴリを指定した検索はできるようになっているので、むしろそちらの機能を充実させた方が便利なのではないかと思い、カテゴリをヒット数順に表示させたりと、ちょっと凝った造りにしてみました。



で、そういったことを思い出したりしている内に気づいたことがあって、そもそも「キーワード検索したい」というニーズって、普段から料理をよくやっている人の発想なんですよね。
冷蔵庫を開けて、そこに入っている食材を組み合わせて今日はどんな料理を作ろうかなーと。まずは最小単位から始めてそこから料理全体を構築していくというのが、一般的な家庭の主婦の思考の流れなのではないでしょうか。
でも、私なんかは普段から全く料理をしないので、そういう発想ができない。むしろ出来上がった状態の完成品を見た上で、自分がこれから何を作るのかを決めたいんですよね。だからカテゴリ表示から入ってしまう。
とどのつまり両者の違いは、ボトムアップでいくのか、それともトップダウンでいくのかという、料理に対する発想の出発点の違いから来ているんですよね。


こういった例は他にもあって、例えばパソコンを新調する場合なんかだと、私だったらどのCPUとどのメモリを組み合わせて、最終的にどんなマシンに仕上げていくかというふうに考えていくわけですが、普通の(パソコンを自作したりしない)人だと、まず各PCメーカーのカタログを見比べてどれにしようか?ってなるんですよね。おそらく、それと全く同じことだと思います。



結局何が言いたいのかというと、一口に「ユーザー」といっても、その中には全く正反対の発想をする人が含まれている可能性があって、そういうことをプログラマが意識できているかどうかって、なにげに重要なことなのではないかと思うのです。
プログラマが、どういったユーザー層を意識できているかによって、アプリケーションのインターフェースって相当変わってきてしまうので、そこを意識できていないと、プログラマがよかれと思って一生懸命やっているようなことが、ユーザーにとってはどうでもいいようなことであったりとか、そういうことが頻繁に起こってしまうんだと思います。
私も、普段はSI的な仕事をやっていますが、自分はどんなに努力しても絶対にユーザー自身になることはできないような環境で仕事をしています。
ただ、ユーザーになることができないからこそ、もっとユーザーの行動を詳細に観察して、彼らの発想や思考の流れを研究することが必要なのではないかなと思ってしまうのです。
自分の頭の中で思い描いているユーザー層が、開発アプリの対象としているユーザー層と、果たして本当に一致しているのだろうか?そういった疑問を常に持ちながら開発に取り組む姿勢って、とても重要なことなのではないでしょうか。