見出し画像

プログラミング教育

小学生や中学生にプログラミングを教育するそうだ。論理的な思考に慣れるのが目的だとか。

ただ物事を考えるときには論理的にというより、直感を働かせて試行錯誤し、出てきた結果を論理的に整理するのが通常の流れだと考える。

長年プログラミングで食べてきた者として、プログラミングは論理的な思考というより、アルゴリズミックな手続きの記述である。そういう意味では考えを数式で記述するのと変わらない。

プログラミングする場合でも、新規性の高いものは試行錯誤で作ってみて、出来たら最後の仕事として論理的に整えてきれいな形に整えるのが普通である。定型的な処理なら前例があるから最初から論理的に記述できるが、初めてのものはそうはいかない。

私はアルゴリズムを考えるときは、論理的というより、Lisp環境での試行錯誤が常である。何故かといえば、試行錯誤しているうちに直感的に思いつくことが多いからだ。また、Lisp環境ではコンピュータとの対話が容易に出来ることも大きく影響している。同様のことはPython-Jupyter環境でも言える。そんなわけで、論理は結果として最後に得られる。

プログラミング教育は、論理的な思考に慣れるというより、諦めずに試行錯誤で何とかするということを目的にしたほうが役立つのではないか。

プログラミングの経験は、論理的な思考の訓練というよりアルゴリズミックな記述をいつの段階で経験させるかということである。アルゴリズミックな記述ができるということは、経済的な価値を生むことに貢献することは間違いないのだが。

#プログラミング教育



いいなと思ったら応援しよう!