見出し画像

プログラミング教育が向かう先

プログラミングが学校教育に取り入れられたことから、 街中でプログラミング教室を目にする機会も多くなった。民間企業がプログラミング教育に対して張り切っている中で、保護者や教師は関心の度合いがバラバラであるように思う。そういった状況の中、これからプログラミング教育がどこへ向かっていくのかを考えていきたいと思う。

プログラミング教育の意味

以前、プログラミング教育を学校に取り入れる意味ってあるのだろうか、という内容の記事を書いたことがある。

この記事で数多くのコメントをいただき、それを読む中でプログラミング教育についての関心が高まった。

コメントを読ませていただく中で、プログラミング教育はプログラマーを育てるためのものではなく、目的達成までの最短の道筋を描いていく論理的な思考や、トライアンドエラーを繰り返す忍耐力を育むことにつながるのだと分かった。

子どもが取り組めるビジュアルプログラミング

プログラミングといえば、以前までは文字や記号を使ってプログラムを作ることだった。しかし現在は、マウスで図形(ブロック)を動かすだけで、子どもでも簡単にプログラミングができるようになった。

ビジュアルプログラミング教材として、最も有名なのがスクラッチだ。ほとんど小学校がスクラッチを取り入れてプログラミング教育を開始している。マサチューセッツ工科大学の学生が開発した教材らしい。

その他にも、日本で開発された子ども向けプログラミング教材は多くある。DeNAが開発した「プログラミングゼミ」はその一つである。「プログラミングゼミ」はスクラッチよりも、イラストや図形(ブロック)を、より日本人に親しみやすいものにしているそうだ。

ビスケットは、「メガネ」という仕組みを使って、お絵かきしながらプログラミングを学べる教材で、未就学児でも遊べる内容となっている。

いずれにしても、子どもから取り組めるものであり、プログラミングに必要な基本的な考え方を身に付けることができるみたいだ。

プログラミング的思考と言うけれど

こんなことを言うと身も蓋もないのだけど、プログラミングを学べば、プログラミング的思考が身につくとは言い切れないと思う。

その理由を、算数や数学を例にして考えてみる。学校教育で算数や数学を学ぶ一番の意味は、生涯にわたって活用できる数学的な資質・能力を養うことにある。数学的な資質・能力とは、筋道立てて考えたり、根拠を明らかにして考えたり、新しい視点から物事を捉え直したりする力である。その過程で、九九を使えるようになったり、因数分解ができるようになったり、微分ができるようになったりするのであって、それら知識・技能の習得は、数学的な資質・能力を養うための手段であるともいえる。

私たちは、合計で12年以上も算数・数学を学んできた。特に高校で理系を選択した人は、莫大な青春の時間を数学に捧げたはずだ。私は、高校で理系を選択したので、かなりの時間をかけて数学を学んできた中の一人だった。しかし、筋道立てたり根拠を明らかにしたり、といったことは数学でしか意識できない。数学から一歩離れると、論理より感情に流されることの方がずっと多い気がする。

それでも私をよく知る人たちからは、合理的だとか効率的だとか言われることが多い。けれど私は、自分を合理的な人間だとは全く思わない。それにたとえ合理的だったとして、それは、数学を学んできた成果なのか、遺伝的なものなのかすら分からない。資質・能力や思考が身についたかどうかというのは、誰にも判断できないように思う。

思考をいかに評価するのか

だから、「プログラミング教育は、プログラミングの技能を身につけるためのものではなく、プログラミング的思考を養うためのものです」と言われても、すごく難しいと思う。

もう一度、算数の話に戻ろう。私が小学2年生の担任をしていた頃、算数のテストには、「知識・技能」の点数欄と、「思考・判断・表現」の点数欄があって、それぞれ50点ずつの配点がされていた。「知識・技能」は単純な計算問題が含まれていた。たしかに、計算問題が解けたのなら、知識・技能は身についたと考えて良いと思う。対して、「思考・判断・表現」は、文章問題だった(式が書けたら 10点、答えもかけたらさらに10点)。けれど、文章問題が解けたら、それで「思考・判断・表現」が身についたと考えるのは、ちょっと無理がある気がする。

通知表の成績をつけるときには、それぞれの児童のテスト平均点を相対評価し、「知識・技能」に対応する欄は35人中上から12人くらいにA判定を、「思考・判断・表現」に対応する欄は35人中上から6人くらいにA判定をつけていた(学年で揃えてそうしていた)。けれど、その6人が本当に「思考・判断・表現」が身についているかは今もよく分からないし、そこまで深く考える余裕もなかった。

