Life is Really Short, Have Your Life!!

ござ先輩の主に技術的なメモ

サーフボードに乗り続けるのがプログラマ

あたりまえなんだけど、プログラマでいたいならプログラムを書き続ける環境を作ることほど、大切なことはない。

僕は2年ブランクがあったから余計分かるんだけど、陸に上がった魚は長く泳げない。少なくとも、泳げるようになるまで時間がかかる。さすがにプログラムそのものはかけるが、「プログラムを書くこと」と「プログラムでシステムを作る」ことは、全然違う。後者の総合的なスキルが、時と共に風化する。「文を書くこと」と「文章を作り上げること」が違うように。

自分が設計したプログラムを仕事として書く。機会的な意味でもスキル的な意味でも、結構難しい。誰かの書いたプログラムをいじったり、何のために作るのか良く分からないシステムのコードを仕様書とつき合わせて書くお仕事のほうが多い。特に不況になればその傾向が顕著になる。スクラッチでコード書いていいという仕事はかなり少ないんじゃないかな。

そーゆーのもあって、システムを作る話から遠ざかってある一定の距離に達すると、どうでもよくなってくる。最新技術は使わないし、勉強しても業務上必要ないし、動きゃなんでもいい感じになってくる。人を使うことを覚えるとなおさら。

特にサラリーマンプログラマは頭だけを貸すということが可能だから、自分の書いたプログラムの行く末を見ることが無い、ということが起こり得る。ずっとそういう環境にいると、なんだ単なる代筆業じゃんって考えちゃって、早くあがりたいなって思ったりするのかもしれない。なにより、自分の書いたコードに愛着がわかない。そんな人にTDDだアジャイルだなんだかんだって語っても無駄だ。コードの書き方でビジネスが変わることが理解できるわけが無い。

それはおいといて、プログラマってのはサーフボードに乗って常に海の中にいたほうがよい、と思う。同じ場所にいてもいいし、違う波をつかまえにいってもいいし、砂浜に上がってもいいけど、サーフボードに乗れなくなったらおしまい。常に乗れる訓練をどっかでやらないといけないんだけど、サーフボードに乗れる機会(海)も干上がって無くなっていったりするから、気をつけよう。