小学校のプログラミング教育、目指すべき本質はどこにあるのか - (page 2)

 加えて兼宗教授は、日常的な食べ物について学ぶ“食育”を例に挙げ、「自分たちの食べているものがどのように作られるかを理解することが大切なように、自分たちの暮らしに欠かせないスマートフォンなどのコンピュータがどのように動いているのかを知ることは非常に重要。コンピュータとはこういう機械なんだということを理解しておけば、より便利に使うことができる。また仕組みを理解すればこそ、モラルやセキュリティの意識も自分の中から芽生えてくるのではないか」と語った。

 子どもたちにとってICT分野に早期から触れさせることで将来の可能性を提示すること、そしてコンピュータが不可欠となっている現代社会を生きるための基礎的なITリテラシーを育むこと、これがプログラミング教育の目指すものだと言えるだろう。

機械の「奴隷」にならないために、仕組みを理解する

 では、学習指導要領がプログラミング教育で求めている「プログラミング的思考」とはどういうものなのか。指導要領では、「自分が意図する一連の活動を実現するためにどのような動きの組合せが必要であり、ひとつひとつの動きに対応した記号をどのように組み合わせたらいいのか、記号の組合せをどのように改善していけば意図した活動に近づくのかといったことを論理的に考えていく力」と定義されているが、兼宗教授はこれをわかりやすく次のように表現する。


プログラミング教育の意義を語る兼宗教授

 「人はコンピュータに面倒な作業や人間の能力を超えた作業をさせたい。そのための指示を考えることがプログラミングなのだが、相手は機械なので“適当にやっておいて”という指示は通用しない。簡潔にわかりやすく機械でも理解できる形で“何をしてほしいのか”を伝えることが重要。このプロセスを論理的に組み立てることがプログラミング的思考だ」(兼宗教授)。

 これを今回行われた研究授業に当てはめると、どうなるのか。たとえば、児童たちは国語の授業では“ことわざの意味をアニメーションで伝えるにはどのような指示をコンピュータにするのがいいのか”、総合の授業では“0と1を使って文字を書きたい場合にはどのように数字を並べると書きたい文字が表現できるのか”といった課題に挑戦した。

 この試みのなかで、子どもたちが学んだものは、理想の動きを実現するためにはどのような順序でモノを動かせばいいのか、表現したいものを生み出すためにはどのようなルールを守る必要があるのかということ。目的を実現するためにルールを理解してプロセスを組み立て、トライアンドエラーを繰り返すことで“コンピュータの仕組みを理解しながら考える力”を養うことが期待できるのだ。

 「コンピュータに指示を与えて動かすことを体験しながら、人と機械の違いを理解してコンピュータに指示を伝えるための論理的な説明=プログラミングを組み立てる。こうした学習を通じて、“人が機械の奴隷になるのではなく、私たちが機械を働かせる”という体験をしてもらいたい。プログラミング教育の目的は、プログラムを書くことではなくコンピュータの仕組みを理解してもらうこと。それを通してコンピュータの特徴がわかれば、その先でさまざまなことを自分自身で学んでいくことができるはずだ」(兼宗教授)。

“プログラミング的思考とは何か”を教員が正しく理解する

 兼宗教授とともに今回の研究授業の指導講師を担当した小林准教授は、この授業について先生と児童、そして児童同士の中に活発なコミュニケーションが生まれたことを成果のひとつとして挙げた。「対話的に学ぶことはプログラミング教育の必須条件であり、ひとりで黙々とやるということは考えられない。コミュニケーションの中で学ぶことはこれまでも教育の重要な要素であり、プログラミングという新しい要素が入っても変わらないことだ」(小林准教授)。

 その上で、プログラミング教育の推進にとって重要なのは、学習指導要領が示している「プログラミング的思考」とは何かを正しく教員が理解して授業を行っていくことだと話す。「兼宗教授が示したようなプログラミング的思考への理解を誤ったまま進んでしまうと、あえてプログラミング教育を取り入れる意味がなくなってしまう。正しい理解のなかでプログラミング教育を発展させる“脱・なんとなくプログラミング教育”を推進したい」(小林准教授)。


「プログラミング的思考への教員の理解が重要」と語る小林准教授

 一方、小林准教授は今後のプログラミング教育について課題も挙げた。ひとつは、プログラミング教育を通じて学ぶプログラミング的思考を他の学習場面に応用していくという点だ。

 たとえば今回の研究授業のうち、「社会」の授業では“グラフを読み解く”というテーマに対してコンピュータが順序立てて命令を実行していくシーケンスの考え方を用いて、子どもたちがどのようなプロセス=シーケンスを組み立てるとグラフを読み解けるかを考えることに挑戦した。指導範囲を学習指導要領の範囲内にとどまらず、こうした日常的な授業のなかにプログラミング的思考を取り入れていくことで、子どもたちの教科理解や関心喚起を促すことができるのだ。

 「小学校のうちにすべきはプログラミング的思考の種まき。プログラミング的思考を使って自由な発想で考えたり、教科学習の中でプログラミング的思考を取り入れたりすることで、考える機会を多く提供することが重要だ。どこで子どもたちの潜在能力が開花するかは、誰にもわからない。だからこそ、プログラミング的思考に触れる機会をたくさん用意すべきだ」(小林准教授)。

 そしてもうひとつの課題が、評価に関するもの。プログラミング教育における児童の学習達成度の評価については、今回研究授業を担当した教諭も口々に課題として挙げた。この点について小林准教授は「評価メソッドは研究分野が追求しなければならないテーマだが、簡単なことではない」とした上で次のように語った。

 「プログラミング的思考が身についたかどうかをピンポイントで評価する方法など、世の中には存在しない。米国では評価指標もできつつあるが、まだドラフト段階だ。学校で“こんな子どもに成長して欲しい”という目指す姿を描いた上で、さまざまな観点・課題から評価軸を考えて子どものプログラミング的思考力を浮き彫りにしてほしい」(小林准教授)。

CNET Japanの記事を毎朝メールでまとめ読み(無料)

-PR-企画特集

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]