プログラミング作業を将棋に例えてみる
特に非エンジニア向けに書く。
プログラマーの仕事はエディタに向かうことではない。
「お前は何を言っているんだ?」
まぁ、待って欲しい。説明する。
「将棋指しの仕事は駒を動かすことだ」
?おかしいですよね。将棋指しの仕事は駒を「どう」動かすか考えることだ。
実際にレベルの高い将棋指し同士は、盤面が無くても脳内だけで試合ができる。
もちろん、プログラミングを実際に行なわないとコンピューターは動かない。
さらに例える。
プログラミング作業におけるコードをコンピューターに打つという作業は、
将棋指しが駒を動かす。というのに近い。
ただし、場合によっては駒の重さが30kgぐらいある。
どんだけ優れた将棋指しでも、30kgの駒を100回とか動かしたら、
疲れて頭回らなくて素人にも負けてしまうかもしれない。
30kgもある駒を動かすのは大変だ。
だからプログラマーはエディタ工夫したり、
開発環境工夫したり、色々して駒を軽くする。
盤面について考えることも大事だし、
駒を軽くすることも大事。
で、優れたプログラマーは駒をめっさ軽くする。
となると、プログラマーの仕事は、
ほぼ、考えることだ。
ご理解いただけただろうか?