みんなでプログラミングteaching site|先生方が楽しみ、そして生徒に任せてみる
みんなでプログラミング
0

To Teachers Who Teach Programming プログラミング教育を行う先生へ

先生方が楽しみ、そして生徒に任せてみる

様々な教科に埋め込み可能なプログラミング教育

中学校でのプログラミング教育を考える上では、小学校段階でプログラミングを一定学んでいることを前提にします。もちろん多くの先生方が感じているように、出身小学校毎の違いなども多々あるのが現実でしょう。そういった差こそあれ、プログラミングを体験している小学生は急速に増えています。その上で中学校ではどのように展開をしていくのがよいのか考えてみましょう。
小学校で学んだ「プログラミング的思考」を直接的に展開するのは、技術・家庭科技術分野です。小学校段階では、プログラミングを体験し、その上に、中学校の技術・家庭科技術分野では、生活や社会における事象を、情報の技術との関わりの視点で捉え、様々視点から処理の方法などを最適化する「情報技術の見方,考え方」を踏まえ、より詳細な仕組みや問題解決を行うようになっています。プログラミングをより科学的に捉え、深めていく点で技術分野の学びは重要です。
一方、技術・家庭科以外の各教科では、プログラミング教育というのはほとんど意識されてないのではないでしょうか。しかし小学校でも学習指導要領では算数、理科が提示されていますし、プログラミング教育の手引きでは、さらに社会や音楽、家庭科、総合的な学習の時間、特別活動なども例示されています。小学校の例を見てもわかるように、プログラミング教育は、様々な教科の中に埋め込まれています。また、カリキュラムマネジメントに代表されるように、教科を横断しての学びが重要視されるようになってきていることからも、既存の教科観から抜け出し、教科横断的な視野を持つことが必要になってきています。1人1台端末の時代、ぜひ技術・家庭科以外の各教科でもプログラミングを取り入れることを検討してみませんか。

先生がまずプログラミングを楽しむ

中学校で各教科でもプログラミングを扱うポイントで、最も大切なのは、先生自身がプログラミングを楽しむことでしょう。
数学の例で考えてみましょう。小学校では算数の多角形の指導が例示されていますが、こうしたグラフィックスはプログラムの得意とする分野です。プログラムを使うことで図形のもっと奥深い世界に触れていくことも可能になります。例えば、フラクタル図形という図形の部分と全体が自己相似になっている図形について、教育用プログラミング言語であるScratchの作品を検索してみましょう。様々な方が様々なフラクタル図形の描画プログラムを共有され、それらプログラムの描くフラクタル図形の美しさ、不思議さに感心するのではないでしょうか。同様に、各教科の小学校での展開例を参考に、その発展に関連するプログラムを探してみると、様々なプログラムが見つかるでしょう。その面白さは、プログラミングの面白さと同時に、その教科の背景にある学問体系の面白さにも通じるのではないでしょうか。
文学、科学、芸術などと同様に、プログラムや技術も人類が生み出し、発展させてきた文化です。そして何よりプログラミングは創造的で面白いものです。プログラミングという人間の文化であり創造な活動を楽しむことをお勧めします。同時に、その学問の持つ面白さが加われば、各教科での新しい学びが自然と生み出されたり、教科間の連携につながったりしていくのではないでしょうか。もちろん生徒らは、こうした創造的な活動に取り組むことで、プログラミングの様々な場面での活用・応用も身につけていくことでしょう。そのためにもまず先生方自身がプログラミングを楽しんでみましょう。

生徒に任せることで広がる学び

プログラミングの指導では、教材や研修もさることながら、先生方の授業観、学習観の転換が最も重要です。そこでお勧めするのが、生徒に任せることです。
考えてみれば、プログラミングはこれまでの教育内容とは大きく異なっています。大半の先生方は、子ども時代、教員養成段階、少し前の教員研修等でプログラミングについて学んではいないでしょう。一方、生徒たちの適応力や吸収力は想像以上です。先生は学んでないが、生徒は先生を簡単に越えていく。これは、プログラミング教育が他の教育内容と大きく異なる点です。そこで授業の方針を変えてみましょう。
小学校でプログラミングを体験している現在、プログラミング得意である生徒もいるでしょう。授業でプログラミングを扱うと、操作や手順がわからないという質問が生徒たちから多々出てくることもあるでしょう。そこで「先生もわからないな」と言ってしまう。同時に、先生は、「○○さんに聞いてみて」「○○さん、みんなに紹介して」と生徒たちをつないだり、「ネットで○○と調べてみたら」とヒントを出したりと、生徒自身が考え、学ぶようにすることです。生徒が興味を持ち取り組みたくなる課題であれば、生徒自身で解決しようと取り組み出せるでしょう。その中で先生の想定を超える成果も生まれてくるでしょう。いわば、インストラクションからファシリテーションへの転換です。
生徒に任せることで、生徒自らがプログラミングを学び、ねらいである課題解決に取り組む。これこそ、学習指導要領が示す主体的、対話的で深い学びの第一歩ではないでしょうか。

先生の役目は学びの羅針盤

現在の使いやすいプログラミング言語やツールの活用で、生徒たちはプログラミングにすぐに慣れていきます。しかし、面白いとハマっていくことはいいのですが、時に違う方向にそれてしまうことも起きます。例えば、学習のまとめでスライドを作成したが、各種アニメ効果や効果音が面白くなり、画面効果は面白いが、肝心の内容が薄いスライドになってしまったようなイメージです。そのような時に、生徒たちを立ち止まらせ、その活動の目的は何か、何のためのプログラミングなのかを再度押さえることが必要になります。生徒たちの学びの羅針盤として、向かうべき方向を指し示してあげる役目は、先生にしかできないのではないでしょうか。
生徒たちが取り組みたくなる創造的な課題と、お互いに学び合える環境を用意すれば、先生方がプログラミングに詳しくなくても、生徒自身で学びは広がっていいきます。先生方には、肩の力を抜いて取り組んでいただければ。そして先生方には、生徒たちの進むべき方向を示しながら、生徒たちの主体的、対話的な取り組みをファシリテートしていただくことで、プログラミング教育として深まっていくでしょう。ぜひ、様々な教科でプログラミングを展開してみましょう。

参考
文部科学省:中学校学習指導要領(平成29年告示)解説 技術・家庭編,2017
文部科学省:小学校プログラミング教育の手引(第三版),2020