2020年度から小学校でプログラミング教育が必修化されて、すでに5年が経ちました。
しかし、現場の様子はなかなか見えにくく、「本当に全員がプログラミングを習っているの?」「授業では具体的に何をしているの?」といった疑問を持つ保護者の方は少なくありません。
この記事では、必修化5年目を迎えた小学生のプログラミング教育の現状を、制度面と実際の授業の両面からわかりやすく解説します。
小学校のプログラミング教育「必修化」とは何か
まず押さえておきたいのは、「プログラミング教育の必修化」という言葉がしばしば誤解されている点です。
多くの方がイメージする「新しい教科としてプログラミングの授業が週に何コマもある」という状況とは、実際にはかなり異なります。
小学校では、プログラミングという独立した教科は存在しません。
必修化されたのは、あくまで「プログラミング的思考」を育てる学習活動です。
これは、算数や理科、総合的な学習の時間など、既存の教科の中に組み込まれる形で行われています。
「プログラミング的思考」とは
文部科学省は、プログラミング的思考を次のように説明しています。
自分が意図する活動を実現するために、どのような動きの組合せが必要で、一つ一つの動きに対応した記号をどのように組み合わせたらよいのか考え、それらを組み合わせる論理的な考え方というものです。
ここで重要なのは、必ずしも「難しいプログラミング言語を覚える」ことが目的ではないという点です。
コンピュータに命令を出すときの考え方、順序立てて物事を組み立てる力、原因と結果を結び付けて検証する姿勢などが重視されています。

このように、プログラミング教育は、学力そのものというよりもこれからの社会で必要とされる考え方や学び方を身に付けるための手段として位置付けられています。
必修化5年目で見えてきた全体の傾向
必修化から5年が経過し、全国の小学校ではプログラミング教育がほぼ定着しつつあります。
ただし、その内容や頻度は学校ごとにばらつきがあるのが実情です。
実施状況の大まかな傾向
全体としては、以下のような傾向が見られます。
1つ目は、年間数時間〜十数時間程度の「ポイント実施」が主流であることです。
小学校では年間授業時間が限られているため、毎週のようにプログラミングを行う学校は少数派です。
多くは、学年ごとにテーマを決め、算数や理科の単元に合わせて数時間まとめて行う形が一般的です。
2つ目は、内容や難易度に学校差が大きいことです。
タブレット端末と簡単なビジュアルプログラミングを中心に行う学校がある一方で、ロボット教材やセンサーを用いた高度な活動に取り組む学校もあります。
これは、自治体の予算やICT環境、教員の得意分野によって変わります。
3つ目は、教員側の経験値が徐々に蓄積されてきたことです。
必修化初年度は「何から始めていいかわからない」という声が多く聞かれましたが、近年は研修の充実や、各社教材の普及により、基本的な授業デザインが共有されつつあります。
それでも、得意な先生とそうでない先生の差はまだ大きく、これは今後の課題となっています。

実際の授業では何をしているのか
ここからは、具体的に小学校で行われているプログラミングの学習活動の例を、学年や教科ごとに見ていきます。
低学年(1〜2年生)の活動例
低学年では、文字入力や複雑な操作がまだ難しいため、体を動かしながらプログラミング的思考を体験する活動が多く取り入れられています。
例えば、次のような活動です。
- 友達を「ロボット」に見立てて、ゴールまでの道順を「前に3歩進む」「右に曲がる」といった命令カードで指示する
- 矢印カードを並べて、キャラクターをスタートからゴールまで進める「アンプラグド(コンピュータを使わない)型」のゲーム
- タブレット上で、アイコンをドラッグして順番に並べるだけの簡単なビジュアルプログラミング
こうした活動を通じて、順番を意識して手順を考えることや、うまくいかなかったときに原因を探して修正する経験を積み重ねていきます。
まだ「プログラム」という言葉を強く意識させず、遊びに近い感覚で取り組むことが多い学年です。
中学年(3〜4年生)の活動例
中学年になると、具体的な教科と結び付いたプログラミング活動が増えてきます。
特に算数や理科と相性がよく、次のような例が典型的です。
- 算数の「正多角形」の学習で、キャラクターに「前に進む」「右に曲がる」といった命令を繰り返し与え、正方形や三角形、多角形を描かせる
- 理科の「電気のはたらき」で、センサーを使って明るさに応じてLEDが点くプログラムを作る
- 社会科や総合の学習で、地域のマップ上をキャラクターが移動するクイズゲームを作成する

