見出し画像

高校でプログラミングを教えたよ!って話

この記事はmast Advent Calendar 2023の2日目の記事です。
1日目はちゅるりさんの記事『ヘッドスパに連れていかれた話』でした。

非常に健全な記事ですので、読んでいない方はぜひ読んでください。

注意

この記事は、配属校の特定を避けるため、生徒の個人情報を保護するために架空の学校名を用いており、学校名は配属先と全く異なります。ご了承下さい。

また、この記事の感想として生徒や配属校に対する批判のコメント等はお控えください

一方で、筆者への批判のコメントなどはOKです


自己紹介

しょあです。よろしくお願いします。
情報メディア創成学類の2021年入学組、いわゆるmast21というやつです。

情報メディア創成学類には様々な人間がおり、特にmast21はその傾向が強いと感じています。
例えば、"フォント、組版、プログラミングに強い人"とか"KotlinとWebが大好きな人"とか"デザイン力やべえやつ"とか"プレゼン力の化け物"とか"なんかもうわけわっかんないけどマジですごい人"とか。

私はいろいろつまみ食いしてますが、明らかにほかのmast21と違うなぁ……という点でいうなら、"公教育におけるプログラミング教育に興味関心がある人"です。
特に、プログラミングやパソコンが苦手・嫌いな生徒観の学級でのプログラミング教育に興味があります。

今回はそんなちょっとプログラミング教育オタクが入っている私が3日間、県立高校でプログラミングを教えたという記事をお送り致します。

経緯

春学期、私はメーリングリストから情報科社会人講師活用プログラムというものの案内を受けました。
要約すると、情報系に詳しい人[要出展]を高校に送り込んで、プログラミングの授業をしてもらったり授業補助をしてもらう制度を始めるので、それの講師として登録しないか?というものです。

給料は時給3000円とお高め!

時給はまあ魅力ですが、どちらかというと自分の興味にドンピシャだったため即日登録しました。

余談ですが、登録の際、教えられるプログラミング言語を選択肢から入力しました。その際、教育用オブジェクト指向プログラミング言語であるドリトルがあり、びっくり。結構マイナーな気がするのですが……
(ドリトルは現在大阪電気通信大学におられる兼宗 進教授が博士の審査学位論文にて作成したものです。なんと、その大学は我らが筑波大学!!)

他にもいろいろ(10種類くらい?)の言語があり、どのような人が登録アンケートを作成していたのか非常に気になります。

事前準備

配属校決定

登録したことを忘れかけた夏休みごろ、配属校決定の通知が来ました。

(>_<)  < ドキドキ……

!(^^)! < やった!受かった!

( ゚д゚) < え……大洗共学学園高校?! 片道2~3時間?!

