ぶろ開発 -62ページ目

雨降り出して引きこもる

雨が降り出して外に出る気を挫かれる。山が白いので昨晩雪が降ったみたいだ。平地は、もう桜が散ってるのに。正月にちょっと触った、スケルトンモデルのローダーの続きをコーディングしようとするが盛り上がらず。Schemeプロセッサ用のコンパイラ製作も中断。プロセッサがScheme言語を処理するための構造を持っているのだから、コンパイラーといってもプロセッサコードへのコンバーター程度のものだが。後、中断しているのは、タイガー戦車の組み立て。まあこれはコンピュータを触るのが嫌になった時のためにとってあることにしている。

締め切り

互換性を保つところで、原因不明の症状。現象は一定しているので、取りあえず抑えたら、原因不明というところが皆さんには気に入らないようで、追跡をさせられてしまいました。だいたい、こんな大量のコードがとぐろを巻いているところから発生しているしろもの、今日中にどうこうとうのは無理だと分かっているのだが、2時間かけてやっぱりわからんということになった。俺のの2時間を返せ!しかも締め切り日の!と言いたいところである。締め切り日は、QAからの結果を受けて、みんながガンガン修正をかけてくるので、そのための対応にめちゃくちゃ忙しい。コントローラを頑丈な仕様にしておいたところ、他のコントローラと仕様が違うのが気に入らないとのこと。わからんでは無いが、一緒にすると、カオス状態に巻き込まれるので、それを避けて、工数の少ない方法を使ったのだが。やれるか?と聞かれたので。やれるかもと答えはしたものの、今日締め切りなんですが。でやってみたら、動くと期待していた機能が、作動せず、その仕組みに乗っかれないことがわかり、断念。ここで元に戻るのもばかばかしいので、エンドエフェクタ1個バージョンという、使えるのか使えないのか分からない仕様に縮小。使えなくても、他との統一は取れているということでOKだそうな。

明日締め切り

フレームワークがどんどん変更されるので、すぐにこちらのプログラムで問題が起きる。何度直しても、同じエラーレポートが、やって来る。原因は違うけど症状はみな同じ。そのうち一つ前のリリースで使われてたテストデータがうまく読めなくなってくる。2時間かけて、対策はしたけれども、その間にもフレームワークの仕様が変わっていること間違い無し。バグを取ったというよりは、ただ対策をしただけというところが問題ではあるが、どういう経過でそうなったかなんて、もう追えません。締め切り直前の修正がきっとかかるんだろうな。そうなるとこっちにバグが残るだけだ。

押し寄せるバグ

昨日の問題は、結局エンドエフェクタのアライメントがちゃんと働かないときがあり、モジュールによって配列の扱いが変わってしまったために起こった。ずーと同じヘッダファイルを使って来たし、今週から何故扱いが変わったは、結局分かっていないが、デビットがもういいというので、それ以上は見なかったことにする。ものすごい使い方を色々とするお人のために頑丈にしたバージョンを、続けてアップしようしたら、突然コントローラがまともに動かない。さっきなにか変更がはいったようだ。差分を見てみると変更が多すぎて、追う気になれない。他のコントローラもビルトして様子を見てみると、やっぱり何かおかしい。私のコントローラほどじゃないところが腹立たしい。というわけで、とっておきの解決法である、たたみ込むように思いつくだけの初期化をするという方法をとってみる。リセットして、リフレッシュして、0フレーム進めるという、意味の無いことをやってみると見事動いた。仕様上はリセットでオーケーなはずなんですけどね。こんな勘だけの解決法をやって良いわけ無いが、明後日締め切りなんで許して下さい。突然遠方よりお客さんは来るし、コードをアップする権利がどっかに行ってしまうし、子供達にご飯だし。

バグ累積

再現性のあるバグから潰していこうとしたが、パブリックになっていない関数がいきなり呼ばれているところで、入って来た値がおかしいと言って正しく止まっている。しかもその関数、さらにパブリックになっていない関数からしか呼ばれていないしろものだ。全く関係の無い何か呼んでいるようなのだが、その正体がデバッガでも分からない。何かが良い感じでメモリを破壊して、壊された領域に飛んでいって、さらにとんでもないところに飛んでいって、こちらの関数に到達している。もちろんクラスのアドレスはむちゃくちゃだ。開発環境に詳しいブライアンに追ってもらうが、もうお手上げ。明日に持ち越しだ。