探究型プログラミング学習(探プロ)

プログラミングの考え方を学んで、未来を創る力を手に入れる

プログラミングの考え方を学んで未来を創る力を手に入れる

【ワークショップレポート】チャイルドハッカソン#01 DAY2

今回は3連休中ずっと金沢に滞在していたのですが、学会が重なったらしく

金沢駅は初日から大混雑でした。

新幹線も満席でしたしね。

 

そのおかげで宿がとれず…

金沢工業大学から車で20分ほどの場所にある、白山の麓の旅館に滞在していました。

こんな感じの。

f:id:dig_learning:20170321223758j:image

 

近くには、白山比咩神社という

日本三大名山(富士山・立山・白山)のひとつの白山をご神体とする神社があって

しかも開山1300年という記念年でもあったのですが

観光の時間は全くとれず…

 

結局、3日間ずっと大学の近辺をウロウロしてました(笑)

代わりに、大学生気分で金沢グルメを堪能できましたが!

 

 

ちなみに、大学生と社会人の本気のハッカソンの方といえばこんな感じ。

f:id:dig_learning:20170320202427j:image

 

ハッカソンて、もっとエネルギッシュに進めるものなのかと思っていたのですが

びっくりするくらいに落ち着いていて、リラックスしている様子でした。

 

こんなものですか?

と何人かの方に尋ねたところ、相当のんびりしてます、ヤバイです

と返ってきました(笑)

 

そんな中、チャイルドハッカソンの隣に陣取っていた社会人チームは、HoloLensを使ったアイデアを実現しようと頑張っていたのですが

環境構築に苦戦して結局、途中でチーム解散となってしまいました(涙)

 

 

お隣チームは残念でしたが、そのおかげで?

優秀なエンジニアが一人、なんと我らがチャイルドハッカソンのスタッフとして参画してくれることになり

私としては思わぬ棚ぼたでラッキーでしたが♪

 

他にも、自分の作業の合間の息抜きに、チャイルドハッカソンを覗きに来たり

手伝ってくれる人たちもたくさんいて

大人と子どもが入り乱れての素敵な空間となりました。

こういったアレンジはとても良いですね。

 

 

さて、2日目です。

この日は朝から、5年生の女の子が参加してくれました。

 

会話した瞬間、とても聡明であることが分かったので

こちらとしては、藁にもすがる思いで彼女に相談しましたよ(笑)

 

オリパラをテーマに、何かしら創り上げたいと考えていることを伝えたところ

何やら工作を始めた彼女。

 

ワクワクしながら見守っていると、出来上がったのはなんと

文化財指定庭園 特別名勝 兼六園にある徽軫灯籠(ことじとうろう)!

 

これですね。

http://kanazawa-kanko-mapping.com/wp-content/themes/kanazawa-ver01/img/kanazawa-kenrokuen-img03.jpg

 

マイペースすぎる・・・

よほど気に入ったのか、初めは段ボールで、次はレゴブロックで徽軫灯籠を作り続ける彼女・・・

 

ちなみに何度かワークショップをやって気づいたのですが、高学年の女の子というのは

あまりlittleBitsに関心をもたないようです。

触っても1分くらい。すぐに飽きてしまう(>_<)

 

そして、大人がいろいろ誘導しようとしても絶対に乗ってくれない(>_<)

個人的には一番、扱いが難しいと思っているのですが他のワークショップではどうなのでしょう?

 

そんなわけで、苦戦すること2時間。

 

突破口は、彼女との何気ない会話の中にありました。

 

私が

「金沢の観光地といえば?」

と聞くと

兼六園金沢城21世紀美術館、と次々に出てきます。

 

ところが

「子どもでも楽しめるの?」

と聞くと

「別に楽しくない。それより、×××へ行ってみて。可愛いものがいっぱいあって楽しいから」

と、女の子が好みそうな店の集まったショッピングセンターを教えてくれました。

 

 