(;´∀`) < いやまさか教育委員会もそんな無茶はいわないでしょ……見間違えか

(-_-;)  < いや、見間違えじゃないわ。大洗だ。

ということで、なんと片道2~3時間の場所に配属です!遺影!
(大洗共学学園高校は完全に架空の学校であり、そのような学校はありませんし配属先は大洗の学校ではありません。大洗女子学園をパロってるだけです)

1日の勤務時間が2~3時間なので、移動時間を含めると時給が1000円くらいになってます。なんてこった……

(´Д⊂ヽ  < ま、まあ今回の目的はプログラミング教育の現場を知ることがメインだったし。うん。

( 一一)  < あ~、しかも業務時間的にこれ授業準備とかの時間給料に含まれないやつだ。TA業務ならいいけど授業やる系だった場合給料は考えない方がいいな

授業準備とかの時間が給料出ないって、どっかで聞いたことあるな~~
具体的には教職講義とか教師のバトンとかで聞いたことあるな~~

閑話休題、配属校が決まりあまりに場所が悪いとしても断る選択肢はない(経験としても迷惑になる点からも)ので、ここからは派遣校の教員と連絡を取りながら準備を行うこととなりました。


まず最初に業務内容の確認についてのメールを送信!
TA的な業務だったら前準備いらないし実質時給が高くなるな~~!
さて私の業務内容は~~~~!!

しょあ様
大洗共学学園高校の蝶野です。
お世話になります。

業務内容についてですが、しょあさんの好きなように授業してください。

わ~い、給料のことは考えないことにしよ~~っと

授業準備

ということで、給料は雀の涙のボランティア活動になったのです。
まあ私はお金よりも現場を知ることが重要だったので、うん、いいよ……

といいますか、正直なところ授業させてくれるといいな、と思っていたので非常にありがたかったです。
授業準備にお金が出ないのは全くありがたくありませんが。


閑話休題、自由にしても良い、と言われてしまうと燃えるのが人間というものです。気合十分で様々な文献や教材を調査し、実際に触るなどしていきました。

そして、かなりの時間を割いて授業の方針を考えたのですが、結局全く面白みも意外性もない、Scratchを用いてゲームを作る授業を行うことにしました。
理由は次に示しますが読み飛ばしていいです。

要するに、自分の教育スキルと生徒観を考えるとScratch以外では生徒置いてけぼりな授業になると考えたためです。

 Scratchを用いた理由としては、自分の教育スキルと生徒観を勘案すると、ほかのプログラミング言語での授業を行うことが難しそうであると考えたためです。またゲームを作ることにした理由としては、内発的動機づけを行うのが非常に難しそうだったため、動機づけにゲームを用いたかったためです。
 動機づけの方法として、日常生活の役に立つよ、であったり、身近なところで用いられているよ、などから生徒の興味関心を引く、という方法があり、本来ならばこちらが好ましいです。しかし、今回は6時間という短い時間であること、生徒観に対して授業らしい授業を行うことがあまりよくないと感じ、このようにしました。
 また、授業計画を立てる際、3人の教育の先輩方に相談をしており、その際に何れも『ゲームとかにこだわらなくても良いのでは』と言われています。具体的には、Scratchでアルゴリズム的なことを教える、であったりPythonで簡単なプログラムを作成する、Scratchでアプリを作る、などを提案されました。
 ですが、生徒観に対してこれらがマッチしてるか、と言われると厳しい!ってなったので泣く泣く破棄することになっています。どうしても提案されたものは、自分たちが使って楽しい、のような域には達せないか、みんなが同じものを作る、写経になりかねないでしょう。


ちなみに、授業で使うプログラミング言語の最終候補は次の通りでした。
- Scratch
- Jasmine tea
- VBA
- Python
- (micto:bit も使いたかったけど機材の問題で断念)

本当はPythonで授業をしたかった(完全に自分の研究のため)のですが、う~む、残念。

その後は授業資料の作成をしたり、各種資料の読み込みなどを行ったのですが割愛します。(シラバスとか過去の試験問題と平均点、教科書などを送っていただいたのですが、個人情報の塊ですので……)

授業当日

ということで、一気に授業当日です。

1日目

一日目は2時間の対面授業です。
私は朝早くに家を出て、学校へ向かいました。

ディーゼル車に乗り配属校の最寄り駅に行く際に、非常に緊張していたことを思い出します。

なお、当時Discordに送った文章

前文を撤回致します。
正しくは、年甲斐もなくディーゼル車の音と古い運転席に興奮していました。やっぱ男の子だからね!運転台のレバーを取り外せるタイプは、東武博物館でキャッキャしていた幼少期を思い出して興奮しちゃいます。


学校に到着後は校長先生などに挨拶をした後、授業の最終確認、機材の確認などを行いました。
ちなみに、生徒の機材はChromebook、しかも性能が低いやつです。そして、画面も小さく解像度も低い。ゴミPCですね

このことがあとで様々な悲劇を起こすのですが、それはまた後程……


そして、授業本番へ。

1日目にやること

  • 自己紹介

    • 顔を覚えてもらい、生徒との良い関係性を構築することが目的

  • Scratchを自分の画面を見せながら一緒に操作させる

    • Scratchにならす

    • Scratchの操作を行いながら生徒の習熟度を確認する


自己紹介

アイスブレイクは終始よい反応を維持したまま終わりました。

初対面の人に『こいつやべえ面白い』って思わせるような自己紹介が一つあると非常に便利、というのは情報科指導法2という授業でいわれたことです。今回もその、使いまわしの自己紹介を使いました。
大学説明会、新入生歓迎会、高校での授業などどんな場面でも同じ自己紹介スライドを使いまわしてます

サムネイル

ちなみに、このnoteのサムネイル画像は自己紹介の際に教員の方が撮影したもので、手のポーズは逮捕のポーズ。


ところで。

想定通りアイスブレイクは成功したのですが、なぜかかわいいといわれました。釈然としません……
いや、生徒と親しくコミュニケーションが取れるというのは非常に良いし、そのためにはあだ名だってなんだってつけてくれていいし、なんでも言っていいんですよ? けど、かわいい、か…… そうか……

ちなみに、授業期間中の各所でかわいいと連呼されることになります。なんでや

Scratchでの実習

Scratchの実習は私が前で操作しているのをディスプレイに写し、生徒みんなで同じものを作る、というものでした。
2時間の授業で2つを作ります。作る予定……だったのですが

終わりませんでした

想定よりもScratchとPCになれている生徒が少なかった、というのもありますが、自分の教え方が悪かった点も多く……

  • Scratchの色とブロックの意味の関係性を教えないままだったので、やりたいことと色のリンクが繋がっていない生徒が生まれた

  • 進めるかどうかの判断が、苦手な生徒に寄り過ぎていた

  • コード量が多かった

  • 自分のデモが躓いているときがあった

特に一番ひどかったのがデモです。
デモは生徒の環境と合わせるために貸与のChromebookを使ったのですが、右クリックができない!正解は2本指で押す、だったのですがそれに気が付くまで内心ヤッベと思いながら操作しており、タイムロスになってしまいました。

また、Scratchのサンプルコードが現バージョンより古いものでちょっと読み替えが必要なものもあり……


もう一つの理由としては、機材の問題もありますね。
指定PCの画面が小さいために無駄なスクロールをしないと出てこないUIがありました。

画面サイズを変更などすればよかったでしょうが、さらに混乱しそうなので頑張ってスクロールしてUIを出してもらいました。
もっといいパソコン買わないとパソコンは使いにくいもの、とさらに思われる気がして、パソコンを楽しんでほしいと思っている私としては非常に遺憾です。


2日目

2日目はオンラインでの授業です。

実習系の授業でオンラインって、どうすんねん……

2日目にやること

  • プログラミング言語などの紹介、座学

    • フローチャートの紹介

  • 作るゲームのアイデア書作成

ということで、こんな感じにしました。

特に何も起きずに終わったのですが、教員からのFBとして、フローチャートを実際に書いてもらう時間があったほうが良かった、といただきました。
これは考えていたものの自分が現場にいないために可能かがわからなかったのでやめており、今考えるとフローチャートの授業を1日目にして2日目に2つ目のプログラムを作成すればよかった、と反省してます。

3日目

最終日です。

いつもは絶対に起きない時間に起き、出発しました。

駅そば

時間がなかったので朝食は駅そばです。ちょっと特別な気分になれます。
自分へのご褒美として鴨も入ってます。


今日の授業についてですが、3時間いただいていたので、この時間で一気にゲームを作成します。つまり、

3日目にやること

  • 実習。

    • 授業パートはなし!

私の業務としては、生徒さんの意欲が高く質問をたくさんされたので、3時間ずっと生徒への質問対応をしていました。

授業中の工夫点としては、よくある質問をHOにして公開していたことがあります。
あらかじめGoogle Slideのリンクを共有しておいて、何かあったらそこに書き込みを行うことで変更可能なプリントを作っていました。

こういう場面ではGoogle Slideは非常に便利ですね。文字を読まされている感が低くなりますし、リンクを書き換えずに更新可能ですし、図形とかも書き込めるし。

ここで起きたトラブルとしては、指定PCのスペックが低くフリーズしデータが吹っ飛ぶ生徒が何人か出てきてしまったことです。
指定PCに関して、本当にどうにかしろ、と思います。


最後に何人かの生徒を指名したり自発的に出てきてもらって、作ったゲームの発表を行いました。

この発表においても、私がゲームをプレイする形にしたらもっと良かったかな……と反省しています。


授業の終了

という感じで授業が終わりました。

教員の方からは普段より盛り上がっていて集中もしていた、初めて授業するとは思えない、などと励ましていただけました。また、生徒さんも完全に部外者の私に対して明るく接してくれたので、ありがたかったです。非常によい学校でした。

ただ修正すべき箇所が自分の中でいくつも上がっており、拙かったなと反省するばかりです。


授業終了後

校内にて

授業終了後、担当教員の方のご厚意で情報科の教科書を見せていただきました。学校には選定用の教科書が書く会社から届く(こともある)ため、なんとほとんどすべての情報科教科書があるのです。

宝の山!!!!

以前よりですね、数研出版の教科書がすっごい気になってましたし、文教出版の教科書も見たかったですし、全部がそろっているというのは本当に素晴らしく……ウヘヘヘヘ

ありがたいことに席を外していた教頭先生の席をお借りすることができたため、1時間ほどにわたりゲヘヘゲヘヘと変態みたいに教科書を見ながらメモを取っていました。

数研出版の情報1の教科書はですねゲヘヘ、案の定内容がやべーし例示が同じコードを複数言語で書いてあったりと興味がある人を離さない工夫があってよかったですグヘヘ

文教出版の教科書もJavaScriptとPythonの2つの言語それぞれで教科書を作成しているので、その差を見るのが非常に面白くウヘヘヘヘ


一旦冷静になります。

先述のように職員室で私が情報科教育変態不審者をしていた際、一人のベテランそうな教員の方から声をかけていただき、少々会話をしました。
内容としては、情報科教員は所謂主教科の教員に○○○○おり、教え子の方にもなった方がいたが○○○○が○○て○○し、今は○○をしている、とのこと。

正直、情報科は○○○○○○というのは想定外でした。私のイメージとしては情報科の教員はほかの教員から○○○○として扱われ、○○○○○○というイメージがあったので。

まあ、情報科が必修になり共通テストに出題されることになった現在はどうなっているかわからない、とのことですが、うん。

(;´∀`) < 本当に貴重なお話ありがとうございました……

