この記事は、2020年に小学校に導入されるプログラミング教育に関してまとめた記事です。
小学校におけるプログラミング教育に関しては、文部科学省が「小学校段階における論理的思考力や創造性、問題解決能力等の育成とプログラミング教育に関する有識者会議」で議論を行っており、その資料をもとに内容をまとめています。(以下が原文です)
小学校へのプログラミング教育導入の背景

昨年Googleが開発した人口知能AlphaGoが、韓国のトップ棋士に勝ったことで話題になりました。
このように注目を集めている人工知能が、様々な判断を行い、身近な物の働きがIoTで最適化されたりする時代が社会を大きく変えていくと予想されています。人口知能の発展が、人類に及ぼす影響も大きく、今後10年~20年程度で、半数近くの仕事が自動化される可能性が高い(マイケル・オズボーン氏(オックスフォード大学准教授))との予測や、子供たちの65%は将来、今は存在していない職業に就く(キャシー・デビッドソン氏(ニューヨーク市立大学大学院センター教授))といった予測もあります。
※人工知能が職を奪うという主張の一方で、人工知能によって新たな職業が生まれる可能性も指摘されています。
人工知能が、与えられた目的の中での処理を行っている一方、人間は、複雑な環境の中でも自分の考えをまとめたり、相手にふさわしい表現を工夫したり、唯一解がない問題に対しても、他者と協働し、目的に応じた納得解(コンセンサス)を見いだすことが出来る強みを持っています。
こうして、社会や産業の構造が変化していく中で、人間に求められるのは、決まったことを正確に行う力ではなく、自分なりに試行錯誤しながら新たな価値を生み出していくことであるという考え方から、「プログラミング的思考」(※コーディングのスキルではない)を身につける必要があり、公教育への導入が決まっています。
プログラミング教育の目的は?コーディングが出来るようになればよい?

プログラミング教育の目的はなんでしょうか。コーディングができるようになることがゴールなのでしょうか?有識者会議では、小学校におけるプログラミング教育導入の目的を、
プログラミング教育とは、子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育むことであり、コーディングを覚えることが目的ではない。
子供たちが、コンピュータに意図した処理を行うよう指示することができるということを体験しながら、身近な生活でコンピュータが活用されていることや、問題の解決には必要な手順があることに気付くこと、各教科等で育まれる思考力を基盤としながら基礎的な「プログラミング的思考」を身に付けること、コンピュータの働きを自分の生活に生かそうとする態度を身に付けることである。
として、プログラミング教育の目的は、コーディングのスキルを身につけることではないと明言しています。
プログラミング教育が導入される文脈の中では、「コーディングのスキルは時代によって変化し、時間の無駄になる」といった反対意見が散見され、そういった意見に対する誤解をとくためにも、目的はコーディング技術ではなく、思考法であると明言しています。
また、「プログラミング以外に、もっと他に勉強すべきことがある」といった主張に対しても、
こうしたプログラミング教育を実施する前提として、言語能力の育成や各教科等における思考力の育成など、全ての教育の基盤として長年重視されてきている資質・能力の重要性もますます高まるものである
として、決して他の教科の重要性が低いわけではなく、重要性は同様に高まると明言しています。
また、地域の特性等に応じて、研究開発学校や調査研究校、民間企業やNPOによる各種事業の実施校等におけるプログラミング教育を重点的に進めていく取組も、併せて推進することがもとめられるとしています。
効果的なプログラミング教育の条件

あわせて、効果的なプログラミング教育を行うには、以下3つが必要としています。
ICT環境の整備
具体的にはPC、タブレット、ネットワーク環境、無線LANなど学校によって大きくICT環境は異なり、プログラミング教育を行う上では非常に重要になります。文部科学省は、教育のIT化に向けた環境整備4か年計画を策定し、単年度 1,678 億円(平成26~29年度 4 年間総額 6,712 億円)の大きな予算を設定しています。
最近では、渋谷区が全ての公立の小中学校の生徒教員にタブレットを支給する予算案を発表していました。
教材開発と教員研修等の在り方
主体的・対話的で深い学びとして実現されるような教材の開発・改善が求められるとしている。一人で黙々とコンピュータに向かうような学習や現実社会と乖離した抽象的な内容ではないように注意が必要としています。また、そういった教材やカリキュラムの情報が集積するポータルサイトの構築も考えられると議論されています。
教員の養成・研修に当たっては、ICTやアプリケーションの使い方そのものが目的ではなく、プログラミングを経験させるなど、子供たちに育む「プログラミング的思考」の意義や、質の高いプログラミング教育を実現するための授業の工夫や在り方等についての研修が図られるべきであること、また、コンピュータ科学分野の高度な知識が必要というわけではないこと等に留意が必要である。
上記のようにプログラミング教育を教える側に高度なコンピュータに関する知識を要求しているわけではなく、子供達にプログラミング的思考を学んでもらう意義や、その授業の行い方が重要であるという点が強調されています。
指導体制の充実や社会との連携・協働
効果的なプログラミング教育の実施のために、担当教員の追加や専門人材の参画を含めた指導体制の充実を、「チームとしての学校」の在り方を踏まえ検討することが重要とし、意欲ある子供たちが成果を実感し学んでいくことができるよう、全国規模の各種大会の開催も期待されるとしています。
小学生のプログラミングの全国大会のようなものが開催されるかもしれません。
プログラミング学習サービス一覧
オンラインプログラミング学習サービス
- オンラインブートキャンプ はじめてのプログラミングコース【TechAcademy】
- 現役エンジニアのオンライン家庭教師CodeCamp
- 世界最大級のオンライン学習サイトUdemy
- 【WEBCAMP ONLINE】無料体験はこちら