なんとなく

誰得感満載な記事が多いかも。Mono関係とLinuxのサーバ関係、レビューとか。

ここで懺悔しておかないとな。

いわゆるLibrahack事件を題材とした物語である「ITエンジニア小説 鼠と竜のゲーム 高村ミスズ女史の事件簿」を読んだのでその感想を。

テンポも量もちょうどいいくらい

内容は物語として楽しめた。テンポもよく、1日もあれば読みきれる。長くなく短くなくちょうど良いくらいと思った。
ただ、プログラミングの専門用語を乱用している箇所があって、わかるけど、微笑む程度ではなく、かえってうるさいと感じるところが残念だった。
ある程度、IT技術知識がないと理解できない場合があるかもしれない。そういう意味では、技術者が楽しめる物語なのかなと思った。

ちょっと懺悔を

社会人になって2年目ぐらいにプログラマとして、Librahack事件を引き起こしたサーバ側の技術であるASP(Active Server Pages)でシステムを作ったことがある。当時は、技術者としてまったく余裕がなかったし、技量もなかった。今思うとかなり残念な技術者だった。

その後、プログラマではなく、システム管理に移ったが、
「定期的ではないけれど、時々、内部サーバーエラーでシステムが動かなくなって、1時間ぐらい経つとなぜか回復する。サーバ再起動しても、回復する。」
という現象がとあるシステムで起こっているということで調査したことがある。そのシステムは、アプリケーション・サーバは、ASPで、DBサーバはOracleだった。ASPでの開発経験があったので、担当になったと記憶している。おそらくLibrahackの図書館サーバでの障害のと全く同じではないが、似たような現象だったと思う。

「セッション変数でDBとのコネクションを保持していたので、それが原因でアプリケーションサーバから、DBサーバへ接続できない状況が起こっている可能性が高い。セッションタイムアウトの設定を変更するかDBの接続数を変更するか、別の方法でのDB接続に変更するようにすれば、良いと思われる。」
というような回答をした記憶は薄っすらある。
開発に関わったわけでもないし、調査だけだったので、環境を作って再現させるまで行ったのか、現象とソースから、おそらくそこが疑われるといったアドバイス的なことだったのかも不明ではある。
今となっては10年以上も昔の話で、会社も変わってドキュメントも残っていないし、正確には記憶していないがおそらくそのようなことだった。
Librahackの事件があった時も、すぐに思い出せなかったぐらいだから、かなり前のことだ。

事件が話題になった当時、AnonymousFTPでソースが公開されていたことがあったので、ちらっと見たのだが、ASPで開発していた頃の私のようなソースで、当時の私であったら、やりかねない書き方のソースだった。

おそらく当時のテスト項目設定における再現性の点から言って(DB接続数を超えたアクセス時のテストを行っていなかった点などより)、本番環境にリリースするまで、恐らくプログラマによっては、発見されないバグだと思う。ただ、発見されれば、改修されるだろうし、次回からのテスト項目には含まれるはずだ。

今は、そう考えられるが、当時の私であったら、できたかと考えると簡単に首を縦に振ることができない。それは、技量の無さからくる余裕のなさに起因するものだ。
ただし、個人の技量の無さや余裕の無さをカバーするのは組織であるはずだ。

もしかすると、事件に起因するものを生み出す可能性があった。

この本を読んで、Librahack事件を思い出し、さらに当時の自分を思い出し、個人として組織に属するものとして、今一度省み、技術者として真摯な対応を取れるよう常日頃心がけるべきだと再度思った。