学生向けプログラミング教育が気になる!話

こんにちは。第2開発部のR.Iです。
高校生の子供を持つ母なので、年々進化・新化する学生向けのプログラミング教育は他人事ではなくとても気になっています。
現在の状況や実際に現場で何が行われているのか調べてみましたので紹介します。
(全て2024年11月時点の情報です)

背景

いまやスマートフォンを持つことも、学校の授業でタブレットを使用することも、ごく普通です。
子供の学校では日々の課題提出もスマートフォンアプリから実施しています。
また、大学入試共通テストでも2025年度入試(2025年1月)から「情報」科目が加わることは有名な話ですよね。
言うまでもなく身近な生活環境・習慣の一部にプログラミングに関する概念やツールが存在し浸透し続けています。教育もその一つだと思います。

学校の授業・取り組みについて

日本の学校で行われているプログラミング教育は、各教育段階に応じた内容になっています。

小学校での取り組み

小学校では、2020年度からプログラミング教育が必修化されました。
ざっくり目的をまとめると、こんなところでしょうか。

「プログラミング的思考の育成」として、自分が意図する一連の活動を実現するために必要な手順を論理的に考える力を養うこと

中学校や高校での学習につなげるための導入・下準備ということですね。
実際には算数や理科の授業で実施されています。
例えば算数ではScratchを使用し図形の作図を行うそうです。*1 *2

中学校での取り組み

中学校でも、小学校と同時期にプログラミング教育が必修化されました。
その背景には「Society 5.0*3」の実現化があります。
こちらも目的をまとめてみました。

小学校で培った知識や経験を深め、経済発展と社会的課題の解決が可能な人材を育成すること

過去事例は技術・家庭科分野におけるものが多く*4問題案件に対しての解決策検討から具現化までを行うそうです。
なにやら難しくなってきましたね。。。
小学校同様にScratch、加えてPythonJavaScriptなどの言語も取り扱います。
子供も中学生の時にHTMLとJavaScriptを使用して自己紹介ページを作成したとか。
(恥ずかしいのか出来上がりは見せてもらえませんでした)

高等学校での取り組み

高校では2022年度から「情報I」が必修科目となり、全ての生徒がプログラミングを学ぶことになりました。

  • 情報I:プログラミングの基礎、ネットワーク、データベースの基礎等を学ぶ
  • 情報II(選択):より高度なプログラミングや情報システムの設計・開発を学ぶ

一昔前では、情報系学生や実用する人だけが認識・理解する基礎内容に見えます。
これを高校で学ぶということは既に一般化・常識化されている概念なのですね。
高校では小中学校で学んだ内容を「手段」として活かし、より現実的で効果的な課題解決を実現させることが求められています。

これらの教育を通じて、学生さんたちは論理的思考力や問題解決能力を養い、将来の社会で活躍するための基礎を築いていくのですね~。

民間のプログラミング教室について

とはいえ、教育現場ではまだまだ教員数や授業時間の不足が現実としてあります。
授業内容や環境が整っていない現場も少なくありません。
そのような背景からか、プログラミング教室・塾を子供の習い事の一候補としたり、実際に通っている子供も多く見かけるようになりました。
子供を通わせた経験はありませんが折角なのでがっつり調べてみましたよ。

プログラミング教室のカリキュラム例

小学生向け

  • ビジュアルプログラミング
     ⇒Scratchなどのビジュアルプログラミングツールを使用
     ⇒ゲームやアニメーションを作成する
  • ロボットプログラミング
     ⇒LEGO MindstormsやVEX Roboticsなどを使用
     ⇒ロボットを組み立て、プログラムで稼働させる

中高生向け

  • テキストプログラミング
     ⇒PythonやJavaScriptなどのプログラミング言語を学ぶ
     ⇒アプリケーションやゲームを開発する
  • Web開発
     ⇒HTML、CSS、JavaScriptを学び使う
     ⇒Webサイトの作成やデザインを学ぶ

