プログラミング教育で身につく論理的思考力とは何か

小学校でプログラミング教育が始まるのをご存知でしょうか?2020年からプログラミングが必修科目になり、目的は「プログラミング的な思考を身につけること」で、プログラマーの養成ではないとされています。

プログラミング的思考って何だ?というのは、あまり理解されていないように思います。先日傍聴した教育委員会や、教育総合会議でも委員の方から疑問が呈されていました。

そこで、プログラミング教育で身につく思考力の正体について、私なりの理解を解説いたします。


アルゴリズム

このロボットに、ボールを箱に入れされるにはどうしたらいいか考えてみます。ひとりでに持っていくことはないとすると、ロボットに手順を教える必要があります。

ボールを持ち上げる→右に30進む→左に90°回転する→上に10進む→手を離す

どうでしょう?これでボールは箱に入るでしょうか?

このように「問題を解くための手順を定式化した形で表現したもの」をアルゴリズムといいます。

このアルゴリズムの考え方を身につけることが、プログラミング教育の本質だと考えます。組織で仕事をしている方は、問題を切り分けて部下に指示する、問題の切り分け方が上司の腕の見せどころだと考えていると思います。会社で達成したい目的があれば、社長さんは問題を切り分けて部長さんに手順を指示し、部長はさらに問題を切り分けて課長に手順を指示する。そうやって会社は運営されていますよね。

アルゴリズムを身につけ、問題を定義してそれを解くための具体的な手順を考える力が小学生のうちから身につくのは、ものすごいアドバンテージです。例えば自分が学校を受験するときも必要な手順を自然と考えますし、料理をするときにも、好きなあの子に想いを伝えるときも役に立ちます。


プログラミングで世界観が変わる!

大げさに言うと、アルゴリズムの考え方を知ると世界観が変わります。目にしたものの現象や結果だけでなく、仕組みや構造を考えるようになるからです。例えば紅葉を見たときの発想が、こう変わります。

たくさんの疑問をほぼゼロ秒で自分だけで思いつき、自分なりの説明できる仮説を立てるようになります。こんな思考を、紅葉をみたときだけでなく、何をみてもやるようになります。

生意気な子どもになるだけだ!と思うかもしれません。皆さんの周りにも、やたらに疑問とか反論をいう生意気な子どもがいるはず。そういう面もあるのですが、この思考の転換は、生意気さを補って余りある学習速度をもたらします。


上に書いたようなプログラミング教育で身につく思考力と、その効果は、べつにプログラミング教育でなくても身につくものです。ただ、プログラミング教育でも身につきます。私は、子どもにアルゴリズムを身につけさせることにはとても賛成しています。

活動報告(11/20-26)

今週は衆議院選挙後の臨時党大会が開催されました。議題は代表選を行うか否か。起立採決の結果代表選はおこなわれず、松井代表が再任されました。

11/23には、岸和田市議補欠選挙に立候補している前田のぶみ候補の応援に。堂々とした27歳で、これは期待できると本心から応援できる候補でした。

本日(11/26)投開票があり、見事当選!

活躍を確信しています。