今回はこちらのツイートについて話をしていきます。
https://twitter.com/sakaiHulaHoop/status/1335518456922271748?s=20
一度でもシステム開発に携わったことのある人間ならだいぶ共感してくれる内容でしょう。
本題に入る前に、まずはかんたんに自己紹介から。
この記事を書いている人
- 34歳
- 茨城県出身
- 東京都在住
- システムエンジニア歴11年半
- フリーランス歴4年半
本記事を読むことで、システム開発をどんな前提で作らなければならないのかがわかります。
それではさっそくまいりましょう!
目次
【真実】プログラミングは性悪説でやるべき話【粗を探すのが仕事です】
あなたは性善説で生きていますか?
それとも性悪説で生きていますか?
性善説/性悪説についてかんたんに説明
まずは「そもそも『性善説』や『性悪説』ってなんやねん!」という人に軽く説明しておきます。
性善説とは、「人は生まれながらにして善い人しかいないことを前提にした考え方や価値観のこと」です。
田舎の家はみんな鍵を開けっぱなしで外出したりしますが、これは性善説で生きている文化だからですね。
一方で性悪説とは、「人は生まれながらにして悪い人しかいないことを前提にした考え方や価値観のこと」です。
外国に行くとスリに遭うからと言って財布を肌身離さず持っているのは、性悪説で生きている文化だからですよね。
プログラミングは性悪説でやるべき!
ここでやっと本題です。
【プログラミングは性悪説でやるべき】とはいったいどういうことでしょうか。
システムというとだいぶ幅が広いので、ここでは一旦ウェブシステムについて考えてみましょう。
普段よくアクセスするウェブサイトはなんですか?
おそらくほとんどの人が一度や二度どころか、毎日のようにアクセスしている『Google』を例にとってみてみましょう。
Googleのサイトはとてもシンプルな作りで、
- 検索ワードを入力する
- 検索ボタンをクリックする
- 検索結果一覧を表示する
という感じで構成されています。
ここで仮に、検索ワードを入力するテキストボックスが入力できなくなっていたらどうでしょう?
やりたいことができないので、Googleにクレームを入れるか、Yahoo!など別の検索エンジンに接続し直しますよね。
かなり極端なことを言いましたが、それだけシステムには完璧を求められているんです。
ちょっとでも不具合や想定外の動きがあることが許されないんです。
もうお分かりいただけましたよね?
これらを作るエンジニアは、
ポイント
- どこか不具合はないか?
- こういう場合でも想定外の動きにならないか?
といった感じで、自分たちの作ったシステムに欠陥がないかをくまなく探します。
「まぁきっといい感じに動くだろう」という性善説でプログラミングをしていたら、見つかるはずのバグも見つかりません。
自分たちで作って自分たちで悪いところを見つけるので、なかなか滑稽な感じですよね。。。
性善説でできる仕事ってどんなものがある??
今回は、システム開発やプログラミングは性悪説でやるべきという話でしたが、よくよく考えてみるとそもそも性善説で考えていい仕事って何があるでしょうか?
- 警察は悪いことしてる人がいないかを見つける仕事だから性悪説
- 物作り系の人はほぼすべてシステム開発と同様の理由で性悪説
- 事務仕事はミスがないように処理をする必要があるから性悪説
あーー、性悪説系の仕事ってけっこうありますね。
人の良いところを見たり、
助け合いで成り立つような仕事ってないんでしょうか?
- コンサル系
- 教育系
- エンタメ系
なんかは、良いところを伸ばしたり笑顔を増やそうという前提でやっている仕事なので性善説ですかね。
もちろん全部が全部とは言いませんが。
おわりに
今回は「【真実】プログラミングは性悪説でやるべき話【粗を探すのが仕事です】」というテーマでお届けしました。
あなたは性善説、性悪説、どちらの前提で仕事をしていますか?
ご自身の仕事への取り組み方や姿勢について見直すきっかけになったらうれしいです。
いずれにせよ僕が感じたのは、機械や仕組みの悪いところを見つけようとしても、人間に対しては優しくありたいということです。
癒しを求めてるのかな。。。(笑)
はい、ということで以上となります。