Do what you wish.

programmingのことだったり頭の整理だったり。

良いものを作りたいなら何ができるのか

僕はプログラマとして働いています。 プログラマなので開発ではコードを書くという業務が一番多いですが、 良いものを作りたいと思ったら、何ができるのでしょうか。 自分の頭にあることをまとめたいと思います。

良いものを作るためにできる事

良いものを作るために、自分がプログラマとしてできることは色々あると思います。 コードを書くのはもちろん、テストして、レビューして… それらの中で、良いものを作るため何ができるのかをバッサリと2つに分けると、 品質を上げること魅力を高めること に分けられると考えています。

1. 品質を上げること

プロダクトを作成していくとき、色んなものがマイナスとして積もっていきます。 一番わかり易いのはバグですね。それ以外にも、読み込みが遅いなどといったユーザーを不便にさせているものなど、品質を下げる要因が発生してきます。

これらの要因は作品の良さをマイナスにしていくものです。 いくら魅力的な作品でもバグですぐ落ちるアプリや、遅いWEBサービスは誰もやらなくなるでしょう。

これらのことを改善していくことを、品質をあげること、と捉えています。 品質をあげることは、例えるならば、積もっていくマイナスを少しでもゼロに近づけていく作業です。

品質をあげるために具体的に何をやるかというと、バグなどのマイナス要因をなくすためにテストやコードレビューなどを行い、ソースの品質をあげていきます。

2. 魅力を高めること

マイナスをゼロにしたからって、作品が良いものになるわけではありません。 できたばかりの仕様は、荒削りなものが多いです。 UIが意外と使いづらかったり、機能がわかりづらかったり…。

そういった、できあがった仕様はブラッシュアップしていく過程で良くなっていきます。UIを使いやすくしたり、わかりづらい箇所に説明を足したり、様々な問題の解決を行います。

これらを魅力をさらに高めていく行為と捉えています。 それはプラスをさらに伸ばしていく作業です。

具体的には、レビューをして当初の仕様より良いUIや挙動に改良することが一番多いですね。 繰り返しレビューをしていき、魅力を高めていきます。

さいごに

こうして言葉にしてみると当たり前な感じですね。 ですが、日々開発をしていくと、マイナスをゼロにすることに注力してしまい、プラスを更に伸ばしていくことはおろそかにすることがあるんではないでしょうか。

プログラマにとってバグや欠点というものは目につきがちですので治そうと思う機会は多いのですが、プラスにする作業は意識的にしないと意外と見落としがちなことがあるんですよね。

縦軸と横軸の関係のようなもので、片方だけをやっても魅力的な製品にはなりづらいと考えています。 意識的に両方をおこなっていきたいものです。