プログラミングは、算数の文章題を解くようなもの
プログラミングを習い初めの頃は、テキストのプログラムをそのまま丸写しして動きを確認するといった学習形態になります。プログラマーの間では、俗に写経と言われています。
プログラミングの学習は、写経で終わってはいけません。写経で終わっていては、マウスとキーボードの操作を練習したに過ぎません。なので、プログラムがなぜそういう動きをするのかを、プログラムコードを追って確認するべきです。
しかし、プログラムコードを写経したと言っても、必ずと言ってい良いほど入力のミスはあります。入力を1つでも間違うと、プログラムは正しく動きません。プログラムの間違いをバグと言い、プログラムを正しく動くように修正することをデバッグと言います。
プログラミングの学習は、実はこのデバッグができるかどうかが1つの分岐点となります。デバッグができるというのは、プログラムの動きを追えるとともに、その動きを理解し、さらにはプログラムの仕組みを理解したうえで、間違いを書き換えることができるという、かなり優れた能力なのです。
先日、保護者に、一度習った内容は、テキストを見ずにプログラミングできるべきかと質問を受けましたが、そんな必要はまったくありません。公式として暗記するようなものでは決してないからです。どちらかと言えば、算数の文章題を解くような感覚に似ています。式を立てるには理由があり、その理由の元に式を立てるのです。
暗記するように算数、数学の問題を解いていてはいけません。ちゃんと、算数、数学の理論、理屈、考え方を理解しているから、初めて見た問題も解けるのです。仕事におけるプログラミングも同じ。解答集に答えがあるわけではありません。自分で理屈を理解しているから、正しく動くようにプログラミングできるのです。
与えられた問題とその解答集にある解答を答えるための学習は、もう時代遅れです。小学校におけるプログラミング学習必修化の流れは、問題および課題の発見と、それが解決されるためにはどうなれば良いか、さらには、そこに導くにはどうすれば良いかを求められているのです。安直な解答集はありません。できれば、大人の方々も、プログラミングを学び、プログラミング的思考を身につけて欲しいと願っています。