(会話の内容が割とアレでヤバイ可能性があるので伏字にしてます。まあ皆さんは察することができるでしょう。そういうことです。)


本当はこのままずっと居たかったのですが、さすがにご迷惑なので下校しました。

そして家路へ……

つきません。

せっかくこんなに遠くまで来たんだ!
何もせずに帰るなんてもったいないよな!!!

ということで、観光をして帰ることに。

観光の話は本題ではないのでしませんが、お寿司味噌カツ丼、ジェラートを食べた、とだけ言っておきます。おいしかった。

授業をした感想

ちょっと騒がしい女子、むっちゃありがたい!

授業中の発言や行動に茶々を入れるような女子っているじゃないですか。
ああいう子って生徒同士の関係だといいけど教員目線だとうるさいとか思われるのかな~って思ってたんですよ。

めっちゃありがたい!!

授業中にちょっと失敗したときに茶化すような発言をしてくれた方がクラスとしても"茶化していいんだ"って思わせることができて、雰囲気が明るくなって非常にうれしいんですよ!

もちろん、一方方向な授業の場合はうっとおしいでしょうが、私は生徒とコミュニケーションをとって授業を作る派ですし、教職の教員もそちらの派閥でしたので構わないどころか本当にありがたかったです。

プログラミング教育、きつい

