マーフィーの法則
失敗する余地があるなら、失敗する。
バターのついたほうが下に落ちるし、
洗車をすれば雨が降る。
休暇を取れば、トラブルの電話が鳴るし。
悪い知らせが重なる。
何故...と思ってしまいますが、
「人間の認知の問題」と「なるべくしてなった」の2つに集約されると考えています。
人間の認知の問題
悪いことは記憶に強く残ります。一方で平常通り、想定どおりのことは気にとめません。
もし、単なる不運なのであれば、気にしないことです。
しかし、単なる不運であることは実のところ、あまりありません。
なるべくしてなった
失敗する余地がある限り、失敗するのです。
- configtestをせずに設定ファイルを変更後にWebサーバーを再起動すると壊れる
- git diffやgit statusを確認せずcommitすると間違った修正を混ぜてしまう
- デプロイをFTPクライアントを立ち上げ、ドラッグアンドドロップでやると間違いが起きる
- 日頃から悪口を言っていると本人に伝わってしまう
運の良い人、運の悪い人
運が良いという人と、運が悪いという人がいます。
人によって運勢が低い部分で安定したり、高い部分で安定するものでしょうか。
運が悪いという人は、その状態を自らがつくっているようにも思います。
人の説明や周辺の情報を逃す。
相手の細かなリアクションに気付いていない、目的を推測できていない。
注意が散漫。
嗅覚という抽象的な言葉にラッピングされがちですが、経験が豊富な人ほど嫌な予感、うまくいかない空気を早めに察知します。
運が良いという人はこういう人でしょう。
そういう私は運が悪い人間です。
端的にいうと、どんくさい人間です。
鎌倉の海でトンビに襲われた
今年の春に家族で鎌倉旅行に行きました。
朝食のないプランだったので、海も近いため朝に散歩がてら海辺に行ってサンドイッチでも食べることにしました。
そこで、サンドイッチを食べ始めたところ、トンビが上空からやってきて一瞬で手元のサンドイッチを奪い去りました。
その後、息子に問われました。
「ねぇパパ、鳥にサンドイッチを奪われた後、どう思った?」
私は答えました。
「自分が不甲斐ないと思った。」
「平和ボケしていた。隙があった。周りが見えていなかった。」
「よく考えれば回避できたことが回避できなかった。それが悔しい。」
まさにマーフィーの法則だなと思ったのです。
失敗する余地があるなら、失敗する。
息子は事あるごとに、ニヤニヤしながらこのときの出来事を掘り返します。
「ねぇパパ、鳥にサンドイッチを奪われた後、どう思った?」
ヒューマンエラーを防ぐ知恵
日々の生活の工夫や習慣で回避できるエラーもあります。
私は"運が悪い人間”なので、下記のような工夫をしています。
- 鍵は自分で閉める(外出時に内側から施錠してもらわない)
- 鍵の持ち出し忘れ防止、習慣による鍵の閉め忘れ防止
- 洗濯時の一連の作業は1トランザクションとして途中離脱しない
- 衣類が入っている状態のステータスが常に洗濯済の状態とする
- 洗剤入れたかな?スイッチ入れたあとなのかな?などの不確かな状態にしない
- 食洗機も同じく1トランザクションとして途中離脱しない
- 中途半端に入れて、もう少し汚れた食器がたまるまで待つようなことはしない
- 電車の網棚は利用しない
- タクシーに乗るときは荷物を膝の上、または体に掛ける状態とする
- 飲酒した状態でメールを送付しない
- 生活用品はなるべく定期便で届くように
あぁ、そうそう。春の旅行の出来事を経て、ひとつ追加されました。
- 外でサンドイッチを食べるときには、上空に敵がいないか確認する
仕事の場面でも
失敗する余地をつくらない仕組みづくりというのは、業務においても大切です。
技術者はその仕組みづくりを担うのが役目だとも思います。
日々の運用のコストを増やさず、業務フローでエラーを回避できるのであればそのようにするべきです。
各種Lintを通らないとマージできない。レビューを通らないとマージできない。
マージすることにより自動でデプロイされる等。
"運の悪い人間”から"運の良い人間”になれるよう、頑張っていきたいと思います。