「プログラミング」と「プログラミング的思考」の違いを、分かったつもりになれるヒント
という記事を読みました。その中で、「小学校段階におけるプログラミング教育の在り方について」という有識者会議の議事録が紹介されています。たとえばこの部分です。
プログラミング教育とは、子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育むことであり、コーディングを覚えることが目的ではない。
なんとなく耳に心地いい文章ですけど、呆然としました。
危機感が180度違います。
なぜ、小学生にプログラミング教育が必要なのか。
それは、現状、高度な「プログラミング的思考」ができる人でも「プログラミングを学習したことがない」から実際に「プログラミング」しないことが、国として途方もなく大きな損失になっているからです。
世の中、高度な「プログラミング的思考」してる人はいっぱいいます。もしもこの人たちが、幼い頃から「プログラミング」体験していれば、きっとコンピュータを使って問題に取り組んで、すごい結果を出すに違いないのです。
たとえば、エクセル使っている人が入力効率をあげるために独学でマクロを書いたなんて話いくらでも聞きます。こういう人たちは、適切なツールがあれば、もっともっといわゆる IT 化をしちゃえるわけです。
でも、成人までに献血したことがない人は、成人後も献血にいかない人が多いとか言われるように、「プログラミング」もやらずに大人になったら、やり始めることが高い高いバリアになってしまうのです。
そうならないように、若いうちに慣れさせておくことが一番大事です。
一方で、「プログラミング的思考」を育むことが重要とあります。確かに重要です。でも、これはずっと昔から教育されています。たとえば文章題です。「リンゴが4つ、みかんが3つあります。全部で何個でしょう」という問題があったとします。
すると、「4+3=7」 こたえ「7こ」と書かなければなりません。
どういうことか。つまり文章を読んで、まず「4+3」という式に翻訳せよということなのです。翻訳してしまえば、あとは「自分計算機」が機械的に「7」という答えを計算してくれます。
私たちは小一のときから、「自分計算機」というコンピュータ相手に「プログラミング」する訓練を受けているのです。
ですから、私たちは計算機を取り出せば、この「自分計算機」の代わりに計算機に計算させることができます。誰かに「あとは計算機で計算しといて」と頼むこともできるでしょう。計算機はちょっと使えばすぐに使い方がわかる優秀な機械なので、わざわざ学校の授業で取り上げるほどのものではありません。
でも、少し高度な関数電卓くらいになると、人によっては授業で教わらないとできないことでしょう。
さらに、コンピュータとなるとそのハードルがぐぐぐっと上がってしまうのです。
たとえば 「100 までの素数を求めなさい」と言われたとするでしょ? 紙に1から100まで書いて、まず2の倍数を消して、さらに、3, 5, 7 の倍数を手で消せば、残ったのが素数という手順を理解するのはそれほど難しいことではありません。小学生の算数がわかる人ならたいてい分かるでしょう。
でも、「じゃこれをコンピュータでやってください」と言われた途端に「日本人の大部分の人ができない」ことが、今の日本のとてつもない損失になっているのです。
今私たちの身の回りにはちょっとプログラミングすれば簡単になることが山のようにあります。ですから、ほっといてもエクセルでマクロ書く人が続出します。なぜエクセルでマクロなのかといえば、それが目の前にあるからです。もっとプログラミングの環境が整っていて、子供の頃からプログラミングに触れていれば、そういうのは瞬く間にプログラミングされることでしょう。
私たちはすでにそこそこ「プログラミング的思考」を持っているのに、コンピュータを使う技術を決定的に欠いているだけなのです。
ですから、いま優先すべきは、教育の場で「プログラム」を書かせておくことです。それは文科省の開発した「プログラミン」というごく簡単な言語でも十分です。(「プログラミン」は先日せいいっぱいよいしょしました。これを授業でやれば生徒たちが熱中することが生き生きと想像できるからです。 → 小学校のプログラミング教育には『プログラミン』を使えばいい。 )
題材は、とりあえずゲームや動画でも十分です。人間がコンピュータに指示をできることを体験しておくことが、プログラミングは誰でもできることを知ることが一番大切なのです。
「プログラミング教育」を待つことなく、世の中にはエクセル使って、いろんな分析をする人がいくらでもいます。つまり「プログラミング的思考」できる人はたくさんいます。今でも、ネットに「scratch」を実務的にしたようなプログラミング言語があれば、エクセルじゃちょっと効率悪いなというときにどんどん使われるようになるのかもしれません。そういう人が増えれば、それだけさらに手軽になることでしょう。
ですから、若い人たちに「プログラミング」の体験をしてもらっておくこと。とにかくこれだけで日本社会が変わるだけのインパクトがあるのです。
《ワンポイントミライ》(?)
ミライ: 「小学校のプログラミング教育には『プログラミン』を使えばいい。 」のときも話題になりましたけど、学校で全員プログラミングしているというプラットホームがあると、他の教科も変わっていきまよね。アプローチが「プログラミング的思考」になって。先生もその手法を使っていいとなればいろいろ工夫すると思うのです。
フツクロウ: ホウじゃな。
ミライ: しかも、生徒たちも、どんどんプログラミングするようになると思うんです。期末試験に向けて、今学期出た英単語を覚えられるゲームとかクラスの誰かが作っちゃうわけです。
フツクロウ: ホッホ、こないだ紹介した『英語無双』の自分たち版じゃな。