シリーズ・プログラミング学習への挑戦2019 – ①Hello, Pepper.

2019年度、教員に転職して1年目の私は、校内の校務分掌で「情報教育」の担当となり、市が推進する施策でもある、Softbank Robotics社のPepperを用いたプログラミング学習の取り組みに挑戦しました。中学1年生・42人を対象とした、全16時間の取り組みを通じて考えてきたこと・やってきたことを、全4回にわたって書いていきたいと思います。

第1回の今回は、取り組みの全体像と、その背景についてお話ししたいと思います。

●シリーズ・プログラミング学習への挑戦2019 – ①Hello, Pepper.
○シリーズ・プログラミング学習への挑戦2019 – ②コンセプトとディレクション
○シリーズ・プログラミング学習への挑戦2019 – ③外部人材と「うまいこと」やる
○シリーズ・プログラミング学習への挑戦2019 – ④誰が為のプログラミング


情報教育担当としての自己紹介

まずは、情報教育担当者という側面での自己紹介をお伝えします。長いので、読み飛ばしても構いませんが、結論から言うと「そりゃこんだけの経験をしていればできるのは当然でしょ」となるよね、ということです。

私は、NPO法人Teach For Japan(以下、TFJ)のフェローシッププログラムを通じて、福岡県飯塚市のとある中学校で英語の教員をしています。採用区分は講師、つまり臨任採用(一般企業で言うところの契約社員)なのですが、TFJのプログラムの関係で2年間は飯塚市の臨任の講師として勤務します。よく勘違いされるのですが、TFJが雇用するのではなく、市教委によって雇用されているので、立場は公務員です。

このTFJのプログラムに参加する前は、株式会社マクロミルというインターネットリサーチ会社に勤務していました。6年間のキャリアでは、消費者購買データベース「QPR」というプロダクトのデータ分析担当、そして人事の採用・研修・制度設計の担当をしていました。大学院修了後に新卒で入社しましたが、入社当時から教員になるキャリアは描いており、出身校である慶應SFC在学中には教職課程で社会科と英語科の教員免許を取得しています。

さて、私が情報担当になった、その決定の理由について詳しく管理職からは聞いていませんが、過去の経歴から「パソコンが得意な人」になったのはいうまでもありません。たとえば、

  • 中2でiBookを手にして以降、レンタルサーバーでこのブログを運営し、Webサーバーでの独自ドメインの運用や、スキンの変更などHTML/CSS/PHP周りをいじってきた
  • 大学時代にドイツ語のICT教材開発に携わり、研究室保有のWebサーバー(Linux)の保守・運用をしてきた
  • 就職活動では一時期Webプログラマを目指し、選考を兼ねたインターンでとある企業の業務ツール開発をLAMP環境で経験した
  • マクロミルでの最初の部署ではエクセルや大量データ集計ソフトを用いたデータ処理・集計を担当し、その経験を生かして人事時代にはエクセル研修の講師を担当した
  • 最初の部署で覚えたVBAを用いて、人事時代に360度サーベイのレポート作成マクロ、採用管理システムが吐き出すデータの変換マクロなど、多数の業務ツールを開発した
  • 大学時代から企業勤務時代にかけて、たくさんのパワーポイントを作成し、操作方法やデザインに関する研修を担当した
  • 内製実施だった管理職向け360度サーベイのツールを外製化するにあたってシステム開発会社との折衝にあたった

という経験をしています。つまり、開発・保守・発注・使用・指導の、およそICTにかかわるすべてのロールに携わったことがある、ということです。特に、開発サイドを経験したことは、今回の取り組み全体を進める上でも重要だったポイントだと思います。他方、この前提がないままに今回の記事シリーズを読んでしまうと、ミスリードを生む部分もあるのではないか、と思います。


勤務する学校と、PG教育の位置付け

