プログラミング的思考とは

ICT CONNECT 21会長・東京工業大学名誉教授 赤堀 侃司

写真1
写真1

今年3月、オーストラリアのケアンズの学校を訪問し、調査した。写真1は、ケアンズ市内にあるエッヂヒル小学校の菜園を撮影したものである。この菜園をなぜ紹介したいかは、紹介していただいた先生が、これはSTEM教育の1つで、キッチン・ガーデン・プロジェクトだと説明したからである。

子供たちは、校庭にある菜園でいろいろな野菜を育てる。いくつかの野菜を栽培し、それで料理する。校庭には、ソーラーシステムがあり、太陽光で発電して、その電気を料理に使う。ごみが出たら、これを菜園に戻して肥料にするという循環システムを学習するプロジェクトであった。

栽培するには、生物や化学の知識、ソーラーシステムを理解するには、電気技術の知識、料理を手順良く行うには、プログラムする知識などのように、いくつかの分野の知識が求められる。そこで、STEMの意味が理解できた。サイエンスのS、テクノロジーのT、エンジニアリングのE、そして数学のMで、TやEの中に、プログラムする能力も含まれている。

このように考えると、プログラムするのは特別なことではない。料理のように、目的があり、材料を揃え、手順よく作業し、味見をして、調味料を加減することなどは、プログラミング的思考なのである。

写真2
写真2

写真2は、東京都足立区立西新井小学校の古谷陽平教諭の実践である。この実践は、特別にプログラミング教育を意識した授業ではない。タブレットPCを活用した総合的な学習の時間での1コマである。このときのテーマは、「大地震から命を守るために、できることを考えよう」であった。グループで話し合い、その考えを、付箋紙に貼って、写真のように、大地震前、ゆれている間、避難する場合、避難所に着くまで、などの場合に応じて、タブレットPCに書き込み、グループ発表した。

このようにいくつかの場合に分けて、どうするかを考えることは、プログラミング的思考の1つある。○○の場合は「もし○○ならば」の条件と呼ばれ、「どうする」は、命令とか指示と呼ばれる。
グループごとの発表があって、「動かないというが、本が棚から落ちてきたらどうするのか」などの鋭い質問が出て、そのときは、こうするという改正案が出された。これは、プログラムでは、修正とかデバッグと呼ばれる。

このように、プログラミング的思考とは、料理のように、目的があり、食材という要素があり、これを組み合わせ、防災教育のように、条件に応じて要素を変え、修正をするという思考方法である。文科省ではこれを、自分が意図する一連の活動(目的)、動きの組み合わせ(条件や命令)、組み合わせを改善(修正)、などを論理的に考えていく力と述べている。
プログラミング的思考は、このように教科を横断する論理的な能力なのである。


【情報教育特集】トップページに戻る