見出し画像

Week2-2)コーディングを授業で活用する利点

MediaSmartsのオンライン講座「Making Media Across the Curriculum」、二週目のゲストスピーカーはオンタリオ州の教師で、高校生の時にフリーランスのプログラマーとして仕事をしていたBrian Aspinall氏。彼からコーディングを授業で活用する利点について動画でレクチャーがありました。

その内容を以下にまとめます。

1.コーディングを授業に取り入れたきっかけ

私はオンタリオ州の教師です。オンタリオ州の授業カリキュラムにコーディングはないので、生徒のコードに対して評価は行っていません。でも私はコードを使って数学、科学、言語、社会の授業をしています。コードを取り入れた授業の中で、子供たちが身に付ける副産物的スキル(創造力、問題解決力、グリッド、成長マインドセット)は、教科書を使用した従来の学習方法で得られるスキルより優れたものになるからです。もちろん教科書には教科書の良さがありますが、それが唯一の教材というわけではない。私自身、高校時代にHTMLを学び、それを体感してきました。

2. コーディングは計算論的思考(Computational Thinking)の一部

計算論的思考とは、『ツールや技術を使って問題を定式化し、解決すること』であり、数学的に言うと『データを論理的に整理して分析するための方法』だ。コーディングは、モデルやシミュレーションなどの抽象化によってデータを表現するという点で、計算論的思考の一形態と言える。
自動化は計算論的思考の大きな部分を占めており、アルゴリズムによって解決策を生み出すことができる。
プロセスとしての計算論的思考は、ステップとリソースを最も効率的かつ効果的に組み合わせることを目標に、可能な解決策を特定・分析・実装することを意味する。
また計算論的思考は、問題解決プロセスを一般化し、より広範な問題へと移行させるための手段でもある。

3.コーディングを使った具体的な授業例

1)中学1・2年では実験的確率と理論的確率を学ぶ。私はこれをコイントスのアプリケーションを使う。コイントスのアプリケーションはコインに触るたびにコインをひっくり返すようにコーディングされている。そのプログラムは、何回目か、結果の集計、確率を教えてくれる。紙に記入する代わりに、代数の原理を使う。それは、これらが変数であり、幾何学の原理を使いながら確率を学ぶことができるからである。

2)Scratchを使用してプログラミングでコンテンツ作りをする時は、歴史の授業のためのアニメーションを作成しても良い。この歴史の授業での課題には数学的理解、アルゴリズム思考、計算論的思考が必要になる。

4.学校でコードを学ぶ10の理由

数学的スキルがつく:コーディングは、子供たちが抽象的な概念を視覚化し、数学を現実世界に応用できるようにする
文章スキルがつく:計画を立てる価値を理解する
創造力がつく:試行錯誤しながらコーディングをすることで強化される
自信がつく:コーディングを通じて問題解決を学び自信がつく
体系的に考える力がつく:複雑なコードを書くことで身につく
立ち直る力がつく:プログラムの間違いを見つけ手直しすることで身につく
コミュニケーション力がつく:コーディングを通じて新しい言語を身に付ける過程で得る
生み出す力を得る:コーディングで人とは違うものを生み出す力を得る
生きていく力になる:デジタル時代に知っておくべきことを得る
キャリアの準備になる:情報技術分野に精通した人の需要は大きく、社会での活躍が見込まれる

5.この授業が生徒に好まれる理由

・学校の授業のようではない
・通常の授業のように成績がない
・二項対立や、正しいか・間違えているか、というものではない
・失敗という定義が違う(できないことがあった場合は、修正すればいい)

コードを学んで、それがすぐに正しく動作することはほとんどない。これを知ることはとても大切なことだ。それは学び始めたということと、イノベーションが始まったということを意味する。
問題解決を始めた時、パズルを見始める。つまり新しいレンズを通して問題を見始めるということで、その時にイノベーションが起こる。
生徒が没頭することに本当の価値がある。コーディングはそれを可能にする。

6.世界・地域のコーディング教育

◆イギリス
小学校でPythonは、フランス語より人気があり、BBCはコーディング、STEM、STEAM技術を教えるために、子供全員にマイクロビット(micro:bit ※教育向けのマイコンボード)を提供した。

◆オーストラリア
歴史と地理の授業をコーディングに置き換えた。

◆カナダBC州・NS州
最近、コンピューターサイエンスの授業を近く導入すると発表した。

7.コーディングから広がる世界

重要なのは、業界は子供にコードを教えることが好きで、誰でもプログラマーになることを推し進めていること。コーディングはやってみないと好きかどうかわからない。コーディングのプロになってもらうことを前提に教える必要はない。それは他の教科を教える時と同じ。
21世紀のスキルをできるだけ子供たちに教える、という点でも良い。コーディングは公平性のレベルがとても高いと実感している。ScratchやMinecraftのようなツールは砂場のようなもので、そこに自然に存在できるため、授業準備も必要ない。
コーディングをすることで、アニメーションに命を吹き込み、思考に命を入れ、それを世界へ共有することができる。それを両親や祖父母、大きなコミュニティで共有することができれば、コラボレーションという子供たちが必要とする大切な経験を得ることができる。
世界で最も大きな2つの企業は自社製品やサービスを販売していないし、AirbnbやUberは世界中の人が自分たちで自ら収益を上げる方法を編み出した。そのようなモデルをあなたのクラスでも考えてもらいたい。

このレクチャーを受けて

コーディングの授業を行う、ではなく、コードを使って授業を行う、というのは元プログラマーの教師ならではの発想で、それを可能にしているオンタリオ州の教育システムは素晴らしいと思う。だが、コーディング未経験の教師にはなかなか実施のハードルが高いだろう。できる教師から少しずつ始め、拡がっていくことを期待したい。

トップ画像:講座でコーディングのアプリケーションとして名前が挙がった「GameMaker」「Sploder!」「Scratch」「Kodu」のロゴ

この記事が気に入ったらサポートをしてみませんか?