ん?

金沢の子は、金沢の観光地を知っているのに、楽しい場所だとは思っていないの?

 

そう思って、あらためて金沢の観光地を調べてみると

大人にとっては古都の魅力満載の素晴らしい街なのですが

子どもの視点から見ると、イマイチ楽しめる要素がないことに気づきました。

 

初日に金沢駅へ降り立ったとき、観光客はたくさんいたけれど

そういえば、子どもの姿はほとんど見かけませんでしたし。

 

もしかして、金沢がアピールしているのは大人の観光客なのであって

子どもは蚊帳の外になっているのでは?

 

観光に連れ回される子どもたちは、大人向けの街に居場所がないと感じているのでは?

 

初日にスポーツ庁の課長さんの発言を聞いて抱いた私の違和感は、これだったのですね。

 

 

だとしたら、今回のターゲットは家族連れ観光客の子どもに絞ってはどうだろう?

そして、子どもにとっての面白さは子どもこそが分かっているはずだから

金沢の子どもたちが、観光に来た子どもたちをもてなす、というのはどうだろう?

 

 

そんな風に考えて、コンセプトがぼんやり見えてきました。

名付けて

子どもによる、子どものための、金沢ガイドツアー

f:id:dig_learning:20170321231317j:image

 

 

我ながら良いアイデアだと思い、彼女に相談してみたところ

いいよ

とつれない返事(苦笑)

 

でもそう言いながらも、即席でレゴブロックを使って兼六園を創ってくれました。

ここにももちろん、徽軫灯籠(笑)

 

結局、最後までlittleBitsを使ってくれなかったので…

仕方なく私がadd-onしましたが。

 

名付けて

夜の兼六園で悶えるアヒル

 

この作品を見ながら

「珍しい動物が観察できるというコンセプトの兼六園ツアーはどうかな?」

と振ってみたところ

いいんじゃない

とクールに賛成してくれました(笑)

 

 

 

ちなみに、子ども目線で兼六園を楽しむアイデアとしては他にも

VRを使って庭を舞台にしたゲームを楽しむ

というのがありました。

 

大人向けの観光地には、須く適用できるアイデアだと思います。

既にあるのかな。

 

 

さて、コンセプトの原案はできました。

ここまでが、探プロの学習フレームワークでいうところの「観察と発見」です。

f:id:dig_learning:20170301164031p:plain

 

ちなみに、探プロは、プログラミングの考え方を学ぶための手法ですから

単なる工作では終わりません。

 

このコンセプトをベースとして、プログラミング学習の要素、オリンピックの要素を加えながら実現方法を考えます。

この辺の解説はまたのちほど。

 f:id:dig_learning:20170322005859j:image

 

旅館に戻ってから一人であれこれと考えていたのですが

こういうときはやはり、ディスカッション相手がほしいですね。

もちろん、相手が子どもであればベストなのですが。

 

学校や長時間のワークショップであれば

イデア出しを子どもたちと一緒にできるはずなので

いつかチャンスがあれば、やってみたいと思います。

 

 

今回は子どもの参加が読めない中だったので

ある程度こちらで設計しましたが

その分、子どもたちには「実現する」のところに注力してもらうことにしました。

 

たとえ子どもたちの作品自体は工作にすぎなかったとしても

ちゃんとプログラミング学習の土台に乗せてあげれば

ハッカソンの作品として恥ずかしくないものになるはず

と思っています。

 

 

この辺は、まさに子どもと大人の協働作業ですね。

バランスをとるのは本当に難しいし

学習の価値を出すことはもっと難しい

けれども、課題もたくさん見えたので、次回へのインプットにして、この形式もブラッシュアップしていこうと思います。

 

 

さて、あとは最終日に子どもが参加してくれることを祈るばかり…

【ワークショップレポート】チャイルドハッカソン#01 DAY1

