プログラミング教育は必要か

「プログラミング教育、進まぬ準備…小学校必修化」

https://www.msn.com/ja-jp/news/national/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E6%95%99%E8%82%B2%E3%80%81%E9%80%B2%E3%81%BE%E3%81%AC%E6%BA%96%E5%82%99%E2%80%A6%E5%B0%8F%E5%AD%A6%E6%A0%A1%E5%BF%85%E4%BF%AE%E5%8C%96/ar-AAz4i75#page=2

という記事が目にとまった。
準備を進めている学校が少ないという記事だが、それとは別に以前感じていた違和感が再燃した。

「プログラミング教育は、コンピューターを動かす手順などの学習を通じ、論理的な思考力を養うのが狙いで、算数や理科の授業などで行われる。」

とあるが、「論理的な思考力を養う」とは何を指しているのだろう。
今のその他の授業で「論理的な思考力を養う」ができているのだろうか。

平成30年3月文部科学省の出している「小学校プログラミング教育の手引き(第1版)」
http://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2018/03/30/1403162_01.pdf

の中に「正三角形を各プログラムの例」として二つの手順が記載され、その差などを考えることで「プログラミング的思考」を伝えることを意図しているようだが、いくつかの事柄が混在している。

・N角形は何かという、汎用化したものの見方
・アルゴリズムをどう考えるのかという設計技法
は、そもそも教える状況が異なる。
上記は数学的思考法であり、下は技術論になる。

技術論が小学校で必要になるかはわからない。私は不要だと思う。
環境に依存した設計論は、もっと大人になってからすればよい。
自分の息子を見ていても、そのときの開発環境で最適なモノを自分で探して学習していた。
オブジェクト指向でしか開発できない環境なら自然とオブジェクト指向を学ぶ。
グラフィックパーツを組み合わせる電子回路の設計であれば、自然と電子回路の知識を使う。

おそらく小学生で必要なことは、
「プログラムを使うと今までには経験したことのないことに触れることができる」
で十分だと思う。
なので、「レゴのマインドストーム」のようなものを子供に与え遊ばせれば良い。
先生が指導する授業にする必要は無い。
遊ばせるといった瞬間に、学校は嫌がるだろう。
「体育の時間に好きなスポーツをさせる」ができないように。

そんなことより、むしろ、図形とは何か、数字とは何かといった根源的なことを教えた方が良い。

私が「算数」を好きになったことのきっかけは
・コンパスを使わないで、針と糸だけで点を描くことで、円となったこと。
・4角形、5角形、6角形、と進めてゆき、ある段階で「ほとんど円に見えること」に気がついたこと
・三角形は、3辺が決まるとカタチが決まるのに、4角形は4辺が決まってもカタチが決まらないこと
・小数点を知ることで、数字と数字の間に無限の数字があること
だった。
当時の算数の先生に感謝。

小学校の算数の世界であっても不思議はいくらでもある。
要は先生の教える技量なのだろう。

小学生に教える前に、先生の頭を鍛えた方が良い。

さて、では教材は何が良いかなと考えてみると、かつて親しんだ「やさしいコンピュータ科学 (Ascii books) 」などはどうだろう。
いきなりB-TREEの話が出てきて驚くかもしれないが、情報をどうやって管理すべきかといった視点で学習することができる。

Be the first to comment

Leave a Reply