プログラムの間違いを探す前にデータを確認する

午前中、車の6ヶ月点検。点検の時期になるとものすごい勢いでお店から電話がかかってくるのだが、なぜかほとんどいつも自分がなにか用事のあるときで、かれこれ両手で数えるくらい電話してもらったり、申し訳ない (メールにしてほしいんだけど、メールはだめらしい)。購入してからまだ一度も車検を受けていないのだが、今年の7月が車検なので、ボーナスを取っておかないと……。

昼は年度末に向けた予算消化x2。1月中にある程度減らしておかないと、急に使い切ることができないのである。NAISTのコーポレートカードは引き落としの時期が年度内でないといけないので、2月になるとたぶん使えないし、そうでなくても年度内に物品が届かないといけないので、納期をチェックして発注しないといけなくなるので、金額の大きいものはいずれにせよギリギリには買えない。

午後は機械学習ツールの出力を見やすくするプログラムを書いて渡す。ただ、できたプログラムだけ渡しても意味が分からないし、自分で書けるようにならないので、目の前で一から書いて、どう考えて書いているのか説明したり、自由に質問してもらったり。誰かが書いているのを見てなにか言えるのは、プログラミングにかぎらず思った以上にお互い学ぶことが多いんじゃないかと思う。こういうの、なにかのときに導入できないかな。

ようやく環境ができたので、自分の研究に関するプログラムを書く。というか、デバッグだけど……。一から書き直したくなるのは山々だが、いろいろなノウハウによってちゃんと動くようになっているので、基本的にはおかしくなってないところ以外は触らない。しかし、最後に触ったのがだいぶ前なので、いろいろ忘れている。普段から書かないとだめね〜……

夕方はミーティングx2。バックアッププランも立てておいた方がいいんだろうか。頼んだ人が期日までにできないのは仕方ないが、間に合わないことが分かったら、できそうな人に頼み直さないとといけないので……。〆切がある仕事はなにかとしんどい。

夜は (ようやく) Tcl/Tk のデバッグ。こちらはすぐに直すことができた (たぶん)。Mac の Tcl/Tk はネイティブのものはちゃんと UTF-8 環境で動かないし、X11 のものはツールを使ってデータを見るのはよいのだが、編集するとき動作が遅くてときどき落ちるし、作業者さんが使っている Windows 環境と同じでないと安定して動かないので、Windows 環境を構築するところがいちばん時間かかった。

問題はデータのほうで、A, B と並んでいる記事ごとに本文を抽出したいのだが、出力すると AB, B と出て B がだぶってしまう問題で、3時間くらいおかしいと悩んでいたが、気がついてみるとタグがネストしているところがあって、

A
B
となっていると思っていたのに、
A
B
となっていた。元々のデータがこうなっている (内容を反映した構造としては正しい) ので、ちゃんとデータを確認しなかったのが敗因……。