人間ほど愚かな生き物はいない
キャッチーなタイトルってやつですかね、これ。
自分のポリシーのうちのひとつが、タイトルです。
色んな方向で捉えることができるとは思います。
人間がいるから戦争が起きる、人間がいるから環境は破壊される。
自分はシステムエンジニアとして働いています。
プログラムを書くこと自体より、プログラムを書く人たちがより"生産的"に働ける環境を作るほうが好きです。
なので「設計」と呼ばれる工程にいたり、ソフトウェア生産ラインよりも上から開発部全体を眺めたりしています。
生産ラインよりも上から眺める仕事では、たとえばGitサーバの管理、デプロイ用サーバの管理、みんなが作ったソフトウェアのリリース作業をしています。
自分が直接生産するのではなく、みんなが生産しやすくして、みんなが作ったものをそのまま世に送り出すのが好きです。
その仕事の中で無意識に気を配っているのが、記事タイトルです。
人間ほどダメなモノはいません。
人間ほど頼れないモノはいません。
人間を頼ってはいけません。
いつ悪人が入社して悪事を働くか分かりません。
人間を頼ってはいけません。
善良な人でも、寝ぼけてJenkinsのジョブを1つ消すことぐらいあります。
人間を頼ってはいけません。
いくらデータベーススペシャリストでも、数千万レコードのテーブルを集約関数でまとめて、それを数百万レコードのテーブルと掛け合わせるSQLを書いていることもあります。
だから、機械で防ぐんです。
機械は人間が指示したことしかしません。
全社員同じ機密情報が見れるからダメなんです。
機密情報は部署や社員の役職に応じて、権限を細かく付け替えましょう。
普段遣いのJenkinsのアカウントにジョブの削除権限があるからダメなんです。
ユーザができる操作は必要最低限にしましょう。
人間が書いたSQLをノーチェックでリリースラインに乗せるからダメなんです。
機械的に実行速度をチェックしてもらって、制限時間内に実行が終わるSQLだけをリリースするようにしましょう。
そういう考えで生きて、仕事をしています。
機械だって間違うことはあります。
それでも、素の人間の記憶力より数億倍マシなので、機械に頼りましょう。
まあ、機械が間違うのは、その機械を組んだ人間が愚かだから、なのですが。
非エンジニアの人に誤解してほしくないこととして、この考えはエンジニア界隈で一般的ではありません。
私としては是非一般的にしていただきたいのですが、残念ながら皆さん、人間に頼ってしまいます。
人間の職人技に期待してしまいます。
人間の読解力に期待してしまいます。
だから事故は起きるんです。
3年に1回しかやらない作業を、3年ごとにパーフェクトにこなすことを、人間に期待するのは間違っています。
人間、だいたい何か1つぐらいステップを抜かします。
まあ、そういう考えで生きているのが「自分らしい」点かなと思っています。
システムエンジニアではない方向からひとつ。
一時期話題になった、パーキングエリアのトイレの鍵が小物置きになっているアイデア。
これが個人的にはパーフェクトで、自分の仕事の理想形です。
このような設計にしたら、トイレに置いた小物を忘れようとするほうが難しい。
これで愚かな人間でも忘れ物をしなくなる。素晴らしいです。
どうか人間を過信しすぎないでいただきたい。
特にコンピュータシステムに関わるなら、目の前にあるでっかいハコを舐めないでいただきたい。
今年初には「noteやブログを定期的に書こう」と思ったものの、月1すら書いてない愚かな人間からの願いです。
.
cover picture: フリー素材ぱくたそ photo by 鳩に憧れるしまりす
この記事が気に入ったらサポートをしてみませんか?