後編「プログラミングを教える大人に伝えたいこと 『ルビィのぼうけん』のリンダさん講演録【後編】」
アルゴリズムとは? 動いて学んでみる
「コンピューターやプログラミングを教える」というのは、コンピューターの使い方を教えるのではなく、どのように考えるか、どういうふうに思考していくか、ということを伝えることだと思います。では、小さい子どもたちにプログラミングについて知ってもらいたいときはどうすればいいでしょうか。
『ルビィのぼうけん』では、まずコンピューターが人間の指示どおりに動くことを紹介します。これはたとえば、「パジャマを着て」という指示を出されたとき、「自分が今着ている服を脱いで」という指示がなければ、今着ている服の上にパジャマを着るということです。また、「部屋がとても汚いから玩具を片づけて」と伝えたら、玩具は片づけますが、床に散らばっている紙やペンなどは片づけません。プログラミングについて教えてあげるときは、こうした手順が必要だときちんと伝えなければなりません。
いきなりアルゴリズムやブロックチェーンの話をしても、誰もがその言葉を知っているわけではありません。それ自体がわからない場合も多々あります。そういうとき、その用語を文字や言葉で理解するというよりも、実際に自分の手を動かして学ぶことでより深い理解できるのではないでしょうか。
また、新しいテクノロジーを子どもたちに伝えるとき、社会的な動機づけや成果報酬的な動機づけよりも、楽しい遊びを通して学んでもらうことが重要です。友達と助け合ったり、新しいことを発見したりすることで楽しくなるのが遊びのいいところです。
皆さんは「アルゴリズム」を説明できますか? けっこう難しい概念です。では、せっかくなので、皆さんに今からペアワークをやってもらいたいと思います。1人はプログラマー、もう1人はコンピューターになってください。「歯を磨く」という目的をプログラミング的に指示し、行動してみてください。
先ほどお話ししたように、正しい指示をきちんとした順番で伝えないと、コンピューターはどうしたらいいのかわかりません。「歯ブラシに向かって手を伸ばしてください」と言っても、どこに歯ブラシがあるかわかりませんし、「手を伸ばしたら止めてください」と言わなければ、その手はどんどん先にいってしまいます。どのように指示をしたらコンピューターが歯を磨けるでしょうか。
皆さんが今実践していることそのものがアルゴリズムです。「歯磨き粉を使ってください」という伝え方では不十分なんですね。「歯磨き粉の蓋を外してください」と伝えなければなりません。「歯をきれいにしてください」と伝えたい場合、その「きれい」とはどういうことでしょうか。コンピューターに指示を伝えること、つまりプログラミングというものはこんなにも複雑なことをやってのけているんですね。なので、プログラミングは通常1人でやるのではなく、会社やチームで行うことが多いんです。
また、プログラミングでは間違いを起こすこと、エラーを起こすことは当たり前です。うまくできないからと劣等感は持たなくていいと思います。もしこれから教育現場で仕事をする方がいるなら、子どもたちにも「これは正解」「これは間違い」と教えるのではなく、間違えることは全然悪いことではないと伝えてあげてください。それに、プログラミングの正解はとても様々で、たくさんあります。
身近なテクノロジーを知らずに子供が成長してしまうのは怖いこと
アルゴリズムについては理解していただけたでしょう。では、これはどういうところで使われているのでしょうか。
いったん仕組みがわかると、たとえばGoogleの検索結果で上の方に出てくる広告が、自分が検索した言葉を利用したアルゴリズムを使って表示しているのでは、と気づくかもしれません。あるいは、自分がこれまでブラウザで見てきた履歴に沿った広告が表示されているかもしれません。
アルゴリズムはSNSでも使われています。広告は検索エンジンで使われているのと似たような仕組みで表示されていますし、自分のタイムラインやニュースフィードも、あるアルゴリズムに従って表示されています。
YouTubeではおすすめ動画が表示されますが、これもアルゴリズムが使われています。私が怖いなと思うのは、こうしたおすすめ動画などを目にした6歳の女の子が、動画がどういう仕組みで並べられているかをまったく知らずに育っていってしまうことです。
プログラミングやテクノロジーは専門家や研究者だけのものではありません。これから教育現場に関わる方や、この場にいる大学生、社会的なマイノリティの人たち、もちろん子どもたちもそうですが、誰もが多少は知っておくことが大事です。
シリーズ2作目である『ルビィのぼうけん コンピューターの国のルビィ』では、ルビィがコンピューターの世界に入り込んでしまいます。その中でコンピューターを作ることになるんですが、これを読んだある女の子が、自由研究の宿題として紙でコンピューターを作ってみることにしたそうです。
彼女はお母さんの力も借りて、一つひとつのパーツを丁寧に作っていきました。USBの接続口のような細かい部分も再現しました。絵本を読んでくれた子は、「コンピューターは難しいもの」という恐怖感を抱かず、楽しそうなものだと受け止めてくれたんだなと嬉しくなりました。
私にとってコンピューターがそうであるように、皆さんにも自分が大好きなものがあると思います。その魅力をどう伝えたら、子どもたちがわくわくして聞いてくれるでしょうか。そういうことを普段から考えてほしいと思います。
全部を伝えるのは難しい
世の中にはアルゴリズムやブロックチェーン、ビットコインといった言葉が蔓延しています。けれど、そもそもそれが何なのかを理解している人たちはどれくらいいるんでしょうか。
ある日、少年が私のところにやってきて「インターネットって何? インターネットって場所のことなの?」と訊いてきました。私は「サーフィンをする場所だよ」、「様々なネットワークがつながっているところだよ」と話しましたが、それは私が勝手に定義づけている1990年代のインターネット像です。この少年の質問の本意は、インターネットが自分の目の前に見えないもので、それがどういう実態を持っているのかわからないということでした。
インターネットは海底ケーブルを通して世界中をつなげています。ですから、ケーブルとコンピューターの集合体だと言えます。でも、それはインターネットの本質ではありません。インターネットはパソコンだけでなくスマホの中にもありますし、だとするとどこにでもあることになります。様々なクリエイティビティが存在している場でもありますし、そうしたコンテンツ自体もインターネットの一部です。あるいは、世界中の人々の頭の中にもあるのかもしれません。
こうした概念を教育現場で教えるのはとても難しい思います。コンピューターやインターネットを知ってもらうには、ハードウェアとソフトウェアの仕組みを伝えるだけでは足りません。それらが相互に影響し合うと言っても不十分です。一つひとつを教えていくのではなく、すべてのことを伝えなければならないんです。でも、きっと子どもたちは自分で手を動かしてみることで、自然と理解していくでしょう。教育とはそのための手助けだと思います。