ルビィの超訳は少しお休みさせてもらって、しばらくは、この連休に参加していた

こちらのイベントをレポートします。


昨年の3月に大学院を修了したわけですが、私が通っていた虎ノ門キャンパスの本校は、金沢(金沢工業大学(K.I.T.))です。

 

いつか、金沢に行ってみたいと密かに思っていたところ、念願叶ってお声がけ頂くことができました。

 

このハッカソンは、K.I.T.の学生を中心に、社会人の方も参加していて

今回は約60名もの方が、3月の貴重な連休を使って集まりました。

 

金沢は連休中とても良いお天気で

北陸地方には珍しい天候だったようですが、ハッカソンの会場はそんなこととは無関係に、熱気に溢れていました。

 

 

大人が本気を出している傍らで、初の試みとして実施されたのがチャイルドハッカソンです。

 

ハッカソンに参加したくても、休日は子どもの面倒を見なければいけなくて...

という人のために、大人がハッカソンに参加している間、子どもたちをお預かりして

子どもは子どもで楽しんでしまおう

というコンセプトで用意されたものです。

 

とはいえ、開催当日になっても、何歳くらいの子が、何人くらい集まるのか?

3日間連続とはいえ、毎日来てくれるのか、何時ころに来てくれるのか?

といったことが、全く分からない状態で…

 

子どもが参加してくれないことには成り立たないし…

ということで、3日間ずっとドキドキでした(笑)

 

何の事前準備もできず、出たとこ勝負という、私の最も苦手とするシチュエーションでしたが

これも経験と思って、その緊張感も含めて楽しんできました。

 

 

自宅からわずか3時間で金沢駅に到着。

出迎えてくれたのは、鼓門です。

到着したときは近すぎて気づきませんでしたが、この上にあるガラス張りのアーチが本当に美しいデザインでした。

(帰りがけ、駅に向かう途中で初めて見ました)

f:id:dig_learning:20170320202000j:image

 

バスに約30分ほど乗ると、野々市市にある金沢工業大学に到着。

ハッカソンの会場は、大学とは思えないおシャレな場所でした。

f:id:dig_learning:20170320202016j:image

 広々としたワークエリアの一角に、チャイルドハッカソンのエリアを設けていただいたのですが

こんな素敵な&居心地の良い場所を独占させてもらい、はじめからテンションが上がります!

f:id:dig_learning:20170320202034j:image

 今回のハッカソンに向けては特段、やり方のイメージをもっていなかったので

とりあえず最低限の道具として、littleBitsとレゴブロックを用意してもらいました。

その他の工作道具は、過去に使ったものをいくつか私が持ち込みましたが、結果的に役に立ったので、わざわざ運んだ甲斐がありました。

f:id:dig_learning:20170320202102j:image

そして迎えた初日。

今回のハッカソンのテーマがオリパラということで、まずはスポーツ庁のオリパラ課長より

金沢からオリパラを考える視座を与えて頂きました。

 

このお話がとても面白くて、東京五輪の背景がよく理解でき

少し他人事だったオリパラが、ようやく自分ごとになった瞬間でした。

 

このお話の中で、金沢は既に海外旅行客の誘致には成功しているので

観光客向けのアプローチはこれ以上、力を入れなくても良さそうですね

といった発言がありました。

 

そうかぁ、と思いながら聴いていたのですが

なぜかこの言葉がずっと頭から離れず、結果的にこの発言が

今回のチャイルドハッカソンの作品を仕上げる際のコンセプトに繋がることになりました。

その辺はまた後ほど。

 

 

他にも、マイクロソフトからHoleLensのエバンジェリストや、元稚内北星学園の丸山先生、金沢市長からのお話がありました。

(私は途中までしか聞けませんでしたが、参加者にはとっても有意義だった様子)

 

 

さて、初日に来てくれたのは、5歳のY君。

