事例50

小学校におけるプログラミング学習の検討

~現状で可能な学習内容を考えてみる~

東京都立小金井北高校 飯田秀延先生

2020年度から、小学校でプログラミングが必修化されると言われています。様々なところで話題になりつつありますが、海外ではかなり前から、code.orgを用いて小学校段階からプログラミング教育をしていると聞いています。

 

例えばこの地図では、code.orgでチュートリアル、あるいはイベントを開催したところに点がついています。アメリカやヨーロッパは点だらけですが、それに対して日本は少なく、中国や韓国の方が多いようです。

こういった状況に問題意識を持って、日本でも様々な団体が小学校などでプログラミングの出前講座を行っています。その数も徐々に増えてきており、昨年の総務省の報告書によると、およそ30ほどのグループ、団体が各地で活動しています。

こういった講座で使われているプログラミング言語には、LOGO、ドリトル、Viscuit、Scratch、Scratch Jr.、プログラミン、C言語、Python、HTMLなどいろいろありますが、ここで私が言いたいのはどの言語を使うかということではなく、講座を行う小学校の数のことです。学校基本調査によると、平成28年度の小学校の数は1万9943校、約2万校あります。クラス数は約27万学級です。一方、プログラミング教育を実施する団体が30件弱ですから、現状では1団体当たり1万学級。これは無理な数字です。

 

しかも、教室や講座があるのはほとんどが関東圏で、地方では全く、あるいはほとんどないというのが現状です。我々は首都圏にいると、小学校ではプログラミング教育がずいぶん盛んだと感じますが、大きな思い違いなのです。

 

高校の情報科の先生が教えればいい! 実際は…?

 

では、どうしたらいいのか、ということで、例えば高校の情報科の先生が小学校に出向き、週に1回か月に1回でも、プログラミング教室をやったらどうか、と考えてみました。情報科の先生なら、全国にくまなくいらっしゃいます。ICTの操作には慣れていますし、プログラミング教育にも長けている。さらにこういう活動を地道にやっていくことで、情報科の教員の地位も向上するのではないかと思いました。

 

実際はどうでしょうか。東京都の場合、小学校が約1300校あります。それに対して東京都高等学校情報教育研究会の一般会員は約80人です。この中には私立の先生や他県の先生、大学の関係者も含まれているので、実際にこういった活動ができるのは、約半数でしょうか。そうすると1300校に対して多くて4~50人くらい、1人当たり30校。小学校からしたら年に1回でも、我々とすれば1か月に2~3校は行かなければならないという計算になります。これでは無理ですね。

 

そうなると、結局は現場の小学校の先生に何とかしてもらうしかないということになります。小学校の先生に聞いてみました。「プログラミング必修化ってどうですか?」と。ただしサンプル数は4。全員、非常に若くて熱心な男性の先生4人です。

 

どなたもおっしゃっていました。小学校では「プログラミング」はNGワードだそうです。「『アクティブ・ラーニング』はアリですが、『プログラミング』は無理」と。特にキーボードを使うのは難易度が高い。コードの記述が入ってくると教える方が無理。大体30人くらいの子どもたちを相手にして、質問が出たらお手上げ、と小学校の先生はおっしゃっていました。

 

「小学生ができるもの」ではなく「小学校の先生ができるもの」は何かを考える…?

ではどうしたらいいかということで、私が高校の普通科で情報を教えた10年ほどの経験の中で扱ってみたプログラミングの教材の中から、「小学生ができるものは何か」ではなく、「小学校の先生ができるのは何なのか」いう観点でいくつか考えてみました。具体的には、キーボード入力が必要ないものです。

 

高校生にプログラミングを教えるなら、ScratchやViscuitを学んで、次にCやJavaScriptというのが順当なところでしょう。一方、私の勝手な感覚では、小学校の先生方のレベルはこの「現状」というあたりです。ScratchやViscuitに至る前にハードルがあって、いきなり「ViscuitやScratchをやってください」と言ってもまだ厳しいかなと思います。

 

