Rubyの定数はできるだけfreezeさせようと思ったもう10数年もRuby使ってるのに、すげー初歩的なミスに気づかず2日もムダにしてしまった。典型的な「mutableな定数」問題。baz(str)endみたいなメソッドbarがマルチスレッドの奥底で何度も呼び出されて、そのたびにCONSTの中身が変わってしまっているのに気づかず、スレッドの競合かなにかに違いないと決めつけて延々と別のところを調べていたという。'foo'.freeze」って書いておけばすぐわかったはずなので、今後本当に定数として使いたいときはfreezeすることにする。小田急線の脱線事故で帰宅難民化しそうになった「そろそろ帰ろうかなー」と思ってマシンを落とす直前に、小田急で脱線事故というニュースが飛び込んできた。乗客が乗ってなかったから怪我人なしというのは不幸中の幸いだけど、現場が相模大野ということは我が家の徒歩圏内が全滅ってことじゃないか、うわー。いえさすがに都心からの帰宅で代替ルートに困ることはあまりない。表参道から田園都市線に乗り換えて中央林間から歩けば、まぁいい運動になる程度の距離で済む。小田急の代替になった田園都市線の混雑がどんな悲惨な状況になるのかは想像するまでもないので、けっきょく9時ごろまでオフィスに残って、ぼちぼち空いたころを狙って帰ってきた。急行はそれでも激混みだったので、各停に座ってきたからさらに時間がかかったけれど。その日のうちに帰れて良かったよ。プログラマ、Webアクセス解析士を経て、現在はサイバーセキュリティ関連事業に従事。学生時代からフリーソフトウェア開発に関わりはじめ、かれこれ30年。RubyではWebアプリケーションを中心に開発。tDiaryプロジェクト創始者。2.6.5-p114。