プログラミングが捗る状態
昨日・今日とProDHCPの機能追加を進めました。ちょっとした追加・変更程度なら、他の仕事の合間にさっとできることも多いのですが、今回の機能追加はかなりディープで、仕様を考えついてから2週間以上、手をつけられませんでした。
複雑なプログラミングは、頭の中を相当開けた状態でないとできないのです。「あれもやらなきゃ」「これも」「この後ミーティングだな」「外出の予定も入った」というような状態では、ろくなプログラムにならないのです。
単にボリュームがあるだけであれば、順番に進めれば良いのですが、複雑な処理となると、一気に頭を集中させて、目処をつけないと、全体の整合性が取れないのです。
ちょうど昨日は祝日で、雨も降っていたこともあり、家族に「今日はどこにも行かないぞ!仕事が終わるまでは相手しないぞ!」と宣言して、プログラミングに集中できました。自宅だと割り込みも入らないので実に集中できます。その甲斐あって数時間で大体目処をつけ、今日、動きを見ながらさらに調整して、なかなか良い感じにまとまりました。
こういう複雑なプログラミングをしているときは、非常にハイな状態になります。実際はほんの数時間でできるのですが、その数時間の集中力はたとえようのないくらいの濃さになります。その状態になかなか入れないので、2週間も手がつけられなかったのです。このハイな状態の時は、他の相談がきても非常に不機嫌です。頭をそちらに切り換えたくないからです。本当に要点くらいしか聞いてません。
本来、社長という立場を考えれば、相談を優先すべきとは思っていて、それもあって日頃はなかなかどっぷりとプログラミングに浸れないのですが、プログラマー社長としては、まだまだ私でないとできない(技術的にではなく、ノウハウとして)プログラミングもたくさんあり、この先もこんなやり方を続けていくことになるでしょう。
ハイになって上手い感じに仕上がったときは、心地よい疲労感を味わえます。それがプログラマーの醍醐味です。若い頃はプログラミングばかりできましたので、しょっちゅうそういう感じを味わえましたが、最近は月に1回あるかどうかですかねぇ・・・。
まあ、基本的には腕のあるメンバーがどんどん集まってきていますので、彼らに任せた方がほぼ全ての面で良いのですが、私がどっぷり作ってきた製品のメンテナンスだけはまだまだ続きそうです。