しゅっきーん。
 先日上司に言われた仕様変更を進める。設定で論理を反転したりしなかったり論理の操作がごちゃごちゃしている。ブール代数で簡単な式を出そうとしたが上手くいかなかったので、ブール表を描いてみたらあっさり解決した。あまりに単純な式になってしまったのですべてのケースで確認してみたが、間違いは無い。コードに落として動作をチェックしてみても問題無し。
 その後の別件の仕様の整理。あるパラメータの設定を排他的に行えるようにする。少し言い換えると、ある端子を複数の機能から使用できないようにする。既にある機能に割り当てられている端子を、他の機能が使用しようとしてもハネられるようにする。こう書くと割と単純に思えるけど、実際はハネられる条件がかなり複雑で見通しが立てにくい。力ずくでif文だらけのコードを書くことはできると思うが、ミスをする可能性がかなり高い。もうちょっと考えて上手い方法を思いつかなかったら仕方ないので力ずくで書く。
 途中で上司から仕様追加のお知らせ。これまた以前に自分が主張した内容だ(だからあのとき言ったじゃない)。実は今回のような場合を見越して仕様を簡単に変更できるようにしてあったのだけど、難儀なことに上司の指示は仕様の「変更」ではなく「追加」だった。つまり現状の仕様と切り替えできるようにせよとのこと。また無駄にややこしいことを…。
 定時後、しばらく居残って古い紙資料をスキャナにかけて破棄した。バラバラの書類をスキャンしてもかさはたいして減らないけど、千里の道もなんとやら、チリも積もればなんとやら。
 帰宅後、今度は自宅の古い書類やノートなどをスキャン。こちらも大して減らない。