さて、私は現在福岡県飯塚市のとある中学校に勤務しています。私の勤務校は、施設一体型小中一貫校です。小学1年生から中学校3年生までが一堂に学んでいるので、特に中学生たちが優しさに溢れた子たちである印象を受けます。子どもの数自体は少ないと思います。私が担当する中一の学年(以下、7年生)はトータルで42名。定数をぎりぎり超えているので2クラス展開になります。学校自体は、学校運営協議会も開催されるので、すなわちコミュニティスクールであり、公民館や近くの老人ホームとの連携も頻繁に行われています。まさしく「地域」が学びの中核をなすキーワードであり、それを意識する場面は少なくありません。

プログラミング教育は、市の施策であるPepperを用いたプログラミング学習の取り組みを過去2年行なっており、7年生の「総合的な学習の時間」の柱の1つとして取り組みを行っています。今年は、技術科の方でもScratchを用いたプログラミング技術の授業を行ってもらっていますが、「Pepperプログラミングは総合学習で全員やる」というのを学校のブレない方針に据えています。市内の他校では、クラブ活動や部活動に位置付けて実施することにするところもあるなか、全員がPepperプログラミング学習を行う方針はおそらく珍しく、それは学年の人数が少人数であることも実現可能である理由かもしれません。

ちなみにですが、Pepperプログラミングは市レベルの教育施策なので、私が情報教育担当者として他の選択肢と比較検討の上でPepperを採用したのではなく、もうPepperの採用が決まった状態からのスタートでした。私自身はここに対してさほどの違和感なく仕事にとりかかっています。


そもそもPepperプログラミングってなんだよ

ここまで話をしてくる中で詳しく説明してこなかったPepperプログラミングとはなんぞや、というのをお伝えします。

Softbank Robotics社が開発・販売をしているコミュニケーションロボットであるPepperを用いたプログラミング学習を実施するための、開発環境とPepper本体を提供・貸与してもらうPepper社会貢献プログラム スクールチャレンジ」というプログラムがあります。福岡県飯塚市は自治体としてこのプログラムに2017年から参加しており、市内小中学校すべてにPepperとその周辺機器を無料で貸し出してもらっているほか、開発環境であるChoregrapheないしRobo Blocksの利用権を提供してもらっています。現在は有償貸与となる「スクールチャレンジ2」の申し込みを受け付けています。

Pepperはご存知の通り、ヒューマンライクな外見をするロボットで、ちょっとした距離の移動、腕・手・腰などの動作、タッチパネルを用いたインタラクション、そしてなにより、会話エンジンを用いたインタラクションが可能です。この特徴を生かすようなアプリを開発することが、Pepperプログラミングの本筋です。ただそのほかにも、いくつかの学習用アプリが提供されているので、ただPepperを学校に置いておくだけでも意義はあると思います。

この「スクールチャレンジ」のポイントは、プログラミング教育実施のための指導書があることだと思います。「Pepperを動かす」ということに特化した各種機能を作動させるためのプログラミングを行うセクションのほか、コーディング技術/知識として重要な繰り返し・条件分岐・変数・配列などを学習するセクション、そしてプログラミング教育と関連づけられる各教科・各指導領域での授業展開のセクションなど、学習指導案の形で提供されているので、それをそのまま実施しても授業が一定できるようになっています。本市ではこれに加え、教員向けの研修会も実施してもらえたので、コーディング方法を知らないのにいきなり授業をする、ということは起きないような工夫をしてもらっています。

プログラミングの開発環境は2種類あり、どちらもCUIではないところがポイントです。Choregrapheというソフトウェアは、ロボットの各種機能やプログラミングの各要素がブロック型になっており、それを線でつなぐことでロジックが展開していくというビジュアル型の開発環境です。が、私はそちらを用いませんでした。もう一つの開発環境であるRobo Blocksは、Scratchをベースにした開発環境で、ブロックを重ねたり間に挟んだりしながら日本語でプログラミングが可能になったものです。私はこちらを採用しました。Webブラウザベースで動き、ロボット本体にアプリを送らなくてもバーチャルロボットで動きを確認できるため、環境に依存せずに開発できる点はとてもよかったと思います。


