さぁ、コードな対話、はじめよう!

  1. HOME
  2. ミライノクラシの共創

ミライノクラシの共創

COPERU の目的は,人とコンピュータの融合が進む高度情報化社会での『人とコンピュータがつくるエコシステム(生態系)』について,その重要性と緊急性の理解を妨げる3つの問い「コンピュータやプログラミングをなぜ学ぶのか」「コンピュータやプログラミングでなにをするのか」「コンピュータやプログラミングをどのように教えるのか」に対し,多様なステークホルダーを結び,『「つくる」に寄り添う共創の場をつくること』です.学校でのプログラミングに関する学びが徐々に必修化していく現在,情報学・教育学の専門家,大学の教職課程の学生,自治体,小中学校,企業と市民が対話を通じてその重要性と緊急性を認識し,「ミライノクラシのための場」を共創することを目指しています.

プロジェクト紹介

◯プロジェクト紹介

小学生でPython!? 書いて試してエラーが怖くなくなる探究心満点のプログラミング活動

インタビュー:株式会社Studio947 狩野さやか


 東京都日野市立日野第七小学校では、2017年9月よりクラブ活動の中でプログラミングを取り入れています。この中心になっているのが明星大学情報学部准教授・早稲田大学理工学術院客員主任研究員の山中脩也先生。独自のプランで月1〜2回各1時間、4〜6年生30人の「パソコン写真クラブ」でプログラミング活動に取り組んでいます。

プロ用の本格プログラミング言語を小学生の教材に!?

 山中先生が子ども達に教材として用意したのは、なんとキーボードから文字を入力して「書く」タイプのプログラミング言語。プロが使用する汎用言語「Python(パイソン)」と、ビジュアルアートに使われる「Processing(プロセシング)」です。子ども達は、オリジナル教材プリントの例やヒントを手がかりに、コードを書いては、実行結果を見る、ということを繰り返します。もちろん書くコードは短く、出力するのは、文字列を表示させたり基本的な図形を描画するなどシンプルなもの。
 パソコン室でひとり1台のパソコンを使用し、各自自分のペースで進めます。ウェブブラウザから利用できるオンラインのプログラム実行環境を使用するので、手軽で機器トラブルの不安は最低限です。
 子ども用のプログラミングといえばScratch(スクラッチ)のようにブロック状の命令をドラッグ&ドロップで操作するタイプが主流です。アウトプットも、画面上のキャラクターを動かしたり、作ったロボットを動かすなど視覚に訴えるものが目立ちます。それらに比べると、この教材設定は、いっけん地味で、ちょっと分が悪いような気もしますが、果たして子ども達はどんな反応を見せたのでしょうか?
 3学期の終わりが近づき9回分の活動を経たところで、日野第七小学校の小林校長先生と、クラブ顧問の内堀先生、黒坂先生にお話を聞きました。

自然に生まれる試行錯誤

 子ども達は今回の教材に、飛びつくような反応こそしなかったものの、特に驚くこともなく当たり前のように受け入れたそうです。取り組む子ども達の様子には、通常の授業とは違う姿が見えてきました。
 まず先生達が驚いたのは、子ども達が極めて自主的に探求する姿です。
 「プログラミング活動では、『この数字を変えてみたらどうなるかな?』と自分から試すような姿が、教室中のあちこちで見られる上、『こんなことできたよ!』『みてみて先生すごくない?』という言葉が自然と出てきます」(黒坂先生)。こうしたシーンは、通常の授業ではなかなか見られないことだそうです。「子ども達自身が『学びたい』『どうしたらいいだろう?』と必死になって考える姿は理想に近く、これが本来の学習する姿かもしれないと感じました」(同)。
 「プログラミング活動中、教員は『楽』と言えるかもしれません。コードを間違えばエラーが出て自分で再トライできるので、子ども達は意外と教員に質問をしません。少しヘルプが必要な子どもをサポートする程度で、子ども自身が自由に進めていきます」(内堀先生)。
 教材を作成した山中先生は「エラーは嫌なものではなく間違っていることを教えてくれる親切なもの」と強調します。子ども達には、エラーが出たら必ず原因の行を見直すように促し、「コンピューターの中には先生が入っている」「コンピューターと会話をしよう」と声をかけています。
 黒坂先生は子ども達と共にプログラミングに触れ始めたのですが、「これかな?と試してすぐに結果が返ってくるので、違っていたらまたすぐに考えて試せる楽しさがある」と実感しています。エラーという即時フィードバックがあることで、トライ&エラーを自分で繰り返しながら、自ら原因を探すことができるというわけです。
 内堀先生は、1学期に数回クラブでScratchを扱ったことがありましたが、「Scratchはゲーム感覚で取り組む印象だったのが、今回はパズルや算数の問題を解くような思考をしている様子だ」と言います。そんな特徴がぴたりときて、探究心がアップしている子どももいるかもしれません。

