エンジニアが求めるべきは「理想」でなく「正解」
本音が語られるエンジニア参加型メディア「@IT自分戦略研究所 エンジニアライフ」。日々、ITエンジニアの「生の声」を公開している。
- 【考え方】その検索システムは、利用者を検索から解放しているか?
- 【働き方】個人個人の最適解
- 【スキル】デザイナー兼SEの道!
【考え方】その検索システムは、利用者を検索から解放しているか?
コンピュータを使っている人で、検索エンジンに頼っていないという人は少ないだろう。最近の検索エンジンはユーザーのタイプミスを指摘したり、ユーザーが検索したい言葉を予測して候補を出してくれたりと、かなり使いやすくなっている。
しかし、Crazy for life(セイカツ イチバン、IT ニバン)のonoT氏は、このような検索エンジンを「まだまだ使いやすいインターフェイスに仕上がっているものばかりではないように思う」としている。そして、その原因として検索システムが「利用者にシステマティックな思考を強制している」という点が挙げられるという。
その結果、「利用者は、設計者の意図を推測しながら入力フィールドを埋めて何度か検索を繰り返し、その結果をフィードバックしながら設計者の意図と自分の推測との誤差を埋める努力をしなければならない」ということになるそうだ。
しかし、アプリケーションを利用するコンテキストを考えれば、ユーザーにとっての使いやすさは格段に上がるはずだとしている。さらに、この部分をはっきりさせた例として「駅.Locky」というiPhoneアプリを紹介している。
電車の発車時間が気になるという状況だけを考えて、ユーザーの操作をほとんど不要にしたアプリケーションだ。このようなアプリケーションが増えることが、ユーザーを検索から解放できるのだろう。
【働き方】個人個人の最適解
コンピュータシステムを作るとき、「理想はこうあるべき」という人がいるが、その理想を追求することは果たして正しいのか? 理想とは言っても、ユーザーにかなりの前提知識を要求するものになっていないだろうか。ユーザーが必要としているのは、きれいにできたシステムでなく、すぐに、簡単に使い始めることができるシステムだということに異論をはさむ人はいないのではないだろうか。
『地方からの戯言』のAhf氏はこれまで受託開発に携わってきた経験から、「どのような技術をどこまで適用させて利用してもらうか、という点」が難しいという。
同氏は、ユーザーのどんな要求にも応えられるように、最新の技術に積極的に触れてきたが、その成果を毎回の仕事で利用するかというと別の話だという。
例えば、チームで開発を進めるとき、自分が身に付けた最新技術で開発を進めようとしても、メンバーの中にその技術をまるで知らない人がいれば、「他の人間に習得してもらうよう、時間を取って教える」などの手があるという。しかし、費用や納期といった問題を考えると、それはとんでもない不正解になってしまうことがある。
デジタルなツールを使うときはツール自体の使い方に縛られてしまい、それに追従するだけに終わることが多いということだろう。その点、紙などのアナログなツールは「手軽に使い始めることができて、工夫しやすい」という。「運用のルールも柔軟に変えられる」というメリットもあるという。これならば、ツールの使い方に縛られるということはないだろう。
また、PCの操作に習熟していない人をユーザーとして想定したシステムの場合は、操作方法をどうするかをよく考える必要があるという。「コンピュータではキーボードを使って操作するのが普通ですから、覚えてください」というのは簡単だが、システムを作る人間としては最悪の答えだろう。コンピュータに人間を合わせさせるのではなく、なるべく人間に歩み寄ってくれるコンピュータシステムが必要だ。
氏は、「『新しいから使う』のではなく『適しているから使う』、でなければいけない」という。そして、エンジニアの仕事では、「唯一の絶対的な解」があるケースはほとんどない。どのような問題に対しても数多くの解法が存在し、「こうでなくてはならない」という型はほぼ存在しないそうだ。場合によっては、「あえて理想的ではない形を取る」こともあるとしている。
新しい技術を積極的に学ぶのは正しい姿だ。しかし、学んだばかりの技術を早く使ってみたい一心で、どのプロジェクトでも使おうとするのは他のメンバーの邪魔をしていることと同じだ。
【スキル】デザイナー兼SEの道!
Webアプリケーションがすっかり普及してしばらくたつ。利用者から見ると、Webブラウザがあれば利用できるので便利に使えるものだが、作る側にはいろいろな悩みがあるものだ。
『デザイナー兼SEの道!』のいっさん氏はWebデザイナとデベロッパの2つの顔を持つエンジニアだ。
同氏はある日、ユーザーから「このような画面デザインにしてほしい」という要求を受け取る。最初に見たときには簡単にできるだろうと考えていたのだが、CSSやJavaScriptを駆使してもどうしてもユーザーの望むようにはならない。
「自分ならプログラミングしやすいデザインにするのにぃ~」と悩みながら、あらゆる文献に当たって、何とかユーザーの要求に応えたそうだが、同氏は「CSSの知識がない人がWebの画面設計をやると、『実はこの実装は難しい』ってことを知らずに作成して、クライアントに見せてOKもらってコーダーに回ってきちゃうんですよね」と漏らす。
極力ユーザーが使いやすいシステムを作ることはもちろん大切だが、細かいところで何回もつまずいていては、システムを完成させることなどおぼつかない。人間にとって「なるべく使いやすい」システムという点を探るのが良いのだろう。
コラムニスト募集中 |
エンジニアライフではコラムニストを募集しています。 応募資格は ・ ITエンジニア(元でも可) ・ ITが好きで、将来はIT業界に就職しようと考えている学生 ・ ITエンジニアの採用に関わっている人事担当者 ・ ITエンジニアの育成に関わっている教育担当者 ご興味のある方はコラムニスト募集ページをご覧ください。 |
【過去の「おすすめエンジニアライフ」】
・人間は進歩しているのだろうか?
・エンジニアたるもの現状に甘んじるな!
・基礎を身に付け、社外の活動に飛び込んでみよう!
・エンジニアたるもの、「ドラえもん」に甘えてはいけない
・「ワークライフバランス」に対する違和感の正体
・新年度スタートは自分を見直すチャンス
・よりよい復興のために、ただ見ているだけではなく
☆全コラム一覧