論理的 思考のために ジグソーを2018年08月29日 23時36分28秒

このところ小学生向けのプログラミング教育に関して、何かと話を盛んに聞くようになってきたのだが、見ていて違和感を拭い去れずにいる。
その原因の一つに思い当たったのだけど、強い関心を集めている教材としてプログラミングのできる車がある。

どのように進んだり曲がったりといった動作をプログラムできて、どのように動かすかをイメージしながらコードを書く行為がプログラミング教育になるとしている。
確かに動作を命令文として指示する部分はプログラミングの要素に見える。
しかし、これはスクリプトを書いているに過ぎなくて、プログラミングと似て非なる物と言っていい。

どの辺が違うのかと言えば、ゲームのルールを作る事がプログラミングなのに対して、スクリプトは攻略手順の書き起こしているに過ぎない。
要するに、ゲームの作り方を教えると言いながら遊び方の講座になっている。
コントローラーを持つ代わりにスクリプトを書いてある状況であり、これはゲームをプレイしている状況そのものだ。

プログラミング言語の儒教でなく、基礎となる論理的思考を培う方向へ向こうとしているまでは良かった。
しかし、教える側も教材を作る側も論理的思考を正しく理解していないようで、その講座に対して違和感を覚えて当然なのだろう。
何よりもマスコミが全く理解しようとしていなくて、面白いと人気の高さだけで最高の教材と流布している質が悪い。

論理的思考を養うのであれば、力業だけで解決しづらい作業の解決方法を考察して、実行しながら最適化していく行程を体験させるべきだ。
俺が教材として選ぶなら1000ピースを越えるジグソーパズルが良いと考える。
ルールが簡単な割に作業量の多さが目に付く問題に対して、如何に効率よく当たりの組み合わせを見つけ出すための作業を考える。
作業のためにすべき仕事を考える事こそ論理的思考の原点であり、ジグソーパズルは完成する絵柄によって規則性や法則性に違いがあり、様々な手法を考え出す訓練になる。

例えば、外周の特徴的なピースを拾ったり、文字や顔など特徴的な絵柄を集めたり、近しい色で仕分けたり、長細いなどの特異な形を寄せておくなどの作業が効率アップに繋がる。
上記のような仕分けしたグループの中で更なる特徴や規則性を見出して、ピースの方向を揃えてやると更に良くなる。
そして、これらの作業はどういう分類を行うか考えた上で取り掛かる事が大切になる。
何故なら仕分けは全てのピースへ対して行うのだから、全種類を一度にやるのか個別に分類していくのかで作業量が大きく変わる。

単純な完成でなく、効率を意識するだけでジグソーパズルは教材と変わる。
論理的思考とは何なのか、何をするための能力なのか、何に必要なのかと解析していった結果した末に、辿り着いた教材がジグソーパズルだった。
間違っていけない事として、無理難題の解決策を考える事が必要なので、最初に簡単な所から始める事も手伝う事も不要である。
論理的思考という考え方を学ばせようとしているのに、考える必要性と機会を奪ったら何の意味もない。