こんにちは、Mahaloです。何やら2020年を目処に、小中高校でプログラミングの授業が必修科目にする為に、行政が動いているようです。でもこの取り組みって本当に難しいと思いますし、学校の先生が教えられるのか?という疑問もあります。
IT業界で働く私に取って小中学生がプログラミングというと、心配になってしまうので、何故心配になるのかと、成功するための私なりの考えを述べていきたいと思います。また、最近では子供の習い事にまで、プログラミングがあるというのだから驚きですよね。
プログラミングの必修科目化が心配
プログラミングというのは、数学や科学と違って答えが無い科目です。100人いれば100通りの答えが出てきます。不思議でしょ?でも、プログラムとはそういうものです。よく海外の算数のテストで、「X+Y=10」XとYには何が入るでしょうか?というような問題ありますよね。
プログラミングでも同じです。というよりもプログラミングの方がXとYのバリエーションが多い為、すぐに正解なのか判断できないものです。
このような問題が発生していてもお構いなしに、学校教育では、1+X=10でXに入る数字は何でしょうという形で、テストするでしょう。さらにXを自由回答にせず選択式にするような気もします。
では、なぜ一つの答えを回答させようとしたらダメなのでしょうか?
理由は簡単です。プログラミングは暗記科目ではないからです。今の日本の教育は暗記さえずれば、どうにかなるという勉強方法です。この状態で、プログラムを授業に取り入れるのが恐ろしいと思いませんか?
プログラミングを習い事、必修科目化の目的
プログラミングの習い事も流行っていますよね。IT業界で働く者からしたら、非常に不思議です。だって、プログラミングを学生時代にやっていたとしても、社会人になってからやったとしても、能力の差は発生しないのだから。文系の大学出ている方も理系も初心者も経験者も、入社後の差は一瞬で消え去ります。
では、なぜプログラミングを学ぶのでしょうか?
IT業界に子供を入れたい。今後IT業界が発達するからという理由でプログラミングを子供にさせるのであれば、その考えは改めた方が良いでしょう。
IT業界は今後、プログラミングをせずとも、システムが完成してしまう時代に入っていきます。2016年現在でもマウスクリックのみで、システムが完成してしまう仕組みもできています。極端にいうとプログラミングが出来なくても、システムが完成してしまうのです。
プログラミングの目的はプログラム的な思考?
プログラミングをすることで学んでほしいのは、プログラムがどの様に構成されているか細分化して捉え、どの様にすれば効率的な動きをするのか知ることです。
簡単に言うと、プログラム的な思考ができる様になってほしい。
この思考ができると、何気ない日常のできる事を細分化して本質を捉えることができる様になります。論理的に物事を考えられます。それに、システムにはトラブルは付き物ですから、問題解決力も身につきます。
つまり、左脳的な生き方をする為の総合力が身につくのです。
また、高校生くらいになったら、日常の問題点や手作業で実施していることをシステム化するとどういう構成になるかといった、システムエンジニアやシステムアーキテクチャといて学ぶ場を提供してあげたいですね。
間違っても学校教育で、暗記中心のプログラムを書くだけの授業は本当にやめてほしい。これでは、プログラマーですら育たないですし、意味ないのです。
高校生がテスト勉強で、「ここに入るプログラムって「for」だっけ?「if」だっけ?忘れちゃった!「i」 と「j」ってどっち使う?」とかいう会話が実際に出てきそうで怖いです。これって英語の丸暗記よりも役に立たないです。(申し訳ありません、プログラムを知らない方に不明な表現をしてしまい・・・)
右脳もトレーニングしてほしいな
IT業界に勤める者として、今の小さいうちからプログラミングを学ぶことは、決して反対ではありません。ピアノやそろばんといったものを同じ感覚で学ばせてあげてほしいです。
しかし、論理的思考ばかり追求して、右脳的なデザイン思考ができない人が増えるのは困る!ただでさえ、日本は左脳重視の教育をしているため、社会人になって右脳的な思考ができない方が非常に多い。
すでに社会では、この右脳的なデザイン思考ができる方が重要視されています。左脳人間は腐るほどいるのに、右脳的な思考ができる方が少なすぎるのです。イノベーション人材という言葉も出てきています。
左脳中心だったIT業界も同じです。右脳的な思考を使い、システムを使ってどの様にイノベーションを起こすのかが、今後ますます重要になります。イノベーションを起こさなくても、右脳的な発想力で、効率的なシステムを設計してほしい。発想力がある人の考えたシステム構成が好きで見ているとワクワクするんですよね。
ぜひ若い方々は、プログラムを書くことに執着せずに、プログラム的な思考を学びつつ、発想力を身につけてほしい。そうすると、処理効率の良いイノベーティブなシステムができますから。