見出し画像

子ども向けプログラミングワークショップでのファシリテーション

ファシリテーター Advent Calendar 2021の17日目の投稿です。日頃考えたり感じていることをまとめてみたいと思います。私のことについてはこちらの記事をご覧ください。

プログラミングワークショップとは

数年前から子ども向けを謳ったプログラミングワークショップや講座、教室などが増加の一途を辿っています。GMOの運営する業界メディアコエテコによると主に教室事業者を対象とした集計ではありますが、2021年も堅調に成長している様子が窺えます。

子どもがどうやってプログラミングを経験するのか

こうして教室イベント学校でのプログラミング必修化などの状況下でプログラミングに触れる子どもたちは爆発的に増えているのは事実と言えるでしょう。そうした子どもたちがどのようにプログラミングを体験していくのでしょうか。

習い事の教室や、学校の授業では、テキストや講師のスクリーンなどの参考資料を与えられ、その通りに組み立てていくといった操作を軸に、ゲームロボットなどを完成させるという活動が中心となっていることが多いようです。

対照的な環境としては、学習者である子どもが自分の発想プログラムによって実現するといった体験が挙げられます。
家族に得意な方がいるケースや、部活サークル友達同士など、または独学でも書籍動画Webサイトなどを参照しながら自らの興味体験していく方法です。

サークル的活動の一つと考えられますが、参加者本人がやりたいことを持ち寄ってメンターと呼ばれる経験者サポートするCoderDojoという活動も全国的広がっています。(Dojoにも様々な運営スタイルがあるようですが)

ワークショップと呼ばれる活動の特徴は

こうした様々な取り組みかたの中で、プログラミングワークショップとはどういった体験をするのでしょうか。子ども向けイベントなどでワークショップというと、手順通りであれ何か工作をしたり体験すればワークショップと呼ばれるような雰囲気もありますが、ここではいくつかの条件に合う活動をワークショップと呼びたいと思います。

ワークショップでは何かテーマが与えられます
新しいツールや環境そのものであったり、そうした環境で〇〇をしようといった具体的な内容の場合もあります。
例えば「Scratchワークショップ」や「Scratchで複利計算をしてみよう」といった具合です。

ワークショップではオープンエンドを目指します
手本通りの完成を目指すのではなく、一通りの仕組みや原理やテーマの共有をしたあと、参加者に裁量が与えられる時間があります。
その結果、参加者の数だけ作品が出来上がるでしょう。各自の興味に沿って体験できるのでオープンエンドと呼んでいます。

ワークショップでは経験を共有します
体験時間の終盤にはワークショップで各自経験したことなどを共有振り返る時間を設けます。中間発表を設けて後半の工夫を引き出すといったこともできますね。
これによって一人の体験が参加者全員にシェアされ、一人だけの取り組みでは得られない幅広い結果を得られます。

最低限こうした条件が揃えばワークショップと呼べるのではないでしょうか。

ファシリテーターの心構え

こうしたプログラミングワークショップを実施するために、ファシリテーターはどのような心構えが必要でしょうか。

参加者と対話的に進める

ワークショップは参加者個人の体験を重視し、個人の興味に沿った試行錯誤で深い学びにつながる機会を生み出します。ファシリテーターが一方的に教示する場ではありません。

対話を促進するために、参加者同士の心理的な障壁を取り除くような、アイスブレーキングを取り入れるのも良いでしょう。

対話的な進め方は、なぜこのコマンドを使うのか、この分岐は何を意図したものなのかといった考え方を伝えることができ、完成したプログラムを意味の理解の進まないまま組み立てていく単純な作業から解放してくれます。

また、プログラミングワークショップの特徴として、場での人同士の対話のほか、人とコンピュータの対話が発生していることにも注意しましょう。
組み立てのステップを分解して伝えることによって、例えば、変数の値が期待通りの値になったかなど自分自身でも確認しながら進めることができます。

正解を追わない

ファシリテーターは準備した進行表や模擬的なプログラムを持ってワークショップに挑むことになりますが、想定した進行や自身の正解に固執することはワークショップでは求められていません。

例えば「この動きのタイミングを変化させるには?」とプログラムの組み立てやパラメーターについて参加者に問いかけ、その回答が想定していた組み合わせや値ではないといったことはよくあります。

その場合も慌てて訂正することなく、その意見の通りに組み立てたプログラムを実行してみせればいいでしょう。その結果が意図した通りであることもありますし、そうならないという場合もありますが、どちらの場合もプログラムの表現は一通りではないことや、ちょっとした違いで結果が大きく変わることなどを目の前で示してくれるのです。

仮にファシリテーター自身の準備した正解があったとしても、最終的にはプログラムを実行するコンピュータの結果を見て正解なのかどうなのか判断することができるのがプログラミングワークショップの特徴です。

ちょっと間違えて見せることも

スクリーンなどを使って、手順を示すことはよくあると思います。その際によくある失敗をしてみせることもあります。学習者は間違えないようにと慎重に手順をなぞっていきますので、何の失敗もなしに進めることも可能です。

しかし参加者がこの場で成功することより、1人になったときに自分で対処できる力をつけてもらうことも、ワークショップの役割だと言えます。そこであえてミスを含むプログラムを画面上に示してみたり、事前の設定が抜けている状態で実行するなど、起こりがちなトラブルを進行の中で体験する事も大切にしたいですね。

参加者のパソコンを奪わない

操作がおぼつかないなど、パソコンなどの機器への慣れには個人差も大きいでしょう。進行上遅れがちな参加者はつい手助けしたくなりますが、その場合もこの場の成功より、帰ったあと1人でできるようになることを重視するのは大切なことです。