全国大会の存在と、総合的な学習の時間での実施

ところでプログラミング教育については、文科省や経産省を中心に民間を巻き込んで大いに議論がされており、指導要領上もきちんと位置付けられているにも関わらず、まったくその辺の前情報を知ることなく授業づくりに入りました。正直、いまだに全体的な議論はよくわかっていません。ただ一つ認識しているのは、プログラミング教育は特定教科に位置付けられるのではなく、教科横断的に行われるものだ、ということです。

Pepperプログラミングにおいては、「スクールチャレンジ」の成果発表会がSoftbank主催で行われており、全国で「スクールチャレンジ」に取り組む学校・自治体のなかで優秀な成果を出した学校が招待されて表彰される、という流れができています。さながら、全国大会です。本市では市内大会を開催して、小学校部門・中学校部門・フリー部門(クラブ/部活動)の優勝チームを決し、そのチームを市代表として、全国大会の出場をかけた映像審査へのエントリーを行います。その全国大会および市内大会のテーマは、小学校部門が「身の回りに役立つPepper」、中学校部門が「社会に役立つPepper」となっています。スクールチャレンジのHPでも、SDGsとからめた課題解決型探求学習のツールとしてPepperプログラミングを位置付けた説明がなされています。結果的に、ロボットアプリ開発は総合的な学習の時間で行われることが主眼に置かれている印象を受けます。

本校でのプログラミング教育が、総合学習の時間で行われるのもここに所以があります。すなわち、全国大会につながる一連の流れに位置付けながら、「社会に役立つPepper」をテーマにしたアプリ開発を全員が経験することを担保しようとすると、技術の授業に位置付けるよりも総合に位置付ける方が筋は通るわけです。事実、2年前・つまり初年度に担当をした先輩教師からは「結局は探求学習ですよ」というアドバイスをいただき、プログラミング技術そのものよりも、探求的な学習を進めることと、プログラミングに関わったという経験を得ることの方に主眼が置かれていると解釈しました。事実管理職からも、「全員がやることに意味がある。そこまで頑張らなくていいから」と言われており、技術面に対する気負いなく進められる状況にありました。

とはいいつつ、標準時数では年間35時間しかない、中一の総合的な学習の時間。実施できる時間は非常に限られており、昨年度は約20時間確保されていたのですが、昨年度担当者がまとめた時数では13時間程度に。とても時間が割けない状態だったこともあり、ほんとにやりきれるのかよ、と思いましたが、そこは発想を転換し、「限られた時間でできるところまでのことを行い、アウトプットを出す」という方針で計画をしました。全国大会につながる一連の流れに位置づけるため、4〜5人で1チームを構成し、学年で10チームが一斉に開発を行って、デモンストレーションを含むプレゼンテーションを行って校内代表を決する、という流れを計画しました。計画した、というよりかは、一昨年・昨年の流れを踏襲したというほうが正しいですが。


実施計画を公開します

第1回の記事でここまで長く書く気は無かったのですが、気づけばすでに相当な情報量になりました。ここまでの内容をまとめると、

市内で導入されているPepperを用いた探求学習型のプログラミング学習の取り組みを、中学1年生全員が関与する形で総合的な学習な時間で行うべく、Teach For Japanからやってきた、過去の人生経験でICTの開発に関与したことのある人間が担当者となった

というところです。この前提があって、ようやく第2回〜第4回の記事の主張が、実感を持ってご理解いただけると思います。

