急に寒くなった。
秋が猛烈に冬に向かっている。
その寒さと、台風やら雨やらで不安定な天気のお陰で、
体調がすぐれない一週間と数日であった。
体が辛いな、と思ったら次の日は雨で、
オレの体ってば、気圧に敏感。
ぐずる体を引きずりつつ、作業は細々とやって、
遂に遂に遂に、認知実験のプログラムが完成する。
そんでもって、実験の手順書と記録用紙ができたので、
あとはICレコーダーを部屋のどこからか探してくれば
いよいよ実験に取りかかることができる。
プログラムは当初の予定より大幅に遅れて完成した。
「こういう機能をもったプログラムを作りたい!」と思って、
作業をはじめても、
「この部分は到底いまの自分のスキルではできないな」とか、
「あ、こういう機能も必要だった」とか、
「ここはすごく頑張ればできそうだけど、すっごく大変そう・・・」とか、
いろいろと問題に出くわす。
その度に仕様は変更され、作業が増えて、
無理なところをどうやって回避するか頭をひねたり、
新しいスキルを身につけたりする必要がある。
そうこうしているうちに完成が延び延びになってゆく。
一歩進むと、ゴールが100m遠ざかるような感じ。
なので、スタートした時点でのゴールとはかなり違うものになっていて、
本当はこうやったりああやったりする機能もつけたいのだけど、という
点も少なくはない。
完成させたというよりは区切りを付けたという感じか。
学習(exploration)と利用(exploitation)のバランスは難しいものがある。
その時点でもっているスキルを利用するだけで何かをしようとすれば、
それ相応のことしかできないし、そこには成長の機会がないし。
一方で、学習に時間をかけてばかりいると学習自体は何も生まないので
非常に非効率ということになる。
自分はわからないことがあるとグワッと学習の方向に舵をとってしまう性質なので、
スキルは付くのだけどいたずらに時間ばかり経過して、
しかもそのスキルが大して役に立たなず何も成し遂げられないでぽしゃる
ということを良く経験している。
なので今回は、難しい部分が出てきたら、
それを克服するのにどれぐらいコスト(時間)がかかるか?
ということを常に気にかけるようにして、
あまりに時間がかかりそうなら諦めてもっと簡単な代替案を模索する
というコスト・ベネフィットの手綱取りを厳しくしてみた。
それから、進捗を記録したり、
次にどんな作業が必要か?ということを
メモりながらやった。
結局、振り返るのが恐ろしいぐらい時間がかかったけど、
挫折せずには済んだ模様。
上記2点はバイト中に培ったマネジメント手法なのだけど、
すっごく当たり前の事だったりする。
それでもついつい作業が行き詰まると
作業量と根性でカバーみたいなことになって、
上記2点のような事は煩わしくて放棄してしまいがちになる。
長期的に見れば、熱くなったら一旦引いて、
どこで間違えたか?どこまで引き返せばいいか?
他にどういう道があったか?ということを
頭を冷やしてから考えるほうがスマートに行く。
と、こうかくと明々白々自明の理な感じがするが、
熱くなっているときはそういうことが頭からすっぽり抜け落ちる。
* * *
やっとプログラムができた。
これで実験ができるかと思うとちょっとわくわくする。
結果を見たらきっとがっかりしちゃうのだとしても。