パソコン上でプログラムを組み立て実行することは、その人とパソコンとの対話とも言えます。そこに割って入り「はい上手く動きました」と手渡すのは一見親切に見えて、参加者の機会を大きく奪う残念な行為です。

場合によってサポート役のメンターやサブのファシリテーターが対応することもあるかと思いますが、その場合もスタッフ間で共通認識を持って対応しましょう。中には協力的な参加者もいるかもしれません。そこで代わりに操作してしまうような場面を見かけたら、感謝は伝えつつそっとそれを止めましょう。せめて隣の人に見せてもらって真似してやってみるくらいになると良いですね。

また見落としがちなケースとして、参加者の保護者が手を貸してパソコンを奪ってしまうこともよくあります。事前に案内をする、会場の設計として予め席を離しておくことは有効ですし、あまりにも止められない場合「もう一台お貸ししましょうか」と伝えるのもよいかと思います。

ツールや環境の理解は必須か?

よく、意思決定や会議の進行役としてのファシリテーターはその内容に精通していたり、意見を持っている必要はないといったことが言われることもありますが、プログラミングワークショップの場合はどうでしょうか。

これは難しいところで、進行に支障ない程度には使いこなせていることが望ましいとも言えます。ただしこれが逆効果なこともあり、知り過ぎていると初学者がわからないところがわからないといった場面も出てきます。

完全に頼り切るのは問題がありますが、チームで実施できる場合詳細に理解している人サポート的に加えたり参加者経験者を含む場合は積極的にそうした人に役割を与えるのもいいかもしれません。特に子どもを集める場合、経験差が生じやすい状況になってきているため、経験者に「こういったときどうするんだっけ?」と頼る場面を設けることで、初学者に合わせた進行で経験者がもつ不満を解消することもできます。

見本は必要か?

ワークショップの形式で実施する場合、どのようなものが完成するか見本を用意することがあります。この準備も神経を使うところで、例えばあまり作り込んだ見本を見せてしまうとその表現に引っ張られてしまうということがあります。

かといって、動作する見本もなくよくわからないものに向かって進めていくことも参加者のモチベーションを維持することはむずかくなりますので、シンプルな余白のある作例を用意するのが一つの手ではあります。あくまでも基本動作のみを無難な表現や素材でまとめることで、自分だったらこうしようと参加者に思いを広げてもらいましょう。

または逆にたくさんの例を見せることで、参加者に思い思いの方向に進んでもらうこともできるでしょう。何度か開催したことのあるテーマの場合「今までこんな作品が出来上がったのですが、」と多様な例を見せることは効果的かもしれませんね。


さて、ほかにも挙げることはできそうですが、ワークショップ実施に際して心がけていることや、よく課題に上がることをまとめてみました。お読みいただいた中で興味をお持ちいただける箇所や、皆さん自身のご経験談などありましたか?(よろしければコメントなどで教えてください)

[おまけ]プログラミング教室ではどうしているの?

私が関わるケースではワークショップのスタイルをとることが多いですが、現在子ども向けのプログラミング教室TENTOで講師として働いています。その場合ワークショップとは呼ばず授業と呼んでいますがその時間をどの様にしているか、少し紹介してみます。

以前、このようなツイートをしたのですが、授業時間の半分近く各自が自分で試行錯誤する時間にするように心がけています。また授業の終わりに今日どのようなことをしたのか共有する時間もとっており、オンラインの場合も担当講師のいる小グループで共有したのちにその回の受講生全員での共有タイムを設けています。

TENTOでは当初より寺子屋方式を掲げ教室運営をしていたため、ファシリテート型の授業運営が割とうまくいっています。本人の興味によって学んでいる状態をつくることは講師の間でも方向性の一つとして意識合わせをしていますので、多くの講師がそのように対応しているのも特徴です。

ほか教室などに向けたカリキュラム、テキストの作成やご相談をご依頼いただくこともあるのですが、それだけをきっちりなぞることを重視されていることが多く、私のこうした考えまでなかなかご理解いただけず力不足を感じることもあります。半面、講師やスタッフ向けの講習をご依頼いただく場合、現場に立つ方々に方法論的に、マインドセット的にうまくお持ち帰りいただけることも実感しています。

おわりに

今年ももうすぐ終わるといったタイミングで日頃の活動を振り返る機会となりました。主に子ども向けのプログラミングワークショップでの経験に基づき考えていることになりますが、個人的には多くのワークショップに応用できると感じています。

私自身も大人を対象にした場合、内容が造形系のワークショップなど、さらに身近なところだと自分の子どもやその友達たちと触れ合う機会にも応用できています。こうした経験や考え方がどなたかのお役に立てば幸いです。

最後に一冊の本を紹介します。先に述べたような具体的な方策が書かれているわけではありませんが、学習者の個人的興味を引き出しそのことを自ら学ぶことなどを創造的学び(Creative Learning)と呼び、そうした学習の場としてScratchというプログラミング環境を提供するMITメディアラボの教授でもあるミッチェル・レズニック教授の書いた本です。

彼の率いる研究グループ、ライフロング・キンダーガーテン(生涯幼稚園)の取り組みや彼らの行うワークショップなどにインスパイアされ、現在の私の活動に大きな影響を与えました。

長くなりましたが最後までお読みいただきありがとうございます。では良いお年を!

(もし私の活動にご興味をお持ちいただけましたら、今年の振り返りをnoteに書きましたのでご覧ください。)

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