プログラミングと心

前回の記事でチラリと書いたプログラミングと心についてツラツラと。

プログラミングとは作るのに十分が技術を得た後はただ心との戦いとなる。
もちろん技術や知識が上がればよりよい解決策を見に付け、よりスマートに解決できるのかもしれない。
だがそれは大体のプログラムにおいて二の次に過ぎない。

例えばテスト駆動開発という開発手法が存在する。
これはプログラムをテストするプログラムを書く事によりよりよいプログラムを書こうというものだ。
だがこのテストを書くという作業は精神的に非常に辛く、この開発手法を導入しても満足にテストが書かれていないのは業界内では日常茶飯事であったりする。

他にもコメント、コピペコード、ペアプログラミング、コードレビュー、極端な話をしてしまえばオブジェクト指向や手続き型や関数型言語といった区分けなども含めて様々
それらは実際にコードを書くための方法ではなく、プログラマーによりよいコードを書かせるための手法のようなものは上げていけば限が無いほど存在する。
これら全て完璧に実践できれば完璧だとまでは言わないが、間違いであるとうすうす感じつつもその間違いを続けてしまっているのはほぼ全てのプログラマーに対して言える事だと思う。

もし仮に、これら全ての誘惑に負けず、プログラマーとしてあるべき理想像とでも言うべき物を追求できる人が居たとすれば
その人は、ただ技術力が高いだけのプログラマーとは比べ物にならないほど素晴らしいプログラマーといえるだろう。

武道では最終的には技術力ではなく精神力が物をいう世界だとよく聞く。
そういう意味では、プログラミングも武道のようなものなのかもしれない。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です