プログラミング教育は「AIへの恐怖」と「PCへの幻想」を打ち砕く?:踊るバズワード 〜Behind the Buzzword(13)STEM教育(1)(8/10 ページ)
今回から「STEM教育」を取り上げます。新型コロナウイルス感染症(COVID-19)の影響もあり、デジタルやITの存在はますます大きくなっています。これからの時代、「デジタル=インフラ」として捉えることができなければ、生き抜くことができないと言っても過言ではありません。それを考えると、確かにSTEM教育は必須なのですが……。プログラミングの“酸いも甘いもかみ分けた”エンジニアとしての視点で、STEM教育を斬っていきます。
「Scratch」を使ってみた
さて、小学校プログラミング教育で、文部科学省は、「Scratch」という、ビジュアル型プログラミング言語の採用を前提としているようです(参考)。
今回も予見なく、このScratchを評価してみたいと思いまして、いきなりインストールを試みてみました(インストール手順は、”Scratch””インストール”でググればすぐに出てきますので割愛します)。また、マニュアルも一切読まない状態で使えるかも試してみました ―― マニュアルを読まない大人が山ほどいるのに、子どもにマニュアル読ませることは不当だ、と考えたからです。
起動後、「Scratch is loading…」という画面が出て、10秒後くらいに、次の画面が出てきました。
これを見て、私は、『左側にあるブロックが、プログラムの命令を示すステップだな。そして、これをドラッグして、組み合わせることで、プログラミングをして、それを実行させて、右側のネコのアイコンを動かすのだろう』と、ざっくりと、当たりを付けました。
それで、適当なブロックをドラッグして、それを組み合わせて(プログラム)みました。実行方法が良く分からなかったのですが、ブロックの全体をクリックしたら、右側のネコのアイコンが動き出しました。これで当初の目的を達成することができました。
正直に言って、
―― まあ、小学生では、これが限界だよな
と思いました(教える教師にとっても、これが限界かもしれません)。
そもそも、ステップがブロックとして事前に用意されていることが非現実的です。バグ(プログラムの記述ミス)のほとんどは、そのブロックの中に仕込まれてしまうものだからです。
現実的に、このScratchによって、何か有意なプログラムを作成できるかといえば、「それは無理」と断言できます。
しかし、
(1)プログラムがステップの集合体であること
(2)プログラムはステップの上から順番に実施されること
(3)プログラムには条件分岐によって、処理を2つ以上に分けることができること」ということ
の、プログラムの3大基本概念を理解するだけなら、Scratchで十分と言えます。
何より、「デタラメにブロックを組み合わせるだけでは、思い通りにネコを動かすことはできない」、ということは、確実に分かります。「ネコが動かないのであれば、100%自分のプログラムが悪い」「ネコが動かないことを、誰の責任にもできない」という、当たり前の事実を、「見える化」で示す、というのは、小学生にとっては、なかなか過酷で残酷な学習であると言えそうです。
Scratchは、ネコを動かすだけでなく、いろいろなデバイスのアプリケーションのラインアップもあります。モーションセンサーや、合成音声、翻訳、そして対話型ロボットに至るまで、各種のパッケージを取りそろえています。
どうしてなかなか、侮れないプログラミング『学習』ツールです。これを小学生の10人に1人でも、完成し得たら、小学生プログラミング教育としては大成果だと断言します。
その一方、私が危惧するのは、「プログラミングってこの程度のものか」と、コンピュータやプログラミングを舐めたガキが、そのまま成人して、ITシステムを舐めてかかるかもしれない、ということです。こうなったら、プログラミング教育は、「コンピュータ=魔法の箱」幻想よりも、さらに悪い未来を引き良せることになってしまいます。
プログラムを完成させるには、オペレーティングシステム、ドライバ、API、ライブラリ、コンパイラ、リンク、ビルド、開発環境(トレース、デバッグ)、あとは、プロセス、スレッド、排他処理、その他もろもろの、全てが頭に入っている必要があり、それらを全て理解した上で、はじめて「プログラミング」という行為の第一歩が踏み出せるのです。しかし、これは、Scratchでは履修できないことです。
Scratchは、はっきり言えば、「コンピュータを使った、ちょっと気の利いたお遊びソフト」であり、現実のプログラム開発には、遠く及ばない ―― というよりは、完全に別モノです。
そして、文部科学省のプログラミング教育が、プログラマーの育成を目的としているものではない、ということは分かっていますが、Scratchを教えた後、何もしないで放置し続けるならば、『最初からやらない方がマシ』だと思っています。
Copyright © ITmedia, Inc. All Rights Reserved.