一方、プログラミング教育は算数と違って、必ずこれを習得しなければならないというものがなく、評価の基準もない。何をもって、プログラミング的思考が身についたとするのだろう。算数のテストみたいに、文章題が◯%以上解けているから「思考・判断・表現」が身についているとするのは浅はかなのかもしれないけど、基準がないのも考えものだ。

もしも私が小学校でプログラミングを教えるとしたら、「ゲームみたいで子どもも楽しそうだなぁ。たまにはこういう授業もいいなぁ。」くらいにしか思わなかっただろうと思う。評価の基準やテストがあれば、せめてこれは定着させなければならない、という視点を持って教えることができるだろう。

学習には、評価が必要だと思う。評価がないと、教師は何を教えるべきか分からないし、子どもも何を学んだかはっきりしない。保護者も何をやっているのかよく分からないという不信感の原因になりうる。

結局、知識・技能の習得に落ち着くかも

プログラミング教育の前には、外国語教育のブームがあった。私が小学生だった15年くらい前は、外国語を楽しむことができればそれでオーケーという感じだった。高学年になると外国人が月に1回来て、一緒にダブルダッチをした。あの頃は、外国語教育で絶対にこれを教えなければらない、というものはなかった。だから、先生によって外国語教育への関心も力の入れ方も違ったし、割と何をしても良かった。

現在はというと、小学校低学年から外国人が学校に来て、挨拶とか英語の歌とか教えてくれる。高学年になると、毎週のように外国語の授業がある。教科書まで配布されて、この英文を話せるようになりましょうとか、発音を聞いて何のアルファベットか分かるようになりましょうとか、知識・技能の習得を目指すような側面が出てきた。少なくとも、毎週ダブルダッチをすることはない。

そんなことを考えていると、プログラミング教育も、近い将来教科書が配布されて、徐々に知識・技能の習得を目指していくのではないかと思う。本当に筋道を立てて考える力や、最短ルートで考える力を身につければ良いというだけなら、プログラミングは導入する必要はないのではないかと思う。それだけなら、算数や理科などの指導を工夫することでも対応可能なはずだ。わざわざプログラミングを導入したということは、プログラミング的思考を身につけるだけでなく、やはりプログラミングができる人材を増やしたいという意図があると思えてならない。そのためには、いずれ知識・技能も必要になってくると考える。

ぼんやりした教育は、格差につながる

今のプログラミング教育のような、先生も保護者も正直どこへ向かっているかよく分からないぼんやりした教育は、格差につながりうると思う。それについても、かつてぼんやりした存在だった外国語教育を例にして考える。

私が小学生だった頃の外国語教育で、外国人になんとなく慣れることはできたものの、グローバル人材に必要な素養の素地ができたとは言えなかったと思う。一方、熱心な保護者は、子どもたちに小さいうちから英語に触れさせた方が良いのではないかと考えたに違いない。熱心な保護者は近くの英会話スクールに子どもを通わせ始めた。しかし、もちろん英会話スクールに通わない子もたくさんいた。結果として、中学校に入学してくる段階で、すでに子どもに学力の格差ができてしまっていた。

地方は、英会話スクールに通わせたくても近くにない場合がある。また、地方の人の考え方は(どの地方かにもよると思うが)、保守的である場合が多い。「英語を話す前に、まともな日本語を話せるようになれ」という考えの人が、都会よりも多い。地方と都会とでも、格差が生まれる可能性がある。

プログラミングにしても同じで、都会に比べて地方の人は、関心を持つのが遅くなりがちだ。いくらプログラミング教室が近くにあっても、保護者が通わせる意味を実感していなければ意味がない。

外国語教育に関しては、中学校で英語を一斉に学ぶので、小学校までの差は小さくなっていった。けれど、プログラミングは今のところそうでない。習わない子は、大人になっても習わない。今の小学生が大人になる頃、プログラミングを習った子と習っていない子、地方の子と都会の子とで、格差ができてしまうことは避けなくてはならない。そのためにはやはり、もう少し指導の内容や評価をはっきりさせていかなければならないように思う。

写真:福井県越前町、玉川洞窟観音にて。


サポートは、地域や教育の課題解決のために使わせていただきます。