「不安の9割は起きない」と言われても、残りの7%が気になる
「心配事の9割は実際には起こらない」
自己啓発書や心理学系の記事で、よく見かける言葉である。
元になった研究では、心配していたことの多くは実際には起こらず、さらに実際に起きたケースでも「思っていたほど悪くなかった」というものが含まれていた。そこまで含めると、悪い結果にならなかった割合は約93%になるという。
だから、たいていはこういう結論になる。
「心配事の93%は大丈夫だった。だから、そんなに心配しなくていい」
なるほど。
しかし、根っからの心配性である私は逆の計算をしてしまう。
「……ということは、残り7%は本当に嫌なことが起きたんだよね?」
世間が93%を見て安心している横で、私は残りの7%を見ている。
我ながら面倒くさい性格である。
93%大丈夫より、7%起きるほうが気になる
これを「たった7%」と見るか、「7%もある」と見るか。
心配性の人間は後者である。
エンジニアを長くやっていると、なおさらそうなる。
「ほとんどの場合は大丈夫です」
この言葉ほど怖いものはない。
ほとんどって何%だ。失敗した場合の影響は何だ。元に戻せるのか。
システム開発では、「99%大丈夫だから気にしなくていい」とはならない。残り1%でデータが全部消えるなら、その1%こそ対策する必要がある。
リスクは確率だけでは決まらない。
発生確率 × 起きたときの被害
で考えるからだ。
そう考えると、「9割起きない」と言われても残りを気にするのは、それほど非合理的でもない。
心配性はエンジニアには結構便利だった
私は昔からかなり心配性だが、仕事ではこの性格にずいぶん助けられてきた。
システムをリリースするときも、
「ここで落ちたらどうする?」
「データが壊れたら戻せる?」
「外部サービスが止まったら?」
と、嫌なことばかり考える。
そしてバックアップを取る。ログを残す。テストする。ロールバック手順を用意する。
かなり後ろ向きである。
しかし、システム運用では後ろ向きな人間が意外と役に立つ。
考えてみれば、バックアップも冗長化も監視も、根底にある思想は同じだ。
「何かが壊れる」ことを最初から前提にしている。
ITインフラなど、人類の心配性が巨大な産業になったようなものである。
それでも事故は起きる
問題は、どこまで心配してもリスクをゼロにはできないことだ。
人生ならなおさらである。仕事、人間関係、社会の変化。全部にバックアップ環境を用意することはできない。
だから最近は、不安をなくすのではなく、使う場所を分ければいいと思っている。
起きる前は、徹底的に心配する。
考えられるリスクを洗い出し、できる対策はする。
それでも起きてしまったら、
「まあ、しょうがない」
と諦める。
起きた障害に対して「なぜもっと心配しなかったんだ」と悩み続けても、システムは復旧しない。
原因を調べる。復旧する。再発防止策を入れる。
人生も案外それでいい。
人生には git revert がない
「不安の9割は起きない」と言われて安心する人もいる。
私のような人間は、
「じゃあ残りは?」
となる。
だったら無理に楽観的になる必要もない。
起きる前は心配する。できる対策はする。それでも起きたら諦めて復旧する。
エンジニアとしては、ごく普通の障害対応である。
システムならバックアップから戻せる。コードなら一つ前のバージョンに戻せる。
人生には、残念ながら git revert がない。
だから今日も、できるところまで心配しておくのである。