では記事の最後に、今年度の取り組みの実施計画の内容を公開したいと思います。本当はこれ自体を年度当初の4月に立てて進めるべきだったのですが、計画を立てることに重い腰が上がらず、結局6月末にようやく計画をあげて動いたので、1学期の大半を無駄にしてしまったことも事実です。これは大きな反省です。そして、結果的には以下の計画通りにいかない部分があり、グズグズになったところもあったのですが、なんとか8〜10月までの取り組みをやりきることができました。

  1. 目的
    • 日常の生活を基点に社会の課題を発見し、その解決に向けた考察と実践に取り組む経験を持つ
    • 計画・実装・失敗・修正のプロセスを繰り返すことが、よりのぞましい成果につながることを学ぶ
    • 問題発見、企画立案、実装結果、考察、という一連の流れを他者に分かりやすく説明できるようになる
    • Pepperの作動に必要となる、プログラム・シナリオ・画面画像等を通じて、自己表現の機会を得る
  2. 実施時数 合計:16時間
    • Phase1: 社会課題との出会い、問題の発見 :3時間(夏休み中)
    • Phase2: 解決策の立案、動きのデザイン :2時間(9月前半)
    • Phase3: Pepperの理解、実装・失敗・修正 :6時間(9月~10月前半)
    • Phase4: まとめる、つたえる、ふりかえる :5時間(10月)
  3. 学習計画(各時)
    • Phase1: 社会課題との出会い、問題の発見
      • <ゴール>自分たちに身近な「困りごと」が、実は社会の課題だとわかる。そのうえで、取り組む課題を発見し、グループができる。
      • 第01時:プログラミング学習の意義や概要をつかむ / 社会課題について考える
      • 第02時:地域の課題、自分の身の回りの課題について考え、グループごとにテーマを決める
      • 第03時:理想とするプログラムのシナリオを考え、デモンストレーションする
    • Phase2: 解決策の立案、動きのデザイン
      • <ゴール>Pepperがインタラクティブ性を持つデバイスであることを理解している。取り組む課題の解決のためにPepperをどう動かすかをイメージしている。
      • 第04時:Pepperのデバイス的特徴を知る / グループ内の役割分担ができている
      • 第05時:デバイス的特徴に合わせながら、プログラムの具体的な仕様を検討する
    • Phase3: Pepperの理解、実装・失敗・修正
      • <ゴール>Pepperの特性を理解したうえで、自分たちの計画案を修正している。Pepperの特性を生かすためのプログラミング方法を学び、プログラムを作成・完成する。
      • 第06時:プログラム学習+制作作業① 動かす・しゃべらせる
      • 第07時:プログラム学習+制作作業② タッチセンサーを使う
      • 第08時:プログラム学習+制作作業③ 音声認識を使う
      • 第09時:プログラム学習+制作作業④ ディスプレイを使う
      • 第10時:プログラム制作作業(完成に向けて)
      • 第11時:プログラム制作作業(ロボットでの動作確認)
    • Phase4: まとめる、つたえる、ふりかえる
      • <ゴール>自分たちが取り組んだ内容についてパワーポイントのプレゼンテーションをまとめている。Pepperプログラミングで学んだことから課題発見と解決のプロセスを振り返れている。
      • 第12時:学習した内容をプレゼンテーションにまとめる
      • 第13時:学習した内容をプレゼンテーションにまとめ、発表の練習をする
      • 第14時:プレゼンテーションを学年全体に対して行う
      • 第15時:プレゼンテーションを学年全体に対して行う
      • 第16時:学習内容全体を振り返る / 課題発見と解決のプロセスについて学ぶ

繰り返しますが、この実施計画は、結局その通りにいかない部分がありました。その点は次回以降の記事で書こうと思います。また一つ補足ですが、Phase1については、夏の出校日をあてることで実施したので8月となっています。


さて、今回の記事で前提情報をお伝えしましたが、次回はプログラミング教育を通じて自分が思い至った主張その1「実は必要なのはディレクターなのかもしれない」ということを、起こったことを踏まえながらお伝えしようと思います。

Comments

comments