まず、テキストプログラミング言語ですが、そもそもキーボード入力に慣れていない生徒が多く、本来行いたい論理的思考力につながる授業よりもタイピング練習的な面が強くなってしまう恐れが多い生徒観があります。
そのような場合、ビジュアルプログラミング言語になります。

しかしそちらはやれることが限られる、実務で使われないので実生活に即した授業がしづらいという面があり。実務で使えてわかりやすいビジュアルプログラミング言語があったらよいのですが、う~ん。

実務で使われているビジュアルプログラミングって、知っている限りですとノード同士をつなげて使う感じですから授業としてつかえないんですよね。(UnityとかUnreal Engineとか)

実習をなめていた

情報科にて高校教職課程を取ってるので模擬授業をする機会が今までもありました。

しかし、その際に私は授業パートだけを行って実習パートはスキップしてたんです。理由は、実習なんてやること提示して後は机間巡視すればいいだけだろ、と思ってたから。

バカでした。

実習での生徒の補助、というのは非常に難しく、また答えを提示しない教え方はさらに難しかったです。

評価

自分の授業に対する評価

拙いと言わざるを得ないと感じました。

授業としては、非常に盛り上がりましたし、短い時間でしたが生徒とのコミュニケーションも、打ち解けた関係も構築することができたと感じています。