恥ずかしがらずに「わかりません」が言える環境が教え合いを生む

 次に、意外な特徴が見えてきました。パソコン室では、「先生わかりません!」と誰でも抵抗なく言える、というのです。確かに、国語や算数で一斉授業を受けているときに、手を挙げて「わかりません」と言ったり、隣の席の子に「ちょっと教えて」と声をかけるのは、ちょっと勇気のいることでしょう。
 プログラミングの場合は、「みんなわからないのが当たり前だから、知らないことは恥ずかしくない」(黒坂先生)、「国語や算数と違って、これから何を学習するかのイメージがわかないから、スタートラインが一緒。先行学習している子に気後れすることが無い」(内堀先生)という指摘には、なるほどと納得しました。
 そのおかげか、隣同士声をかけあったり、わかる子が離れた席の子に教えに行ってあげるということも、自然に起きています。「クラスの授業では『話し合ってみようか』と声かけをして初めて始まるような教え合いが、コンピューター室では常に自然に発生している」(黒坂先生)というのは、実はすごいこと。「異学年で同じ課題に取り組んでいるので、学年間の教え合いが自然に生まれ、4年生が6年生に教えるなんていうシーンもある」(内堀先生)というのも、お互いの壁が低く気後れしないで済んでいるからでしょう。
 正に「アクティブ・ラーニング」と呼べる状況が、自然に成立しているわけです。「知らないことは恥ずかしくない」とか「皆同じスタートライン」という感覚が、自主的な学び合いの大切なキーとして作用しているのは、意外な発見でした。
 プログラミング活動というと、パソコン室で各自が黙々とパソコンに向かっているイメージがあるかもしれませんが、そういう個人に閉じた活動ではなく、むしろ外側に開いた子ども達の姿が見えます。

失敗がこわくなくなる!!

 テキストで入力するプログラミングは、例えば半角にすべきところを全角にしたり、スペルを1文字間違えただけでもエラーが出て動きません。エラーの原因がわかった時の子ども達はきっと「やったー!」という反応をするんだろうな、と予想していたのですが、聞いてみると全く違いました。
 むしろ、「あぁぁぁぁ」「なんだぁ」という感じだというのです。確かに言われてみれば、小さなトライ&エラーを繰り返す時というのは、「え?なに?そんなことが原因だったの?」と拍子抜けした気持ちになるもの。時間をかけて大きな疑問が解けたときの喜びとはまた違います。
 「その分、恐怖心はなくなっている感じがします。なんだコンピューターって怖くないじゃん、という感覚になってきている」(黒坂先生)という指摘にはなるほど、と感じました。小さな失敗を繰り返し自分で直す経験を積み重ねるからこその強さでしょう。
 一方「エラーが出るとどうしたらいいかわからなくなってしまったり、その先のやる気をなくしてしまう場合もある」(内堀先生)という現実もあり、山中先生の言う「エラーは嫌なものではない」を子ども達全員が受け止めるには、エラーにぶつかったときの先生のサポート加減が重要になりそうです。
 失敗という観点でもうひとつ興味深いのは、「ひとつの間違いが新しい発見になる場面がある」(内堀先生)ということ。
 「例えば四角形を描こうとしてある値を入力したら楕円になっちゃった、という時に、『こんなのができたよ!』と積極的に伝え合うというのは、他の教科ではあまり起きないことです。探求して得られることの自由度が高いと感じます」(同)。プログラミングには、パズルや算数の問題を解くような思考に、図工や音楽のような創造的な自由度がプラスされていると言えそうです。

先生の不安感をもとに対策を

 子ども達だけでなく先生にも変化がありました。黒坂先生はプログラミングは苦手意識が強くやる前は不安しかなかったものの、やってみると楽しいと感じています。ただ、その一方で、やってみたからこそわかる不安も。「こちらがわからないことが無数にあるという不安感が大きい」という黒坂先生の実感は、教える立場としての切実な思いでしょう。
 内堀先生はプログラミングに触れた経験も興味もあり積極的ですが、「教える側の教員がゴールを持ちきれていない」「『何のために使うんですか?』という問いに自信を持って答えを示しにくい」と感じ、これが多くの教員にとって抵抗感につながるだろうと予測しています。クラブ活動ではなく学校単位で取り組むとなると、関わる先生方が増え不安感や抵抗感が増すのは間違いありません。
 これらの声からは、先生方が「教員はすべてを理解して子ども達にぶれずに対応すべきだ」という強い責任感を持っているのを感じます。
 今後、学校でプログラミングを導入するには、先生自身が基本的な知識をつけられる学ぶ手段と、安心して使用できる教材が整備されることが重要なのは明らかです。それに加え、従来のように先生がすべてを背負って教えるというスタイルをゆるめ、子どもの学びをサポートするような新しい授業スタイルとして位置づけることも大切かもしれません。

「プログラミング的思考」は結果的に身につくもの

 この半年間のプログラミング活動について小林校長は、「必要性や目標などまだわからないことも考えていかなければいけないこともあるものの、今まずは、子ども達が抵抗感なくパソコンを使い、プログラミング活動で試行錯誤する環境がある」と評価します。このように、「まずやってみる」という取り組み方は、新しいことを始めるときにとても重要な要素だと感じさせられます。
 次期学習指導要領の検討で定義された「プログラミング的思考」については、「実際にプログラミング活動をやっている子ども達は、もう既に『プログラミング的思考』をしているのではないかと感じている」と小林校長は言います。
 「プログラミング的思考」は、わざわざ目的として大きく掲げるものではなく、プログラミングを実際にやってみて格闘した結果身につく資質だということが、とてもわかりやすく表れています。

これからにさらに期待!

 日野第七小学校のプログラミング活動は、トライ&エラーの経験をたくさんできる設計であることが子ども達の自主的な試行錯誤や問題解決を促し、自然と「プログラミング的思考」を経験させることにつながったと言えるでしょう。
 今後、子ども達のモチベーションの維持やさらなる探究心アップのためには、アウトプットの形をもう少し工夫できると、さらに面白いカリキュラムに成長していくのではないかという印象を受けました。
 クラブ活動からクラスの活動へ、そして各学年に合わせた形にしていくにはまだ検討事項はたくさんあるでしょう。この半年の取り組みで見えたプラスポイントを自信にして、ぜひ立ち止まることなくチャレンジして欲しいと思います。