見出し画像

楽しい仕事2

 パソコンを買ってもアプリはゲーム以外ついていなかった時代で、当然職員室でパソコンを見かけることはなかった。息子が小学3年生頃だから30年も前(1990年ごろ)、ワープロ専用機を所有していてもパソコンを使っている教員は見なかった。あの頃は8ビットパソコンで一度に処理できる数字が2の8乗。つまり、0から255まで。現在は64ビットパソコン。2の64乗の数字が一度に処理できる。
 こう、したり顔で言ったけれどもパソコンに詳しい訳でも数字に強い訳でも,ましてや頭がいい訳ではない。何度も繰り返せば覚えるし、覚えたコンピュータ用語が増えれば普通の人の知らない語彙まで獲得する。難しい言葉を長い年月使い続ければ意味もわかってくるし説明もできるようになる。長年貯まった知識をもう少し披露しよう。コンピュータの性能は一度に処理できる数字の大きさで決まる。言い換えると処理スピードで決まる。コンピュータでは頭の回転が早いか遅いかの差が性能となる。人間の頭も回転スピードが速ければ利口そうに見えるが、記憶し続けるためには興味を持ち続けて時々使用する必要がある。集中力や興味の持続時間が影響するから回転が速いだけでは自慢にならない。
 プログラミングを始めた頃、強い意欲と集中力が長時間継続したお陰で人並み以上にコンピュータに詳しくなった。そうなると質問を受けるようになる。答えられれば嬉しくなるし、答えられなければ時間をかけて調べて理解し、新たな知識を獲得する。学校で教えられる一方だった者がプログラミングで初めて学習する経験をした。何かに打ち込むことは学習することである。頭の回転速度や学歴で人間の能力が決まらない不思議さがここにある。世の親がこぞって習い事をさせるのは的外れではないが、親の期待の中から子どもが自分の打ち込むものを見つけ出す可能性は低い。けれども職業選択の自由がない名跡後継者がそれを天職だと思う場合もあるから一概に否定すことはできない。この辺りから発する親の情は身に染みて分かる。我が子に対する多大な期待が私にもあった。
 小学3年だった息子にLOGOなるプログラミング言語で万国旗を作らせて体育館で行われた夏休み課題発表展示会にMSXパソコンとブラウン管の小型モニターテレビを体育館に持ち込んで展示した。しかし、息子の興味は長くは続かず、彼の思考力向上には他のものに打ち込む機会の訪れることを祈るしかなかった。
「この程度の失敗、なにするものぞ。」
「息子で失敗した経験を活かせば面白い授業ができるかもしれない。」
失敗した無念さと諦め切れない思いが中学校技術科の授業でプログラミング指導を続けさせた。思えば息子が何千人もできたことになる。やがて成功する機会が稀におとずれる。しかし、指導した手応えはまるでない。生徒をコンピュータ室に入れてLOGOを紹介するだけで、彼らは勝手にプログラミングを始め夢中になった。ただそれだけである。プログラミングの入り口までは連れて行けるが指導できた実感は一度もなかった。
 自作サンプルプログラムを説明して授業がスタートする。サンプルを写す段階で私は質問に即答できるが、2時間目のプログラムのアレンジが始まると質問が多くなるばかりか適切にアドバイスするまでに随分時間がかかるようになる。つまりプログラムで記述されている生徒の考えを理解するのに時間がかかった。このような状況では教師支援がないと問題解決ができない生徒の中に遊び出す者が現れる。やがてパソコンは彼らの「おもちゃ」と化す。それを眺めていた他の生徒まで遊び出す。
 一方的に講義内容を聞いて理解する授業は受けることが容易にできる。また、工作で目的と方法が分かれば完成まで遊び出すことはない。しかし、自分の考えをプログラミング言語で記述し自分の考えたキャラクターを使ってアニメやゲームを作る学習は制作方法が解らないと遊び出す結果を招く。私がBASICを独学したと同様に制作方法を自分で考え出すことのできる者がいる。前述した稀に指導に成功した様に見えた生徒は自力で問題を解決したからである。つまり、基本的思考力と試行錯誤を苦にしない根気強さと作品を完成させたい意欲を持ち合わせた生徒ができたのであって、私の指導の結果ではなかった。
 ノコギリやカナヅチ等の道具を使って作品を作る工作とプログラミング言語(LOGOやscratch)と言う道具を使って作るアニメやゲームの制作には大きな違いがある。工作で道具の使い方が分からなくてもそれなりの作品はできる。また、意欲が少なくても道具の使い方が悪くても美術作品も音楽の演奏もそれなりに出来る。けれども、プログラミング言語は一文字でも違っていては作品は出来ない。また、道具の使い方は決まっている訳ではなく作者(プログラマー)によって使い方を考えなくてはならない。
 プロの大工や演奏家や画家は修行や鍛錬の期間が必要であるのと同様に、プログラミングでも修行期間が必要であると最近感じるようになった。確かに、ある程度は教えることもできるが、自作のプログラムを作るためにはやはり自発的な修練・独学が必要である。そして、大工たちと同様にプログラム作品を作るためには強い意欲も不可欠となる。
 40人学級で全員が基本的思考力と試行錯誤を苦にしない根気強さと作品を完成させたい意欲を持ち合わせているはずはない。30年もプログラミングを指導しても成功した手応えがないのも仕方がないと諦め始めた今年度、7名のクラスで全員にプログラミング学習を成立させることができた。その授業内容を紹介する。


 4時間の修行期間をもうけた。修行1時間目のサンプルプログラムは

  1. 「A」キーを押すと「ド」

  2. 「S」キーを押すと「レ」

  3. 「D」キーを押すと「ミ」