しかし、見慣れた教員に自分がなった場合同じことができるのか、学習面を強くする必要が出たときどうするのか、と言われると何にも言えないです。

制度に対する評価

"私は"参加してよかった、と思います。
授業だけをやる教育実習のようであり、授業内容を一任していただけたので非常に勉強になりました。また、現在の公立高校における情報科の問題を感じることができました。

何より、今まで考えていたプログラミングの授業の問題、というものがテンで的外れであったことを知ることができました。(エラーメッセージがわからないよりもっと手前が問題なんじゃ……)

一方で、私のような人間はレアケースであると思います。
客観視するといろいろツッコミどころがある制度です。

まず、報酬が少ないこと。
授業準備には報酬がないため、サービス残業状態です。この制度は大学生も対象にしているため情報科採用教員を増やしたい、という意図も感じています。しかし、授業準備は業務時間でない、となると教職に対してよい印象は受けないでしょうし、真面目にやるのが少々馬鹿馬鹿しい状態になります。

次に、派遣校の決定。
あの、片道2~3時間の学校に普通派遣しますか?
正直なところ、これに関しては担当の方の能力を訝しんでいます。
(配属校の方からも指摘していただけるとのことなので、来年度以降は変わっていると思います)

最後に、とにかく県がテキトーなこと。

(≧▽≦) <こんな制度いいでしょ~、やろっか~、やろう!
( ̄▽ ̄) <あ、あとは宜しく~~

みたいな感じで決まったんじゃないかと勘繰っています。
授業のサポートとか、なにもなかったですからね?

この制度をお勧めする人

たぶんこの制度、ガチャです。学校によっては講師として扱うし、学校によってはTAとして扱うでしょう。

情報科・プログラミング教育に興味があったり、情報科の教員を目指している人は参加するとよいのではないでしょうかね?

プログラミングの授業を行うのは大体どこの学校でも後期ですので、教育実習でプログラミングの授業は体験することができません。
なので、プログラミングの授業を現場で体験したい、行いたい場合はお勧めできると考えます。

終わりに

最後まで読んでいただきありがとうございます。

長かったでしょう? 長いです。たぶん今回のアドカレで一番長いです。

正直な話、もっと端折るか、もっとラフな文章にしようか、とも考えたのですが、あくまで真面目に書くことにしました。
ふざけて書く内容じゃありませんしね~
いくらでも過激なことは正直書けますよ?けど、炎上するし、どこに被害が行くかわからないし。)

というわけで終わりです。
公教育におけるプログラミング教育に関心がある人がいたらぜひ話しましょう!今まで見たことがありませんが。


さて、アドカレが書き終わったので、送っていただいた生徒の成果物全部を確認して全員分のフィードバックを作りましょうか!!
何かを作る楽しさはFBを貰ったときに倍増しますから頑張らないと。


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