プログラミングに無知な人にありがちな勘違い3選
プログラミングを独学してみて思う、プログラミング無知な人にありがちな勘違いを書いてみます。
最近世間の流行りを見て、RPAやら業務自動化やら指示飛ばしている無知なオッサン、オバハンにもぜひ見てもらいたい内容です。
よくある勘違いをまとめると次のようになります。
勘違い① コンピュータがうまく判断してくれると思っている
勘違い② 人間に取ってカンタンな業務=自動化できると思っている
勘違い③ インプットが必要という発想自体がない
これらは無知な人の発言にめちゃくちゃ出てきますが、全部間違っています。
順番に見ていくことにしましょう。
わかりやすい例を紹介してみる
初めに1つの例を用いてみます。
たとえば市役所でもなんでもいいです。
何かの申請がたくさんあったとして、申請者の年代を仕分けるという作業があったとしましょう。
申請の生年月日の欄を見て判断していくことになります。
まぁめちゃくちゃカンタンな仕事ですよね。
そうすると無知な管理職は
こんなカンタンな仕事は自動化できるでしょ。すぐやりなさい。
と指示するわけです。
いやいやちょっと待て。
生年月日には西暦で書く人、元号で書く人、アルファベットで書く人さまざまだったらどうするの?
人間にやらせるならすぐ見分けがつきます。
しかしコンピュータはきちんと指示をしておかないとそれができません。
指示をしておかないとエラーで止まります。
また、申請書の様式もいろんな種類があったらどうでしょう。
世帯用、個人用、法人用。
申請用紙がそれぞれバラバラだったら?
人間だったらどの欄が生年月日か見ればわかります。
しかしこれまたコンピュータはそれがうまく識別できません。
コンピュータに生年月日を書いてある場所を指示して読み取らせていた場合は、仮に生年月日の欄が様式でズレたとしても前と変わらない位置を読み込みし続けます。
仮にそれが年収の記入欄と変わっていたとしても気にせず作業を続けます。
それがプログラミングというものなのです。
この事例を元に冒頭の勘違いに戻ってみましょう。
勘違い① コンピュータがうまく判断してくれると思っている
コンピュータは基本的には言われたとおりのことしかできません!
生年月日の例だと西暦なのか、元号なのか、イニシャルなのかきっちり区別させないとエラーになります。
プログラミングは例えるなら行間が全く読めない人なのです。
すぐ「それくらい考えればわかるだろ」と思うタイプの人はプログラミングにもイライラすること間違いなしです。
それくらいコンピュータは融通が利かないのです。
生年月日ひとつ取ってもそうなるのだから、もっと複雑な作業だと言わずもがなですよね。
しかしコンピュータは言われたことは完璧に遂行します。
したがって、指示を漏れなく出すことが重要なわけです。
しかしプログラムへの理解がない人はこの部分はコンピュータが勝手に忖度してくれると勘違いしているんですね。
これは致命的な誤解です。
勘違い② 人間に取ってカンタンな業務=自動化できると思っている
次にこれです。
これも上と関連していますが、生年月日を読み取る作業は人間にはとてもカンタンな作業です。
しかしコンピュータにはそうとは限らないわけです。
人間は間違えたり疲れたりしますが、その代わりに自分で判断しながら作業を薦めることができます。
一方でコンピュータはそれができません。
西暦で書く人、元号で書く人、アルファベットで書く人がいたらそのパターン別に指示を出しておかないとエラーで停止します。
人間にとってカンタンか難しいかは重要ではなく、カンタンであっても判断の分岐がある場合にはそれをきちんと指示しないとコンピュータは動かないのです。
なので人間に取ってカンタンだからコンピュータならすぐできると考えるのは誤りなのです。
勘違い③ インプットが必要という発想自体がない
最後にこれです。
プログラムとは基本的にはインプット→処理→アウトプットすることを指します。
しかし無知な人は最初のインプットが頭になくて、プログラムとは処理してアウトプットすることだと思っている人がとても多い。
料理で言えば材料を渡さず調理して、とお願いするくらい滑稽なことです。
例で言えば申請内容を読み込ませるという部分がインプットに当たります。
そして実はこのインプットの仕方がうまい下手でプログラムの作り易さや汎用性が変わります。
たとえば申請書がエクセルだったとします。
申請書の生年月日の記入欄が西暦だったり和暦だったり、あとは申請書によってセル番号が変わったりするとたちまちプログラムは混乱します。
しかしインプットにあたるこのエクセルの書式を、常に西暦で記入するように作る、セル番号はどの様式でも同じ、という風に作ればこのエラーはなくなります。
インプット情報の作り方次第で自動化する難易度が大きく変わるのです。
しかしプログラムに無知な人はインプットの発想自体がなく、目の前にある申請書を単純作業で処理するだけなら自動化でいいじゃん、何が難しいの?となるわけです。
しかしまず大事なのはインプット。
そして大体インプットする申請書みたいなものは人間が作るわけなので、まずそこから整理しないと自動化なんて夢のまた夢なわけです。
人工知能のすごさ
最近流行りの人工知能。
いわゆるAIですね。
この人工知能が何がすごいかといえば、きちんと指示をしなくても自分で勝手に判断できるってことなんです。
たとえば碁で世界チャンピオンを倒したグーグルのアルファー碁は、碁のルールを教えられていないそうです。
過去の対局のデータを読み込ませれば勝手にルールを解釈して打ち手を考えていく。
それが人工知能のすごさなんですね。
裏を返せば人工知能でもインプットが最初にあるわけだし、従来のシステムっていうのは自分で解釈ができないので指示を全部出す必要があるっていうこと。
業務の自動化がしたければ、まずは人間が作る申請書やデータなどインプット情報をきれいにすること。
それから始めなければいけません。
まとめ
いかがだったでしょうか。
僕もプログラミングを独学してまぁWEBブラウジングを自動でやるくらいのスキルしかありませんが、全く無知だったころの自分や周りの人を想像して書いてみました。
僕よりはるかにスキルがある人にとっては物足りなかったり、思慮が足りなかったりするかもしれませんが、業務で少しやる程度の人にはぜひ知っておいてもらいたい内容です。
エクセルを操作するくらいならエクセルのVLOOKUPを操作するより少し毛が生えた程度です。
毛嫌いせずやってみましょう!!
それでは!