この連載は、"常識"のやっかいさを知り、そこからエンジニアという仕事について考え、最終的によいモノを作っていこう、という試みです。
連載名の「常識をぶち壊す」とは、非常識がよいという意味ではありません。後述する常識の特性を知り、守るべきところは守り、壊すところは壊し、できるだけフラットな頭で世に貢献しましょうという思いを込めています。
第1回を読んでいない方はまずご一読ください。そして湧き上がってきた思い、感情、衝動を感じながらこの第2回をお読みください。
今回はエンジニアを惑わす「常識」の正体を明らかにしていこうと思います。
常識の持つ力
心理学まで踏み込むと複雑なことになりますので、できるだけ簡略化して考えていきます。
第1回「コーディングスタイルの常識をぶち壊せ」はいかがでしたか?
面白かった、ムカついた、納得した、呆れた、ほくそ笑んだ、憤慨した、勉強になった、説教したくなった、自身の常識を語りたくなった。何も思わなかった、という方もいるでしょう。不快な思いをされた方にはお詫び申し上げます。
第1回目の記事は「常識」の持つ力を体感していただくために書いてみました。何か感情が動いた方、どこで感情が動きましたか?
前半の「抜け出せ! 英文法の呪縛」では、経験してきた開発言語、コーディングルールへのこだわり具合、英語に堪能かどうかなど、皆さん個人個人で異なる常識に感情が動かされたことと思います。
後半の「マルチステートメント」では、古い常識を取り入れ、より複雑な例にしてみました。
常識ってなんでしょう?
人の行動や思考は、学習の繰り返しにより、意識から無意識へと降りていき定着します。だんだんとあれこれ考えなくても判断できるようになるものです。いつのまにか操作を意識せずに車が運転できるようになる現象がよく取り上げられますね。
無意識へ降りたことで、反射的に機能することを、パブロフは条件反射として表現し、NLP(心理学の一種)ではパートと表現したりします。
ブラックボックス化された関数のようなものと考えると分かりやすいです。最低限のパラメーターで呼び出すだけで結果が返ってくる。常識もこれに似たものと考えられます。
繰り返しの学習や環境によりルール化され、意識しなくても行動したり制限したりできるようになる意味で、反射やパートにとても似たものと考えられます。