それぞれの音が出るサンプルプログラムを自分で入力させ、それを改良させたり自作の音楽プログラムを作成させたりした。作り方(制作手順)をエアープレイで電子黒板に映しながら実演し、scratchのコード(ブロック)の部分をスクリーンショットに撮って、写真データを生徒に転送する。生徒はマルチタスク機能でタブレットの半分でコード(ブロック)を見て、残り半分でscratchのコード(ブロック)を組み立てた。単純明快なプログラムなので10分ほどで「ドレミ」が完成する。この後はアレンジする時間にする。音を増やすこともできるし、楽器を変えることもできる。あるいは音を出すコード(ブロック)を組み立てて好きな曲も作れる。記憶している楽譜をもとにプログラムしてもいいし、インターネットで楽譜を探すことも許可した。1時間は「あっ」という間に過ぎる。確かにプログラミングの内容としては少ないけれども、scratchへのログイン・ログアウトの方法や注意事項の指導を含めてscratchに慣れて制作意欲を持つことができたとすれば十分である。
 チャイムで終了時間を迎える。
「先生。聞いて下さい。」
「オレも。」
作った音楽を私に聴かせたがるから、希望者に発表させる。
「次の時間、続きを作りたい。」
こうオネダリされるが、
「まだダメ。今日から4時間はプログラミングの修行時間だから、4時間の修行が終わってから自由制作を許可する。」
動画での紹介


 2時間目のサンプルプログラムは猫に触れたら「ニャー」と鳴いて10歩進み、犬に触れたら「ワン」と吠えて10歩進む。スプライトが2つになりプログラム部分も2箇所になる。

  1. スプライトを増やす方法

  2. 音を呼び出す方法

  3. コスチュームを変更する方法

  4. 座標を決める方法

以上の内容を理解させてからアレンジさせる。この作品も発表したい生徒が続出する。
動画での紹介


 3時間目のサンプルプログラムは追いかけてくるコウモリから逃げるプログラム。学習(修行)内容は以下の通り。

  1. 「蝙蝠」「前後左右4つの矢印」のスプライト追加

  2. 「猫」・「蝙蝠」・「前後左右の矢印」のプログラム入力

  3. 変数の使い方

  4. ブロック定義

  5. 条件分岐

  6. メッセージの送受信

  7. 演算

7名の生徒のうち3名が時間内に完成させた。うち2名がアレンジに進み、残りの4名は未完成で終わった。
「途中で終わってもいい。悔しければ修行期間が終わってから続きをやりなさい。」
動画で紹介


 4時間目のサンプルプログラムは中央にロケットを配置し、ロケットは矢印キーで動かすことができる。星は右端から左端に流れる。毎回、星の位置は乱数で変化する。スペースキーを押すとロケットからミサイルが発射され星に命中すれば星が消える。逆に星にぶつかればロケットが爆発する。
 プログラミングの学習の最初で生徒に遊ばせたプログラムを単純にわかりやすくしたサンプルである。ゲームの基本的な要素をできるだけわかりやすく入れてある。
動画での紹介

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