改め Objective Technician

はぐれ技術者のやりたい放題

「アイディアに追われる」

2009-05-28 22:39:59 | 勉強
最近の素行


夏の学会の原稿&実験

TAの仕事でプログラミング(ActionScript)

研究室内バイトでプログラミング(ActionScript)


今月になって独自に発見した現象をネタにして学会に出すことになり、短い間に実験して文献調査してストーリーを作って、アブスト提出までなんとかたどり着いた。

これから追加実験やってもっと話を詰めて行かないといかん。




それと並行してプログラミングの仕事。

今回の案件は要求される機能に結構な無茶があり、どうやって実現しようかと寝ても覚めても頭の中はそればっかり。

なにせ要件がフリーダムすぎる。

あれだけの要件を満たす自由度を実現すべく夢中でコーディングを進めていて、気づいたら、逆ポーランド記法で数式を評価するとかGUIで自由に定義した関数を自由なパラメータにアサインするとか、ひょっとして自分は新しい言語のコンパイル環境を作ってるのではないかと勘違いしてしまうような実装フェーズに突入していた。


一段階メタなアプリケーションを作るのは初めてだからもう無我夢中。




今回みたいに、ちょっと大規模なソフトウェアを作ってると、「アイディアに追われる」状況になる。
「忙しい」とは違う。

あんな方法であれの機能が実現できるとか、この書き方がもっとスマートだとか、あそこのバグはそれが原因じゃないかとか、こんな機能を加えればもっと便利になるとか、あんな機能が作れたらすげぇ、とか、いつどこにいても次から次へとアイディアが出てくるので、メモするかその場で実装してしまうかしないともう追いつかない。


その場で思いついたロジックは意外と早く忘れてしまうし、それまで自分が書いたロジックが頭の中で整理されて残ってる時間も意外と短い。

だから思いついたそばから実装して、日と時間を空けないで突貫でコーディングするのが結果的に効率的。


一度こんな状態にハマると、プログラムがとりあえず完成するまで(ふつう10日前後)他のタスクの進捗が限りなくゼロに近づき、食事や睡眠を忘れるようになり、目から生気が消え失せ、取り憑かれたようにキーボードを叩き続ける、といった症状が出る。





こんなでもかろうじて人間やってられるのは、陸上競技で体動かしてるからだとホントに思う。