この段階では、「繰り返し(ループ)」「条件分岐」といったプログラミングの基本的な考え方に触れ始めます。
とはいえ、難しい専門用語を覚えさせることが目的ではなく、「同じ動きを何度もさせるにはどうすればいい?」「ある条件のときだけ動かすには?」といった問いを通して、自然に概念を体験させるスタイルが一般的です。
高学年(5〜6年生)の活動例
高学年になると、より本格的なプログラミング活動に取り組む学校が増えます。
学習指導要領上も、高学年では算数での正多角形や図形の拡大縮小、理科でのセンサー利用など、プログラミングが明確に位置づけられています。
代表的な例としては、次のようなものがあります。
- 算数の授業で、多角形の性質を調べるためのプログラムを作り、角度や辺の長さを変えながら図形を描かせる
- 理科の「電気の利用」で、マイコンボードとセンサーを使い、温度や明るさによってファンやLEDを制御する
- 総合的な学習の時間で、Scratch(スクラッチ)などのビジュアルプログラミングツールを用いたオリジナルゲームやアニメーション作り
- ロボット教材を使って、自動走行や障害物回避などの動きをプログラムする

高学年では、「自分でアイデアを出して、試行錯誤しながら作品を完成させる」というプロジェクト型の学習が行われることも多くなります。
このような学習を通じて、子どもたちはプログラミングだけでなく、プレゼンテーションやチームワーク、課題解決力なども身に付けていきます。
教科との関係と時間割の中での位置づけ
「プログラミングはどのくらいの時間、どの教科で学ぶのか」という点は、保護者にとって気になるポイントです。
ただし実際には、学習指導要領で「年間◯時間以上」といった具体的な時間数が一律に定められているわけではありません。
主に組み込まれている教科
一般的には、次のような教科との関連で実施されることが多くなっています。
- 算数: 図形、座標、数の規則性など
- 理科: 電気、光、音、センサーなど
- 図画工作: 動きのある作品づくり、インタラクティブな作品
- 総合的な学習の時間: 地域学習、探究学習と結びつけた作品制作
- 外国語活動: 英語のフレーズを使ったゲーム作りなど

このように、プログラミングは特定の教科に閉じたものではなく、さまざまな教科を横断して活用される「学びの道具」として扱われています。
時間割に「プログラミング」という名前が載っていなくても、実際には算数や理科の中で取り組んでいる場合が多い点は押さえておきたいところです。
教師側の課題とサポート体制
必修化当初から、現場の大きな課題として挙げられてきたのが「教師側の準備とスキル」です。
教師の不安と工夫
現場の先生からは、次のような声がよく聞かれます。
- 自分自身がプログラミングを習った経験がないので不安
- マウスやタブレット操作に不慣れな児童と同時に進めるのが難しい
- 教科書だけではイメージが掴みにくく、授業デザインに時間がかかる
一方で、この数年で自治体や教育委員会による研修の機会が増え、授業のモデルや指導案が共有されるようになってきました。
また、民間企業やNPOなどが学校に出向いてサポートするケースも増えています。

教材面では、Scratchのような無償ツールに加え、小学校向けに設計された日本語インターフェースのビジュアルプログラミング教材やロボットキットが広く普及してきています。
解説書や動画なども整備され、「先生自身が高度なプログラミングスキルを持っていなくても授業が成立する環境」が徐々に整ってきていると言えるでしょう。
子どもたちの反応と身に付いている力
では、子どもたちはプログラミングの授業をどのように受け止めているのでしょうか。
学校や地域によって差はあるものの、共通して見られる傾向があります。
好奇心と達成感が得やすい活動
多くの子どもにとって、画面の中のキャラクターやロボットが自分の指示どおりに動く体験は新鮮で、「楽しい」「もっと作ってみたい」という前向きな反応がよく見られます。
特に、ゲームやアニメーション作りなど、自分の興味と結び付けやすい活動では集中して取り組む子が多くなります。
同時に、プログラムがうまく動かないときには、「なぜ動かないのか?」を自分で考え、友達と相談しながらデバッグ(修正)する姿も見られます。
この過程は、まさにプログラミング教育が狙う「論理的思考」や「試行錯誤」の経験そのものです。
得意・不得意の差とフォローの必要性
一方で、どの子どもにとっても楽しいだけの活動とは限りません。
マウス操作に慣れていない、文章を読むのが苦手、画面の情報量が多いと混乱しやすいといった理由から、つまずきやすい子どもが一定数いるのも現実です。
そのため、現場では次のような工夫が行われています。
- 作業を細かいステップに分けて、黒板や大型モニターで手順を一つずつ確認する
- ペアや小グループで取り組ませ、子ども同士で教え合う時間を設ける
- 操作に不安のある子には、あらかじめ少し触れておく機会を作る
プログラミング教育の目的は「プログラマーを育てること」ではなく、「誰もが基礎的な考え方を身に付けること」です。
その意味で、得意な子だけが先に進んでしまわないよう、全員が「わかった」「できた」という実感を持てる授業づくりが今後も重要になります。
家庭から見た「必修化」の受け止め方
保護者の立場から見ると、「どこまで家庭でサポートすべきなのか」「習い事としてプログラミング教室に通わせた方がいいのか」といった疑問が出てきます。
学校の授業と習い事の違い
学校のプログラミング教育は、先述の通りプログラミング的思考の基礎を全員に身に付けさせることが目的です。
そのため、学ぶ内容は比較的基礎的で、頻度も限定的です。
一方、民間のプログラミング教室やオンライン講座では、次のような点が異なります。
- 週1回など継続的に取り組むことで、より高度な内容まで学べる
- ロボットやゲーム制作など、特定の分野に特化した学習ができる
- 少人数制で、一人ひとりのペースに合わせた指導が受けられる