f:id:dig_learning:20170320202137j:image

 はじめは、自分がもってきた世界地図のプリント(世界中の国と場所を記憶している!)から顔をあげることなく

なかなか参戦してくれなかったのですが

一緒に新品のレゴブロックを開封し、littleBitsを触り始めるとあっという間に夢中になって

それからなんと4時間!!!

ぶっ通しで遊び尽くしました。

 

最後には疲れすぎてしまい、まだ遊びたいけど疲れた、けど帰りたくなくて駄々をこねていましたが

そんな姿も含めて、一緒に遊んだ4時間はとっても楽しかったです(^^

 

最終的に、作品として仕上げることができなかったので

彼も私も、とても悔しかったのですが

それが逆に、貴重な学びの機会にもなりました。

 

私の方は、オリパラをテーマに何か作らないといけなくて

何とか彼にその気になってもらいたかったけれど

何の目的で、何を作るのか

それを大人側の事情でどこまで枠にはめて良いものか?

迷っていました。

 

なので、まずは本人のやりたいようにやってもらおうと

オリパラの話にも触れず、彼の興味のままに付き合っていました。

 

とはいえ、こちらも焦るわけで…

 

そうこうしているうちに、littleBitsの扱いに慣れてくると手出し無用の雰囲気になり時間切れ。

 

個人参加で出入り自由の単発ワークショップなのに

最終日にはグループでの発表がある

という形の難しさを痛感した瞬間でした。

 

次にもし、同じようなシチュエーションがあったらどうするか考えてみました。

 

きっとまた、とことん子どもの興味に付き合うと思います。

その中で、子どもが興味関心のあるところ、ないところを会話を通じて探っていくのかな。

大人の事情はあれど、子どもの視点からしか見えないものがあるはずなので

寄り添うことで、それを発見したり引き出したりしながら

最終的に、それをベースとしたコンセプト作りを大人がお手伝いすれば良いのだと思います。

 

発想が逆だったんですよね。

大人の事情に子どもを付き合わせるのではなくて

子どもの事情に大人が合わせる。

 

大人は、それだけの器量を求められている。

 

なかなか、やり甲斐のある分野に足を踏み入れてしまいました(笑)

 

そんなわけで初日は若干の後悔とともに終えて…

翌日に備えます。

『ルビィのぼうけん』勝手に超訳 Vol.07

5章、ユキヒョウの続きです。

 

プログラミングの考え方として「繰り返し処理」を捉えるならば

その本質は、効率的な処理、と言えます。

 

同じことの繰り返しによる結果として

ユキヒョウの身体についている柄、宝石が乗っていた屋根の模様、ハシゴ

あたりがモチーフとして紹介されていることは前回説明しました。

 

同じ模様をたくさん作るなら、繰り返し同じ処理をすれば良い

という話なのですね。

f:id:dig_learning:20170311235343p:plain

 

ここでもう一歩、掘り下げて

それはつまりどういうことなのか?

と考えてみると、効率的な処理をするための手段である

と言えます。

 

つまり、漫然と同じ処理を繰り返すのではなく

いかにして、効率良く処理するか?

(できるだけ少ないステップで処理する)

と考えてみると、繰り返し処理を考えるときのポイントが2つ見えてきます。

 

それは

  1. 同じ種類の情報をまとめること
  2. 繰り返すための条件を設定すること

です。

 

まず一つめの、同じ種類の情報をまとめること

について説明します。

 

例えば、これから洗濯物を干そうとするシーンを想像してみてください。

目の前には洗濯物の山があって、ハンガーやタコ足などを使って一つ一つ片付けていくわけです。

f:id:dig_learning:20170313211900p:plain

 

どうやって片付けますか?

洗濯物の山に手を伸ばして

まず手にとったシャツの袖をハンガーに通してそのまま物干しにかけ

次に靴下を洗濯バサミでとめて

今度はバスタオルのシワを伸ばして広げて物干し竿に広げ

そしてまたシャツを手に取り…

あっちへ行ったりこっちへ行ったり...

 

なんてやってませんか?

f:id:dig_learning:20170313212013p:plain

 

 

こんな非効率な家事を続けていたら、お母さんたちの時間はいくらあっても足りません。

そこで、繰り返しの考え方を使って改善してみましょう。

 

まず、洗濯物を同じ種類にまとめます。

  • シャツなどハンガーにかけるもの(大人用、子ども用をさらに分けて)
  • タオルなど物干し竿に直接広げるもの
  • 靴下など洗濯ハンガーにまとめて吊るすもの

などなど。

f:id:dig_learning:20170313212143p:plain

 

このとき、シャツとか靴下といった洗濯物の種類で分けるのではなく

洗濯物を干す場所とか方法で分類するのが重要です。

 

そうすれば

ハンガーに袖を通して物干し竿に吊るす

という処理をシャツの数だけくり返すにしても

ベランダの中を行ったり来たりしないで、その場でハンガー掛けの処理を片付けられますね。

 

 

そして2つめのポイントである、繰り返すための条件を設定します。

 

条件には3種類あります。

まず、開始のための条件

 

直径30センチほどの洗濯ハンガーに干すことを考えてみます。

https://www.nitori-net.jp/wcsstore/ec/images/Image/catalog/8500502/646X1000/850050201.jpg

開始条件はまず、当たり前ですが干すべき洗濯物が存在することです。

しかも、バスタオルのように大判のものではなく、靴下など洗濯バサミを1つか2つ使う小物でなければなりません。

 

もし靴下が5足あれば、その数だけ洗濯ハンガーに吊るす作業を繰り返して

洗濯物カゴが空っぽになれば終わりです。

 

f:id:dig_learning:20170313212717p:plain

これが終了条件です。

 

洗濯物がなくなったら、というのは1つの終了条件ですが

それ以外にも、ハンガーが5本しかないのであれば、5本全部使ったら

(もしくは、残りが0本になったら)終わり

というのも終了条件です。

 

 

そしてもう1つの条件が繰り返すための条件です。

これもいろいろありますね。

 

例えば、シャツだけを一気に片付けるのであれば

洗濯物がシャツであること

かつ

ハンガーが1本以上残っていること

 が繰り返しの条件になります。

 

終了条件と繰り返しの条件が同じ場合もありますが、分かりやすく考えるためにも、

・開始条件

・終了条件

・繰り返し条件

の3つがあると理解するのが良いと思います。

 

 

こうやって考えてみると、繰り返し処理というのは単に同じことをくり返す

という意味なのではなく

効率的な処理をするための手段である

ということが分かるのではないかと思います。

 

つまり、最初に種類で分類して、繰り返し処理のための条件をどのように設定するか

ということをちゃんと考えることが、効率良くものごとを進める上でとても重要だということです。

 

プログラミングというちょっと特殊な世界でやっていることは、結局のところこういった考えに基づいてプログラムコードを書いている

ということにすぎません。

 

家庭でもし、この繰り返し処理の考え方を子どもたちに伝えるのであれば

どうすれば家事を効率良く終わらせることができるか?

ということを一緒に考えてみると面白いと思います。

 

洗濯然り、掃除然り、料理然り。

家庭の中には、プログラミングの考え方が役に立つ場面が意外とあるんですよね。

それは、プログラミングの考え方は基本的に「効率が良いこと」を目指しているからです。

 

プログラミングの考え方は、次世代の子どもたちが受ける特別な教育によって手に入るもの

ではなく

私たち大人が普段の日常や仕事の中でも当たり前に使っている考え方と同じである

ということを、まずは大人に理解してもらいたいと最近考えるようになりました。

ルビィの超訳を通じて、そんなことが少しでも伝えられたらと思っています。

 

 

子どもと一緒にこんなことをやってみたよ、という方がいたら、是非教えてください!

@tanpro-lab