プログラミング教室のボランティアをしてきました(Scratch)


先日、プログラミング教室のボランティアとして、ちょっとした教師役をやってきました。
そのときの感想をまとめたいと思います。
(一応、"どの"プログラミング教室かは伏せておきます。)

## 教室概要

* 言語：Scratch
* 対象：小学校中学年くらい20人。最初は全員で講義を受け、後半はグループに分かれて実習。
* 授業形態：リモートでWebExを使って顔出しで実施。3つにパートが分かれている。
  * 第一部：全体向けの教師の操作に従ってScratchの基本的な操作を学ぶ
  * 第二部：グループごとに教師のワンポイントアドバイスを聞きつつ自由にプログラムを改造・発表する。質問対応もする。私が教師役をやったのはここ。
  * 第三部：プログラミングが身近でどのように使われているのか、所属する会社の事例を基にビデオ再生
* 教室形態：上記授業形態の裏で、教師たちのチャットをWebExの別部屋で建付け。
* 時間：全部で75分程度。30:30:15くらい
* 教師陣：全体進行の教師、グループワークのボランティアの教師数名、Scratch有識者と思われる人(各グループを見回る人)2～3人、運営専門スタッフ数名

## 筆者について

### 普段の人となり

* 休日プログラマ(pythonメイン)
  * 本業はJTCなSIerでクラウドのパラメータ変更とかメール捌きが主な業務。
  * 数年前まではサーバサイドエンジニア(Java/php/C#)でコードもそこそこ書いてお金を稼いでいた。
  * ひととおりのパソコンの操作法だったり基礎的なアルゴリズムへの理解はある程度ある……はず
  * 一方、Scratchは殆ど素人で数日前に研修を受けただけの知識しかない。
* こどもとの関わりについては素人同然
  * 10年くらい前に塾でチューターのバイトをしてはいたが、正直職員からの評判は良くはなかった。
  * 子供にはそんなになつかれない。赤ちゃんの抱っこが下手くそで、盆と正月のたびに親戚にはなじられている。

### 当日やったこと

第二部のグループワークで教師役をやりました。

* 教えたこと
  * Scratchに登場する背景・キャラクターの変更方法
  * キャラクターの動くスピードの変更方法
* 他にやったこと
  * 質問対応
  * グループ内発表会の司会進行

## 感想

### 生徒たちの呑み込みが早い

義務教育でプログラミングの授業が始まったとはいえ、主体的にこのような教室に参加する層なのでとても呑み込みが早かったです。
たまたまかもしれませんが、受け持った生徒は、みんな以下のどちらかのことをやっていました。

1. 教えたことに更にカスタマイズを加えた改造を施す(例：キャラクターの行き先を変え、ジグザグに動かす)
1. まったく教えていない高度なプログラムを組む（例：シューティングゲームを作成する）

※自分が受け持った生徒は1桁人なので総意とするには心許ない数値ではあります。

### 教師役はちょっと不安になるかもしれない

生徒たちの呑み込みの早さに比べて、大人側のスキルはそこまで高くはありません。

グラフィカルなプログラミングが必要な場面は大人たちの世界では中々ありません。職業プログラマに声をかけて立てたボランティアの教師の中に、Scratchの有識者が居る可能性は低いです。正直に言えば、シューティングゲームを作ることが出来る生徒よりスキルを持ったグループワークの教師は、おそらく今回居なかったと思います。

#### あまり分かってない教師むけ対策

運営側も恐らくそれは分かっていたので、いくつか対策を取っていたように見えました。

* 第一部で初歩的なプログラミングを披露し、グループワーク中は「**教師のアドバイスを使って**、**このプログラム**をカスタマイズしてね」と呼びかけた
  * 自由度を高めると質問対応における教師役の負担増になるため、少し制限を掛けた状態でグループワークを進めた方が良い、とアドバイスされていました。
* Scratch有識者を一か所に留まらせず、色々グループを回らせていた。

### 生徒と円滑にコミュニケーションできるとは限らない

生徒たちの呑み込みの早さが目を見張るものであることは前述したとおりですが、それをスムーズに教師役に伝えることができるとは限りません。生徒とうまくコミュニケーションが取れない回もありました。起きた事象としては「ミュートを解除できない」「ビデオを上手く映せない」「話しかけてみても何も返事をしてくれない」など……。考えられる原因としては以下の二点が挙げられると思います。

* ビデオ通話をひとりで出来る環境ではない
* 生徒が喋りたいと思っていない

以下のセクションで、それぞれの要因について考察してみます。

#### ビデオ通話をひとりで出来る環境ではない

通話に使っているツールによっては、小学生にとって操作が難しいことがあります。
今回使用したツールはWebExでしたが、以下の点で、分かりやすさという面では優れているとは言えないように感じました。子供向けに作られたツールでは無いためそれが悪いことであるとは言いませんが、初見で手こずった保護者も居たため、操作性が良いとは言えないかも……。

* 文字やひとつひとつのボタンが小さい
* 直感的な操作ができない(一度ボタンをクリックしてからメニューが出て操作を選択するなど)

今回の教室は、一応「保護者同伴で」と指示はあったものの、カメラに写っている限りでは、お子さん単独で参加されているケースが多いように見受けられました。お子さんが設定を誤って変更した場合、戻すのは大変そうです。

#### 生徒が喋りたいと思っていない

そもそも小学生の中には恥ずかしがり屋の子も数多くいます。教室で絶対に喋らず、声を聞いたことが無かった同級生、居ませんでしたか？筆者のクラスには居ました。
教師役とは当然初対面。信頼関係もない大人とはすんなり対応できないと思って接して丁度良いかもしれません。

#### 教師が取れそうな対策について

メモ書き程度ですが、喋りたがらない生徒とコミュニケーションを取る手段を並べてみます。ただしこれは、ツールを上手く使えない生徒に適用するのは難しいかもしれません。

* 口頭のコミュニケーションに頼らず、コミュニケーションの種類を増やす
  * チャット(効果：低)
  * ビデオに向かってジェスチャー(効果：中。カメラが付いている生徒からは反応を頂きました)
  * 絵文字の表示(効果：大、声を出せなくても何度も絵文字を表示させることは出来た生徒が複数いました)
* コミュニケーションの際は、極力「Yes」「No」で答えられる質問を投げかける

#### ちなみに発表会はどうしたのか

諸々の事情でコミュニケーションが上手く取れない場合、生徒による発表も上手くいかない可能性が非常に高いです。

その場合は、教師役が共有してもらったプログラムの中身を見て「プログラムの概要」「良かった点」を生徒役に伝えるようにしました。
ただし、コミュニケーションが取れなかったので子供たちからのフィードバックは得られませんでした……

## 今後に活用できそうなこと

せっかくの機会だったので少しだけ考えてみました。

* コミュニケーションを取りたいけど取れなかった場合、色んな手段を試してみる
  * 例えば、先方から中々返事をもらえない場合、メールだけではなくTeamsやWebex辺りでもコンタクトを取ってみる。
  * 最近は会社によっては、社内SNSや仮想オフィスを導入しているところもあるようですね。
* 質問の際は、なるべく答えやすい形式で回答頂けるように質問する。
  * 「Yes/No」や選択肢で答えられるように整える。
  * 自由記入で回答をお願いすると、先方レスポンスが遅くなったり漠然とした回答になってしまう印象があります。

## 最後に

正直なところ、子供との付き合いは苦手なところはあります。
ですが、対面で実際の子供と会うわけではないという状況だけでも、私にとって心理的な不安は軽減されました。
(目の前で危ないことをするかもしれないことを考えなくても良いことや、教える以外の面倒を見なくても良いのがとてもありがたかったです)

こういう活動に興味はあるけど、未知数な存在である子供と接することに不安のある方も、居ると思います。
リモートだったら敷居は少し低くなるかと思いますので、ぜひやってみてください。