中高生向けの内容は我々大人の開発者が業務で扱う内容と近いですね。
これだけではなく、次のようなスキルと掛け合わせたカリキュラムを提供している塾もあり驚きました。
※この内容で大人も含め幅広い年齢層を対象にしているところもあるとのことです!朗報!

  • プログラミング×ゲーム
  • プログラミング×スポーツ
  • プログラミング×英会話
  • プログラミング×プレゼンテーション
  • プログラミング×音楽
  • プログラミング×アート
  • プログラミング×ファッション
  • プログラミング×農業
  • プログラミング×クッキング

STEAM教育*5」という言葉に準じて、学校だけでは補えない分野を塾で学ぶことができるってことです。
凄すぎません?!

その他の小噺

アウトプットの方法

学習成果のアウトプットと言えば、やはり「プログラミングコンテスト(プロコン)」でしょう。
ざっと調べただけでも国内外で色々開催されていることがわかります。

  • U-22 プログラミング・コンテスト
  • 全国高等専門学校プログラミングコンテスト
  • Imagine Cup
  • Codeforces
  • Google Code Jam ...など

弊社も協賛している「ジュニアプロコンin静岡」にも多くの学生さんが参加し楽しく競う様子がうかがえました!
私も作品を拝見したのですが、どれも発想が柔軟で思わず感心してしまいました。
インプットしたものをアウトプットすることが定着につながります
大人になった今も(得意ではありませんが)アウトプットは重要だとつくづく思います。
子供のころから身に付け慣れることができたら最強ですね。

「マインクラフト」を使った授業?!

このニュースはゲーム好きの自分が非常に興味深く当時驚いたため、少々古い情報ですが紹介します。

ケンブリッジ大学の建築科では「マインクラフト(マイクラ)*6」を使って学生が建築デザインを学ぶプロジェクトが行われ、デザイナーを多数輩出しています。 *7


最近は日本でも立命館大学や大森学園高等学校などで「マインクラフト」を用いた授業が取り入れられているようです。
ゲーム内では一例として次のようなことを行います。

  • 歴史的建造物の再現
  • 観光ガイドの作成
  • 学校近隣地域の問題・課題をシミュレーション ...など

そして、これらにおける問題提起や解決策提案を行う授業が展開されているとか。
中学入試で使用された例もあるようですね!*8

また、上で紹介したプログラミング教室のゲームの一つとしても「マインクラフト」が活用されています。*9
教育現場では「教育版マインクラフト」を使用し、複数人のチームで協力・相談しながら様々なクエストに挑戦していきます。
冒険を楽しみつつプログラミングし、コミュニケーション力も育む目論みです。
楽しくないわけがないですね。私も参加したいです。


少々?余談ですが、、、
マイクラをゲームとして楽しむ場合、こんなモードがあります。
 ・ゾンビ等の敵が存在する世界で生き延びる「サバイバルモード」
 ・無限資源を利用し構造物建築を楽しむ「クリエイティブモード」 など
出典を失念しましたが、どこかの教育機関では「サバイバルモード」で授業が行われ、学生さんは建築物を構築中にゾンビに攻撃されるという無慈悲を味わいながら完成を目指した話を聞いたことがあります。
建築学以外にも忍耐力が学べそうですね。。。
ちなみに私も「サバイバルモード」で遊びますが、よわよわプレイヤー故すぐ敵モブに命を奪われます。
その状態で学習は、、、無理です。

まとめ

「プログラミング教育」という言葉をよく聞くようになり久しいですが、特に2020年以降様々な場面で進化・実現しています。
弊社の若手エンジニアも、このような環境を経験し仕事に繋げている人が多いはずです。
また、学生向けのあれこれを調べる中で、「子供と一緒に」「大人だけでも」チャレンジする環境も用意されていることがわかりました。
きっと今後も増えていくように思えますし、私自身も普段の業務とは一味違ったプログラミング体験に挑戦してみたくなりました!
皆さんもぜひ何か試してみてはいかがでしょうか?

おわりに

KENTEMでは、様々な拠点でエンジニアを大募集しています!
建設×ITにご興味頂いた方は、是非下記のリンクからご応募ください。 recruit.kentem.jp career.kentem.jp