「将来エンジニアにしたいから、早くから専門的な言語を習わせるべき」という考え方もありますが、小学生の段階ではそこまで急ぐ必要はありません。
まずは学校での学びを通して「考えること」「作ること」を楽しめているかを見極め、それを伸ばしたいと感じたら習い事を検討する、というスタンスで十分です。
家庭でできるシンプルなサポート
必ずしも特別な教材や高価な機器を用意しなくても、家庭でできるサポートはあります。
例えば次のような関わり方です。
- 子どもが学校でどのようなプログラミング活動をしたのか、具体的に話を聞いてみる
- タブレットやPCを使う際に、「どんな手順でやるのか」「うまくいかなかったらどうするか」を一緒に言語化してみる
- ブロック遊びやボードゲームなど、ルールや手順を考える遊びを一緒に楽しむ
重要なのは、「正解をすぐ教える」のではなく、「どう考えたのか」を子ども自身に説明してもらうことです。
こうした対話が、学校で学んだプログラミング的思考を日常生活の中で活かす土台になります。
今後の展望とこれから問われる力
必修化から5年が経ち、小学生のプログラミング教育はようやくスタートラインを越えた段階と言えます。
ここから先、どのような方向に進んでいくのでしょうか。
中学校・高校との接続
すでに中学校では「技術・家庭科」でのプログラミングが必修となっており、高校でも「情報I」の必修化が進められています。
小学校でのプログラミング教育は、その後の学びにつながる「入口」としての役割を担っています。
小学校段階で特に重要なのは、次のような力です。
- 手順を整理し、順番に沿って考える力
- 失敗を恐れずに試し、原因を考えて修正する姿勢
- 他者と協力しながら、一つの作品を作り上げる経験
これらは、中学校以降で本格的にプログラミング言語や情報の科学的な理解に進む際の、土台となる力です。
社会の変化とプログラミング教育の役割
AIやロボット、IoTなどの技術が急速に進展する中で、「コンピュータに命令し、活用する側」に回れる人材の重要性はますます高まっています。
とはいえ、全員がソフトウェアエンジニアになるわけではありません。
むしろ、医療、福祉、ビジネス、芸術など、あらゆる分野で「デジタル技術を理解し、適切に使いこなす力」が求められるようになります。
小学校のプログラミング教育は、そのための基礎教養を全ての子どもに保障する試みと捉えることができます。

まとめ
小学生のプログラミング教育は、必修化から5年を経て、全国の学校で着実に根付き始めています。
ただし、「プログラミング」という教科が新設されたわけではなく、算数や理科、総合的な学習などの中に活動として組み込まれている点は、改めて押さえておきたいポイントです。
現場では、年間数時間〜十数時間程度の「ポイント実施」が主流で、内容や難易度には学校ごとの差があります。
それでも、子どもたちは自分の指示どおりにコンピュータやロボットが動く体験を通して、順序立てて考える力や、失敗から学ぶ姿勢、仲間と協力して課題を解決する力を少しずつ育んでいます。
教師側の負担やスキルの問題、児童間の得意・不得意の差など、解決すべき課題は残っていますが、研修や教材、外部サポートの充実により、環境は年々整いつつあります。
保護者としては、学校での学びの様子を丁寧に聞き取りながら、子どもが「考えること」「作ること」を楽しめているかに目を向けることが大切です。
これからの時代、プログラミング的思考は、特別な一部の職業だけに必要なスキルではなく、誰もが身に付けておきたい基礎的な素養になっていきます。
小学校での必修化は、その第一歩です。
現状を正しく理解したうえで、学校・家庭・地域がそれぞれの立場から子どもたちの学びを支えていくことが、これからのプログラミング教育の鍵となるでしょう。
