投稿日:2019年6月22日
教員免許更新講習「これなら簡単、スクラッチ(Scratch)プログラミング」を受講して
最近毎週三重大に教員免許更新講習に参加するために通っていますが、今日も教員免許更新講習がありました。
本日の内容は「これなら簡単、スクラッチ(Scratch)プログラミング」というお題で主に小学校の先生に向けた子供向けプログラミングの導入についての講義でした。
講師は三重大教育学部教授の須曽野仁志先生です。
三重大学の情報の学習環境
本日も場所は三重大学情報端末室の4でした。前回写真を撮り損ねたので今日は皆さんがお昼休みに出かけている間に取っておきました。端末台数140台、富士通の最新型のパソコンが備え付けられており、前後に巨大なスクリーンが全部で5枚。非常に充実した学習環境ですね。
午前中の講義の内容
Google で Scratch を検索させるということ
まず最初は Google で Scratch のサイトを検索して表示させるところからのスタートでした。
Google の検索ボックスの表示のさせ方だけはアドレスバーにURLを直接入力をさせるような形になっていましたね。アドレスバーに直接入力するのは多少敷居が高いと思うので小学生を相手にする場合には、何かしらの対応を考えたほうが良いかもしれませんね。例えば、講義で利用するサイトがあらかじめわかっているようであれば、自前でダッシュボードを作成してしまったものを表示させるなどの対応が良いかもしれません。
Google の検索ボックスで何かを検索して探す=ググる力はそれはそれで必要だと思いますが、その一歩手前の段階を埋めてあげるにはダッシュボードも効果的ではないかと感じますね。
Scratch3 の対応ブラウザ
Scratch3はモダンなブラウザ以外はサポートしていないのですが、Operaがどうやらすでにモダンなブラウザではないと判断されてしまったようですね。Webkitが競争に勝利した現代においては、それ以外のレンダリングエンジンを積んでいるブラウザの生き残りは難しいのかもしれませんね。
子供たちが学習に利用する端末にインストールすべきブラウザの種類
Windowsマシンのよくあるブラウザで対応外のものが Internet Explorer です。最新版であっても対応していないので注意が必要です。三重大学の情報端末においてある端末にしてもそうなのですが、インストール済みのブラウザはGoogle Chrome、Mozira Firefox、Microsoft Edge、そしてMicrosoft Internet Explorerの4種類です。基本的には学校の端末には、現状市場を制しているこれら4つのブラウザをインストールした状態にしておいたほうが良いかもしれませんね。
歩いて壁に当たったら跳ね返るという基本的な「動き」の動作
まずは「10歩歩く」のブロックをクリックしてみてくださいと言われてクリックしてみるとちょびっとだけ右に猫が動きますが、まずはここからがスタートです。次に繰り返しの制御である「ずっと〇〇する」のブロックを組み合わせて、猫が右端まで移動するところを経験して、猫をつまんで中央に戻してみたいなところですね。この時イベントとして「旗をクリックしたら〇〇」のブロックの使い方も学びます。
この後「壁に当たったら跳ね返る」「跳ね返るときに左右だけ反転させる」などのブロックを使いながら猫が左右に行ったり来たりするところまで組みました。微妙に角度を変えてあげるとこれまた面白い動きをするようになるので、先生方はみなさんいろいろと試されていましたね。
音楽を作る
次は「音楽」の拡張機能を追加してからの曲作りに取り組みました。先生はサンプルとして前でチューリップを作って例示されていましたね。私もチューリップをまねをして左手の伴奏をそれらに追加でつけてみました。演奏してみると微妙に処理のタイミングがずれることがあるようで結構安定しません。Scratchで曲を演奏する場合に、並列処理をさせた上での縦をきちっとそろえることは可能なんでしょうかね。
そのほか、カエルの歌の重唱を作成されている先生もいらっしゃいましたし、皆さん様々に取り組まれていたようです。
図形を描画する
午前中最後の内容は「ペン」の拡張機能を利用しての図形描画についてでした。
「横に100歩動かして」「90度回して」を「4回繰り返す」ことによって正方形を書くことができますね。正三角形に関しては皆さん内角の60度回転させればよいと始めに感じるようですが(はい、私もそのように失敗しました)、正解は外角の120度回転させることが必要です。回転角の和が360度になるという気づきも得られますが、子供たちにそこまで求めるかどうかは子供たち次第なのでしょうね。
五芒星の回転角144度も前回のモノづくりの講義と同じなので私の中ではもう暗記してしまいました。
最後に回転角を半端な数値にした上で、繰り返す回数を100回など大きな数値にすることによって多少幾何学的な図形を描画できるので、皆さんそれなりに感動されていたように思います。子供たちも初めて幾何学模様を実現した時には相当目をキラキラさせるのだろうなぁと想像はできますね。
三重大学の学習管理システム「Moodle」で情報共有や課題の提出
最後に三重大学の学習管理システムとして構築されている Moodle にゲストアカウントでログインをした上で、午前中に制作したスクラッチの課題を提出させようとしたようですが、先生がゲストアカウントの権限設定をミスっていたようで、今回の講義のスレッドに入れない状態になっていました。上記は午後一で設定変更されたようで解消しました。
ランチは学食
カレーライス大盛(福神漬けなし)で345円(税込)。おしかった!
午後の講義の内容
デジタルイミグラントがデジタルネイティブに教える時代
午後の講義の内容は、児童生徒を対象としてデジタルイミグラント(デジタルデバイスが一般的になる1980年以前に生まれた世代)である先生方が子供たちにどうやって教えていくのかといった課題意識に対して、子供と同じ目線を向いて「一緒に学んでいこう」といった姿勢でプログラミングを教えすぎないことが重要なのではないかとおっしゃられておりました。
この点において、私ならウェブプログラミングについては現実社会における実務レベルで教えることができるので面白いのではないかとは考えておりますが、私の指導が通用するとすると高校生が対象になるとは思います。
プログラミング学習で使える言語やツールの変遷
現状はMIT(マサチューセッツ工科大学)が開発したScratchが利用できるわけですが、その前の世代としてLogoと呼ばれる亀のキャラクターが図形を描画するプログラミングツールがあったようです。
須曽野先生自身、2019年の3月にはMITまで実際に足を運ばれたようで、その時の写真を見せていただきました。校内に設置されたScratchやLogoのコーナーなど、MITならではの要素は満載でとても楽しそうでしたね。Scratchの開発者の方にも過去に学会でお会いされたことがあるようで、その時のお話などもお聞かせいただきました。
プログラミングの実習/今回の講義で作成した作品
座学の後には少しばかり自由に制作する時間が設けられました。私は以下の作品を制作しました。
テーマ | 猫と心 |
操作説明 | 二つの心のうち、どちらか好きな方をクリックしてみてください。
一体何が起こるかな…? |
ダウンロード | こちら |
備考 | Scratch3形式のファイルです。Scratch3に読み込ませて試してみてね! |
Scratch で作品を作っていて感じましたが、基本的にはイベント駆動のアーキテクチャ(メッセージという機能で実現)になるためイベントという概念を理解しないとゲームっぽいものやユーザーアクションを起点にしたアプリみたいなものは作れないのかなぁと思いました。導入の講義の内容ではそこまで触れていないのでもう一歩先が見えた気がしますね。
講義の感想とこれからやってみたいこと
高校における高度なICT教育の実現
本日の講義を受講して感じたことは、デジタルイミグラントの方がこれからのICT教育を考える上で本当に対応が可能なのかどうかということと、実際に企業活動におけるICTの位置付けや肌間を理解しないままツールである開発言語やプログラミングの基礎だけ学んで、それら教育が一体何につながっていくかが高い解像度で本当に見えているのかと感じる部分は大きいですね。
というのも、企業活動だけに限定されず学校などの教育活動や行政など、様々な組織におけるICT活用の課題として、現状において圧倒的な人不足に見舞われてはいますが、これらICT人材不足のよくない現状は地方に目を移すと更に加速していきます。大企業においてもITC人材不足が続いている状況なので、中小企業の中に目を移すと、そこにはほぼ確実にICT人材が存在していないという状況が多いといえるでしょう。
これらICT人材不足の流れと合わせて、2020年から始まる小学校におけるプログラミング教育の波を受けて、民間でも子供向けのプログラミングスクールを始めようといった流れが増えてきています。三重県内においても教育関連の事業者がここ数年で一気に増えました。
ただ、プログラミングを教える側も現役のITエンジニアではないのであまり高度なことを教えることはできないようです。はっきりお伝えすると小学校で教える範囲であれば、素人でもある程度勉強すれば最低限のことは指導できる状態にはなるかもしれませんが、子供の成長に伴って中学生、高校生と年齢が上がるにつれてプログラミングの内容も高度化していくわけですが、学習内容の高度化に対応できる教員の絶対的な不足が最大の課題になるのではないかと感じております。
そこで、10年選手の現役エンジニアの経験を生かしながら高校生を対象とした情報技術に関する高度な教育までの橋渡しや、現状専門学校で学ぶ専門領域の学習を高校生に提供できるようになれば地域の学生のICTスキル全体の底上げになるのではないかと感じております。これは私を含めて限られた現役エンジニアにしかできないことなので、使命感を持って対応していきたいと考えております。
ウェブデザインおよびウェブプログラミングの教室運営
また、現状学校での働き方改革の推進によって部活動が地域の民間企業に外部委託されようとしている流れを汲んで、地域の子供たちが集いウェブサイトの制作(ウェブデザイン)やウェブサービスの開発(ウェブプログラミング)が行える教室みたいなものを運営できたらこれ以上楽しいものはないと考えています。呼吸するかの如く、私が当たり前に行っていることを地域の子供たちでも当たり前に行えるようにすることがひとつの目標です。
私の考えるICT活用とプログラミングに関する教育
私自身がウェブプログラマということもあり、実際にHTML/CSSやJavaScript、PHPなどを用いたウェブサイトやウェブシステムを開発制作することが可能です。これらの技術を高校生に教えるための学習コンテンツを充実させることで、高校生でもウェブサイトの制作やウェブサービスの開発が行えるようにしていくことが一つの目標です。
目指すべきは「高校生時代から制作にこだわりを持っている人材の育成」
目指すべき未来としては、時間を確保できる学生時代にウェブデザインやウェブプログラミングを教えることによって、また同時にゴールとなる難易度の高い成果物を描けるようにしてあげることによって、学生時代のうちからこだわりを持った高度なウェブサイト制作やウェブプログラミングを行えるようにしていくことが目的です。
私はギリギリデジタルネイティブ世代ですが、私たちよりも上の世代からしてみると敷居が高いと思われるICTに関することでも、現代の子供たちはすんなり理解し、飲み込める可能性は高いのではないかと感じています。
具体的なプログラミングの教育を考える
実際に社会貢献につながるウェブサイトの制作やウェブサービス案などをブレスト(ブレーンストーミング)によってアイデア出しするところからスタートして、アイデアが固まったら、開発制作のプロジェクトマネジメント全体を統括するマネジャーのポジションの人材を決めて任せるところからスタートしていきたいところですね。マネジャーは当然ながらプロジェクトの成功に対する強い意欲を持っている必要がありますし、メンバーを率いて開発制作を牽引する役割を果たすわけです。プロジェクトマネジャーの役割も学生に担当させるわけですが、その背後からサポートするのが私たち指導者の役割だと感じています。定期的(毎日でもいいと思います)に状況を報告させることを通して、プロジェクトの進捗管理の方法などを学ばせます。
また、実際の開発制作の作業についても同様に言えることですが、プロジェクトマネジャーが作業をタスク単位に分割し、それらタスクを全参加メンバーに割り振りながら開発制作を進めていきます。
進捗管理などは無料のツールを利用すればよいと思いますが、現状の一般的企業における現場に水準を合わせるのであれば、実際に利用されているツールの利用を検討したほうが良いと思います。例えば、GitであればGitHubを、タスク管理のツールに関してはTreroなどのカンバン式の管理ツールなども面白いかもしれません。コミュニケーションの基本はSlackの無料プランを利用し、実際にシステム開発やウェブサイト制作現場に合わせた経験を積めると有意義だと思います。Google for Education が利用できるのであればGmailとGoogleカレンダーなどでスケジュール管理やコミュニケーションを行うのも一つの手法としは有効ですね。
上記のように、開発制作のプロジェクト全体を通してデジタルツールの活用やプログラミングが世の中で必要とされている根本に立ち返って、実際に社会の役に立つプロダクトを作ることが、もっとも子供たちが成長できる環境につながるのではないかと考えています。
上記に必要なのは、実際の開発制作の経験であって、プログラミングのツールの使い方や言語知識などではありません。この辺りを押さえないままにプログラミング教育を行おうとしても本末転倒な内容になってしまうことは避けられないと思いますので、その点は教育委員会などにも訴求を続けていきたいとは考えております。
最終的には、三重県の情報処理やデジタル技術の利活用については、全部私に任せてくださいと言えるようなポジションも目指していきたいと思いますので、まずはスモールスタートで教室の事業をスタートさせることが必要なのではないかと感じています。地道に一つずつ積み上げる以外に道はありません。
まとめ
本日の講義で三重大学で行われている Scratch を用いた講義は3つ目に当たりますが、さすがに毎週毎週 Scratch の講義を受けていると概ねどんなことができるのかがわかってくるものです。後は自分の子供に教えることを通してもう少し深めることをしないといけないとは思いますが、いずれは四日市で子供向けのプログラミング教室をやってもいいかなぁと思えるところまでは来ました。
ともすたの谷口さんのように本を書けるレベルにはまだまだ達してはいませんが、子供向けのプログラミング教育に関してもできる限りの範囲で少しずつ深めていきたいと考えています。
また、個人的なことですが、須曽野先生とも名刺交換できましたし、順調に三重大学教育学部の教授の方々との繋がりを少しずつ広げられてよかったと思います。三重で教育を考えている一人の人として、できることをこれからも少しずつですが深めていきたいと思います。
話は少し変わりますが、この投稿は今回の講義時間中に試験勉強の時間が与えられたのでそのまま勢いで書き上げてしまいました。試験で書く内容をあらかじめまとめておくと、試験中は書くだけなのであっという間に終わります。そしてブログを加筆修正するといった時間の有効活用はいい感じですね。ブログ学習法。おすすめです!