shake hands

photo credit: screenpunk via photopin cc

以前、「優れたユーザーインターフェースがコストを下げる理由」でも書いたように、ソフトウェアやWebの世界でユーザーインターフェースが重視されるようになり、以前に比べるとデザイナーとエンジニアが一緒に仕事をする機会が増えてきました。

一部には、「デザインもプログラミング両方やるよ」というスーパーマンみたいな方もいらっしゃいますが、大抵は一つのプロジェクトにデザイナーとエンジニアが別々に居るケースがほとんどで、たびたび衝突するのが実態です。

立場、モノの見方、重視する点が違うから対立するのですが、そうだと分かっていてもお互いに相手を受け入れることが難しく、ついつい感情的になってしまうものです。

というわけで、自分がエンジニアなので一方的ではありますが、デザイナーのみなさんに理解していただきたいことを三つだけ、この場をお借りして伝えさせていただきます!

ビルド回数はできるだけ減らしたいのです

ソースコードを一切変更しなかったとしても、ビルドし直すとそのプログラムは別ものになるのです。つまり、ビルドすれば最低限の動作検証が必要になります。

アイコンを変える、背景画像を変える、ボタンのイメージを変える、これだけでも新たにビルドすることになり、最低限の動作検証が必要、というわけです。

一方で、バグのないソフトウェアは存在しません。バグは常に存在するのですが、たまたまみつかっていないやつがいるだけなのです。

そういうやっかいな奴は、ソースコードを変更していない時に限って出くわします。そして、見なかったことにするわけにはいかないのです。

ソフトウェアの品質は、評価時間と発見バグ数の関係によって算出される「収束率」で評価されます。もし、リリースの直前にバグが発見されると「収束率」が下がってしまうので、相応の時間の評価作業が新たに必要になるのです。

もちろん、バグを出す方が悪いのは分かっています。でも、お願いですからリリース直前の素材変更は避けていただきたいのです。

数値化してくれると嬉しいです

デザイナーさんが作った画面デザインを実装する時、そこに描かれているものを数値に置き換えてソフトウェアに載せるのが、エンジニアの仕事のひとつです。表示するオブジェクトの高さ、幅、左隅から右へ何ピクセル、下へ何ピクセルの場所に置くのか、もしくは隣のオブジェクトから何ピクセル離れたところなのか。

もしかしたらデザイナーさんは、画面デザインをする時そういったことを考えていませんか? 画面全体がこの大きさだから、どういう比率で配置しようか、各要素の間隔は何ピクセルにしようか。そういう情報をデザイン画像とは別にいただけるとエンジニアは幸せです。

ひとつひとつ要素の座標をデータ化してくれとはいいません。このデザインはこういう考え方で配置を決めている、そんなメモをちょっと付けておいてくれると、エンジニアの退社時刻はもう少し早くなること間違いありません。

エンジニアにも好き嫌いがあります

エンジニアは、自分がデザインの専門家でないことは自覚しています。でも、デザイナーさんが作ったデザインを見て、ちょっと残念そうな表情を浮かべることがあるかもしれません。エンジニアもひとりの人間、好き嫌いはありますから、自分の好みでなければうっかりそんな顔をしてしまうかもしれません。もしかすると、余計な一言を口走ってしまうかもしれません。

しかし、デザインを決めるのはあなたですからそんなこと気にしなくていいんです。「これが最高のデザインだ!」という意気込みでいてください。エンジニアはそれを頑張って実装していきます。

でも、ちょっとだけエンジニアの声も聞いて貰えると嬉しいかもしれません…。

勝手なこと言ってゴメンナサイ

以上、エンジニア視点の一方的な意見でした。デザイナーさんにはデザイナーさんの意見があるのは承知しております。エンジニアもデザイナーさんの気持ちを尊重したいと思っています。現場で一緒に仕事するもの同士、お互いの理解を一層深めて、より良いものを産み出して行きましょう!