ですから、小学校の先生が手始めにやってみられるのであれば、アルゴロジック(※)がよいのではないかと思います。アルゴロジックはプログラミングの基本となる論理的思考( アルゴリズム)をゲーム感覚で習得するための課題解決型ゲームソフトです。

http://home.jeita.or.jp/is/highschool/algo/

 

例をあげてみましょう。こちらはロボットで、矢印は動く方向。数字をクリックすると進む数が変わります。これをスタートから動かして旗を全て取る、というお題です。ここのポイントは、表示されている方向が上向きと左右だけであることです。

 

たいてい生徒はまず上に行って、次に右に行ったところで、下向きがないことでつまずきます。生徒同士相談させると誰かが「一回右に出てから上に行って左に行けばいい」と気づきます。置き直してスタートを押すと「That's great」などと表示されてこれでOKです。

 

こちらは「この通りに動きなさい」というものです。「上に行って斜めに行って右を向いて」というのを4回繰り返せばゴールできますが、これだと「最適ではないですよ」ということで、先ほどの画面に「〇」がつきます。改良して短いステップでクリアすると「That's great」と出てきて「◎」がつきます。

 

アルゴロジックには、こういった考え方や難度が様々なお題がたくさん載っているので、易しいものから難しいものにどんどん進んでいくことができます。

 

これを先ほどのサンプル数4の先生方にやっていただきました。意外なことに全員が初めて見たとのこと。おおむね好評で「これなら僕でもできるよ。簡単だね」と皆さんおっしゃっていましたが、「多分子どもたちは『なんで命令された通りにしか動いちゃいけないの?』『なんで旗を取らなくてはいけないの?』と言うだろう」とも言われました。

 

そもそも小学生は、ロボットの動きやプログラミング的な動作になじみがないのです。実際にロボットがあればわかりやすいかもしれませんが、ロボットがないところで、ロボットが命令された通りにしか動かないということを、小学生にどうやってわかってもらうか。これが大きなネックになります。

 

小学校の先生が得意な活動から入ってハードルを下げる

 

そうしたときに、つい先日出た情報処理学会の論文誌に阿部和広先生の「にんげんプログラミング」というのがありました(※)。

※阿部和弘「子供の創造的活動とプログラミング学習」情報処理Vol.57 No.4,pp149-153(Apr.2016)

http://scratch-ja.org/human

 

これは、実際に「命令」されて「ロボットが動く」ことを体感するために非常に有効であると思いました。リトミックのように実際に体を動かすのは、小学校の先生は得意分野ですので、アルゴロジックに入る前に得意分野から入って1~2時間活動し、この次にアルゴロジックを1時間くらいに絞って行えば、先生もやりやすく、子どもたちにも理解しやすいのではないかと思います。

 

つまり繰り返しますが、「小学生ができるかどうか」ではありません。小学生なら、Viscuitでも、もしかしたらJavaScriptもHTMLもできると思います。そうではなく、「小学校の先生ができるかどうか」という観点だと言ってよいと思います。

 

「にんげんプログラミング」には、図のようなシートが用意されているので、同じようにアルゴロジック版を作り、例えば広いところで先生が指示をして子どもたちが動くというふうに遊ぶのはどうでしょうか。これで遊ぶと、この後のプログラミングがスムーズに進むのではないかと思います。

 

リトミックで導入した後にアルゴロジックをやる。こういった形で、半分くらいの先生から「プログラミングって簡単だ」とか「こうすればできる」と言ってもらえるようになれば、流れが変わり、いずれは、いきなりViscuitでもいいような時代が来るのではないかと思います。

 

しかし今の段階ではまず小学校の先生の苦手意識をなくしてもらうためにもっとハードルを下げて、簡単なところから始めるとよいでしょう。2020年からの小学校におけるプログラミング学習がうまくいくことを、大いに期待しています。

 

※全国高等学校情報教育研究会 第9回神奈川大会 分科会発表より