新人プログラマー研修指導経験者の目で見る小学校のプログラミング教育〜『「コンピュータと学び」のフォーラム2018 秋』より
プログラミング教育の未来を考えるイベント『「コンピュータと学び」のフォーラム 2018 秋』が、2018年10月27・28日の2日間にわたって明星大学にて開催されました。主催のCOPERU Projectの取り組みに関する発表はもちろん、研究や実際の授業など様々な立場でプログラミング教育に関わる皆さんの発表が行われました。
その中で、企業の新人研修で全くの初心者にプログラミングを教えた経験からの視点でお話をしてくれた徳島大学助教の谷岡広樹先生のお話をご紹介しましょう。谷岡先生は、ご自身が企業で長くエンジニアをしていただけでなく、新人研修でプログラミングを教えていた経歴があります。プログラミング教室TENTOの立ち上げにも関わっていて、現在は徳島大学の助教を務めながらCoder Dojo徳島の運営、徳島の小学校でのプログラミング授業などに携わっています。
新人研修で未経験者にプログラミングを教えてみると……
会社で働くプログラマーというのは、大学などで完全に技能を身につけた人だけがなれるもの、というイメージがあるかもしれません。ですが、日本の企業の場合、全くプログラミングの知識ゼロで入社して、会社でイチから技術を学ぶというケースが決して珍しいことではありません。
谷岡先生は新人研修でプログラミングを教えた経験から、プログラミングには明らかに「適性」があると感じているそうです。全員が同じ初心者でも、放っておいてもあっという間に習得してしまう人もいれば、手取り足取り指導してやっとできるようになる人がいるのが現実だといいます。
これは、算数や国語だけでなく、音楽や体育、図工などをやっていて、あきらかにぐんぐんスイスイのびる子と、努力の問題ではなくなんとなく苦手で身につきにくい子がいるのと同じようなことでしょう。指導と努力で底上げできるベースの力と、それを越えた「適性」らしきものは、本来何においてもあることかもしれません。
なかでも、入社時に初心者だったある社員が数年後に、競技プログラミングの世界でトップになったのを目の当たりにし、プログラミングのエキスパートになるための教育が小学校から必要なわけではない、ということは確信しているそうです。
小学校段階のプログラミング教育で重要なこと
では、小学校でのプログラミングでは何を重視したらよいのでしょうか?
「プログラミングに論理的思考は必要だしプログラミングをすれば論理的思考は身につくとは思います。でも、プログラミングの技術的な勉強だけをしていればいいというわけではありません。できるだけ、日常の中でアルゴリズム的で効率的な考え方ができるようにしたらいいと考えています」と谷岡先生は語ります。
会場の参加者は、谷岡先生のお題にそって例えば自分がこんなシーンでどうするかを考えてみました。
「探し物をする」:部屋の中で探し物をするときどうすると見つけやすいですか?
「片付けをする」:整理の工夫はありますか?倉庫や図書館ではどうしているでしょうか?
「買い物をする」:買い忘れを防ぐためにどうしますか?
「料理をする」:スムーズに調理するためにどうしますか?
各自いろいろな工夫があるはずです。効率よく作業するためには、様々なルールや法則を考え出すことが役に立ちます。自分で考えつくだけでなく、すでに先人達が考えよく知られている定型パターンを採用することもあるでしょう。そうした効率のよい手法は、アルゴリズム的な考え方で生み出されています。
さらに、これらを自分がやるのではなく、他の誰かにお願いをして実現できるようにすることが、「プログラミングをする」ことだと谷岡先生は表現しました。これはとてもわかりやすい説明です。自分で効率よく探し物をするのではなく、別の人に自分が考えた手法で探し物をしてもらうにはどうしたらよいか。誰でもその通り実行すれば間違いなく同じクオリティの作業を実現できる手順を正確に書き起こすことが、プログラミングだというわけです。
こんな思考のアクティビティをしながら実際のプログラミング体験もしていくと、楽しみながらプログラミングのベースになる力を育むことができそうです。他にも、コンピューターやネットワークのシステム、プログラムなどの仕組みを体感できるアクティビティをいくつか紹介してくれました。伝言ゲームをやって通信の仕組みにつなげて説明したり、しりとりをやってコンピュータのメモリの役割につなげて説明したりもするそうです。小学生に限らず、大学生でも大人でも初学者にはぴったりの印象です。
谷岡先生はプログラマーに適性があることやプロの厳しい世界も知っているからこそ、全員がプログラミングの技術を身につける必要はなく、将来本気でやりたいと思ったり必要になったときに取り組めるだけの基礎体力をつけられればいいという見通しを持っています。だからこそ、小学校では、日常的な事柄の中でこうした思考をすることを入り口に、プログラミングは楽しいという気持ちで取り組むことを大切にしたいと考えているということです。
もちろん、もっと知りたい!という子ども達もいますから、CoderDojo徳島の運営を通じ、より深く学びたい子ども達のサポートをする体制を、同時に整えています。現在クラウドファンディングも実施中ということなのでぜひチェックしてみてください。
現場感のある視点をプラスに生かしていきたい
小学校のプログラミング教育に携わる人で、企業経験者やプログラマーの仕事の現場のリアルな空気感を知っている人というのは意外と少ない、というのが、現時点での私の実感です。
谷岡先生は実際にご自身もエンジニア経験や新人指導経験があり、厳しい側面も現場の課題も体感的に知っています。その上で、子どものプログラミング教育に正面から取り組んでいるというのは貴重なことだと感じます。学術方面や、教育現場からプログラミング教育を考えることはもちろん重要ですが、それと同時に、リアルな現場を知っているからこそ言えることがプラスの方向性で混ざっていくのは大切なことだと感じます。
ちょうど、このフォーラムでは、学術的な専門家の立場からの話も、現場の先生からの話もありました。これらはEdTechZineにて、狩野が詳細にレポートしているので、是非こちらもあわせてぜひご覧ください。
(1)大阪電気通信大学電子機械工学科 兼宗進教授によるセッション
プログラミング教育で「人間とコンピュータの関係」を理解する――必修化の成立に関わった視点から語る意義
(2)東京学芸大学附属竹早小学校 佐藤正範教諭によるセッション
プログラミング教育って必要? 教科との接続は? 悩める小学校の現場での実践には、子どもたちの「気づき」と体系づけた学習が鍵