2017年11月7日火曜日

プログラマーの三大美徳

3大美徳は必要不可欠な要素とされています。
有名なので今更ですが、自分なりに解釈してみます。
※オリジナルの解釈とは微妙に異なります。


■怠惰
laziness:勤勉に仕事をすることを嫌う意。
これを意味するのは、効率主義です。
実現するためには、楽をするための努力をすることになります。
これほんと重要。私は高校時代に身に着けました。
勉強が大嫌いだったので、勉強の効率化を徹底していきました。
そして天才と呼ばれるよになります。

逆にこれができない人は、何も考えずに、ただひたすらにやるだけの人です。
勤勉ですが、時間を浪費するだけで、間違った方向の努力です。
頑張っけどと言って失敗に終わりやすいタイプになります。

■短期
Impatience:我慢できないこと
これを意味するのは、柔軟性です。
短期な人は、ストレスを回避しなくてはなりません。
そのために、柔軟で綺麗な設計をするようになります。
さくさく仕事をこなせる環境をつくり、こなしていきます。
仕事をしていて、かなり感じます。短期なほど色々気が付き便利な機能を作ります。
そして神と呼ばれるようになります。

逆にのんきな人は、どんなひどい動作でも、何も感じず、何もしません。
大変でも最終的に目的が達成できればそれでよしとなります。

■傲慢
Hubris:高いプライド
これを意味するのは、完璧主義です。
皆から褒められる物を作ろうと努力します。
これは特にソースコードの綺麗さに現れます。
プログラマーにとって、一番性格が出る部分がソースです。
ここが汚いと恥ずかしいと感じるのです。プライドが許しません。
結果、保守性の高いソースができるのです。
そして・・・・伝説となるかも。

逆にプライドの無い人は、うごけば良いの考えで、ひどい物を作ります。


以上ですが、本当に必須要素だと日々実感します。