子供達がプログラミング成果物を発表する「TENTO×デジタルポケット第3回プレゼン大会」に審査員として参加してきました
小中学生向けのプログラミングスクールであるTENTOさんらが主催する、「TENTO×デジタルポケット第3回プレゼン大会」に、テキストプログラミング枠の審査員として参加してきました!
TENTO | 小学生・中学生・高校生向けプログラミング教室
http://www.tento-net.com/20141026presen
何故呼ばれた?
今回、Scratch枠(マウスポチポチでプログラミングできる)と、Viscuit枠(これは一般的なプログラミングと相当かけ離れた概念なので、是非ググってください)と、テキストプログラミング枠(所謂、我々が親しみあるやつ)があり、私はテキストプログラミング枠の審査担当でした。
審査員の方々はそれらビジュアルプログラミングの識者や、大学の先生などであり、まあ私はそういった肩書きレスであり、一番場違い感ありましたが、基本的に私は野生のエンジニア枠ということっぽいですね。あとは先日YAPCでベストトーク賞をいただいたので、プレゼンのプロ(?)という扱いなのですかね。
まぁ、実際の所、知り合いの方が運営に2人ほどおり、ちょうどよさそうだからお呼びがかかった、という構図です。
感想の前に前提として
「プログラミングスクール」という言葉を前にすると、技量の向上を目的にすえているように思うかもしれませんが、実際はそうではなく、どちらかというと習字とかそろばんの勉強に近い。
技量向上を目的とするだけでなく、人生経験や、仲間をつくり、その上で相互に高め合っていく、という場のようです。
まあ子供ですからね、グイグイ押し込んでいってイヤになってしまうのはまったく本末転倒ですし、プログラミングなんて、本気になればスゴイ勢いで上達するのであって、親しみや人とのコミュニケーション(オトナなども含む)を目的にするのはすごく良い事だと思います。
(私はそのようなビジョンを自然に受け取れるまでにちょっとかかりましたし、空気を読まず(?)子供のコードをみながらワイワイと「ここはPDOを使え」などと言ってしまったのですが、まあそういう人がいてもいいでしょうw)
私の目線当日レポート
まあ、スゴイたくさんの親子がきていまして、総勢何人だったんだろう。DeNAのあの良くつかう会議室の2/3が大体埋まった、といえば(一部の人には)大体つたわりますか?
色々写真載せたいんだけど、子供が写ってるのは微妙っぽいので、自粛しつついきますw
会の進行として、前半はビジュアルプログラミング2トラック、後半はビジュアルプログラミング1トラック+テキストプログラミング1トラックとなっており、私は前半やることがありませんでした。
興味があるものをウロウロしていいよ、ということだったのですけれど、ビジュアルプログラミングは親しみがなく、ゲームというものにあまり触れなくなって久しく、イマイチピンとこない感じでした。どうやってこれがうごいてるんだ?という興味は非常にあるのですが、コードをみせてよというのもむずかしいですからね…。
(20141030追記:そちらの様子は、こちらのブログにてレポートされていました)
Wokashi: TENTO×デジタルポケット第3回プレゼン大会 におじゃまさせて頂きました #tentodp2014
ということで、なんとなく楽屋にいたのですが、そこにはなぜか比較的高学年の子供がいて、ワイワイとプレゼンの練習をしているではないですか。
そこで適当なタイミングで「君たち、実は今日君らを審査するのはボクなんだけど」とネタばらしした上で、数分のプレゼン中ではどうせみせてもらえないであろうソースコードを見せることを強要などしました。*1
結果、全員にみせてもらったわけではないのですが、3人ほどのコードをみさせてもらって、彼らの使っているものや、力量とかそういった物をつぶさに観察したのでした。
実際の所、ここは審査には影響しなかったですね。プレゼンの大会であって、僅差でしかないプログラミングの力量の大会でないことは(ある程度のファクターであっても)きめていたので。
でもそんなこと関係無く、若者(というより子供)の環境とか!気になるでしょ!
ちなみに、皆さん気になるであろう子供達の環境ですが、みんなMacでありiPhoneでした。言語はPythonが多めで(これは多分周りのオトナの影響でしょう)、あとはObj-CとJS、Herokuを使っている子もいました(課金はしていない)。まあ、なんやかんや使ってる技術は結構モダンでしたね。
あと、PHPが一名だけいましたね*2
なぜかしらないが、全員がSublimeをつかっているのも印象的でした。
さて、彼らは最初私を見て、「なんだこのヒゲのオッサンは」とおもったでしょうが、わりと普段から大人と付き合っているのになれているのか、すんなりと私とのコミュニケーションが成立しました。
1時間くらいと短い時間ではありましたが、コードをみせてもらったときに、「ここは微妙だからもっと直すといいぞ」「こういうツールがあって便利」とかそういうオッサンの助言を割と真剣に聞いていたのが印象的でした。
こどもと話すと、話題が合うか不安になりますが、まあコードをみながら話せばそりゃー通じますよね、楽しい。
JSで書かれたゲームについては、JSコンソールひらいて軽くハックして、スコアをチートして遊んだりもしましたね。こういうのも楽しい。
知らない大人に変に物怖じしないでちゃんとしゃべれるのは、多分、普段回りにいる大人が良い大人なんでしょうね。良い成長をしている子供達だとおもいました。
(勿論、調子に乗っているというほどではなく、それなりの距離感はありました)
私が審査した発表について
今回9人の発表があり、ざっくりいうと以下のような感じでした。
発表後の質問タイムで、わたし はなんだかんだ全員に質問をしたのですが、全員ちゃんとした受け答えができていて、そこら辺はすばらしいとおもいましたね。
最前列にすわって、グイグイと質問していましたね。
・Minecraftで家をつくった
とても小さい子だったので、まず自分がつくったものを大勢の前でちゃんと発表する、ということができているのがよかったですね。こだわりポイントを紹介してくれるのはよかったです。
紹介されていなかったけど、シャンデリアとかよくできていたと思います。
・TENTOの先生方を紹介するHPをつくった
シンプルなウェブサイトでしたが、これが実際にTENTOのHPに掲載されると楽しそうだな!と思いましたね。
私はTENTOの先生方を全員しっているわけではないので、図らずも参考になりました。
・脱出ゲームをHTMLでつくった
途中バグでくるしんでいたのですが、素材をちゃんと作成して、ある程度ロジックのあるゲームを作っているのは良かったですね。是非実際に遊んでみたいとおもいました。
あと、プレゼン中、会場の人に「どこにあるとおもいますか?」と問いかけて進行しているのはとてもよかったと思います。
・JSでテニスゲーム(Pong)をつくった
基本的なゲームですが、敵がちゃんとAIでうごいているのは非常によかったと思います。
質問しながらコードをみせてもらって、先生のサポートがありつつも、短いコードでAIが書けたことに感動した、という回答を聞いて、がんばってるなと思いました。
・東方弾幕ジェネレータ
ごく一部で有名ですが、コードで弾幕をつくっていました。あのコード、結構むずかしい。
今後は色々な弾幕の種類を増やしていけるといいですね!ホーミングとか!
私も(東方はやっていませんけど)縦シュー好きなので、知っている内容でよかったです。
・Enchant.JSや物理演算ライブラリを駆使してアクションゲームをつくった
コードの高度さと、画像素材のクオリティだけでいったらこの発表が一番でした、実際にゲームになっているのに驚きます。
有名なライブラリを自分で駆使した上で、画面全体をスクロールさせるところがむずかしかったとか、自分でちゃんとつくらないとわからない、どこがコードで苦労したかの質問をちゃんとかえせていたので、すごいなとおもいました。
あと、ヘルプボタンがちゃんとあったり、ステージの概念があるようなのが、こだわりというか、クオリティに対する姿勢高いなとおもいました。実際にやってみたかったです…。
・JSで連打ゲームをつくった
まず、変な話ですが、この子は性格がよかった。一番最初にコードをみせてくれましたねw
ゲームとしては非常にシンプルなものだったのですが、プレゼンはちょっと面白い感じでしたね。「過去のハイスコアを超える!」と宣言したもののギリギリになってしまい、計らずも白熱したトークになっていたのが印象的でした。
次はもっとプロダクトを作り込んでほしいですね!Twitterでスコアシェアとかね!
・PHP+iPhoneアプリでカレンダーをつくった
「一般的に見た」プロダクトとしては、一番の出来だったと思います。なにせiPhoneアプリとAPIサーバーである、大人顔負けでした。
スライドのクオリティも非常にたかかったのですが、デモをするならもうちょっと練習したら最高だなあとおもったのと、もうちょっと顔を上げてみんなに向かって発表してくれるとさらに良い感じですね!
あと、あんなにカッコイイウェブサイトつくったのなら(楽屋で見せて貰った)、もっとみせつけてもよかったんじゃないかな。
・PythonでWebsocketサーバー+PythonGUIアプリでお絵かきゲーム
PythonのGUIアプリを作るという時点ですごいな!とおもいましたが。サーバー側も勿論ちゃんとつくっていましたので一番コードとしては興味をひかれました。
自分でぱっと真似できないのはこの子のプロダクトですね(PyQtとかさわったことない)
ただ、プレゼンで残念な所がありましたね。画面上のデバッグログが微妙に人に見せられるような感じではなく、プレゼンとしては辛口の結果を付けざるをえなかったですね!たのしんでコードを書いているのはつたわってきましたが、おしい!人の前で発表するには色々と気をくばりましょう!
・短縮URLサービスをPythonでつくった
プロダクト的には極シンプルですし、コードがすばらしい!ということはなかったのですが、開始前にちゃんと挨拶をして礼儀ただしく、プレゼンの資料のクオリティが高かったですね。
作ったモノの問題点や今後の展望についてすこし語っていた事も印象にのこりました。
「プレゼンとして」みたときに、一番よかったので、この子を私は最優秀賞にえらばせていただきました。
などなど、
いやー、本当に色々あって…コードだけならこの子、プレゼンだけならこの子、トークだけならこの子、プロダクトだけならこの子、がんばっているという気迫がつたわってきた子ならこの子…といろいろ迷いまくったんですけどね。
でも、個人的に「皆がどういう風になっていったら良いか」「そして、今回はプレゼン大会」という事を考えた結果、一番礼儀ただしく、堂々と発表をしていた最後の子に最優秀賞を渡しました。
重ね重ね、賞が1個しかわたせないのが残念でした。
次回(があるなら)部門賞みたいなのもあってほしいなーっておもいましたね。
私は子供が好きなので(変な意味でなく)
今回子供達と色々共通の話題で話せたのは非常に楽しかったですね、彼らも変なオッサンに絡まれたと思うだけでなく、エンジニアのオッサンとはなすと学びがあるとかそういう風にかんじてもらえたら本当にいいなとおもいました。
終わった後に、できるだけ個別に褒めたりしたんですけど(余計なコミュニケーションだっておもわれてたらイヤだなw)、みんな笑顔だったのがとてもよかったし、親御さんに「有り難うございます」なんていわれてしまって、こちらこそ有り難うという感じでしたね。
主催の皆さんに
今回は本当に貴重な体験をさせていただき、ありがとうございました。
子供達が楽しそうにやっているのはとても刺激になりましたし、幸せな気分になれます。
もしまたなにか機会があれば協力を惜しみませんので、また気軽にお声がけください。
子供達がプログラミングや、その周辺をマットウに楽しむ事はとても良い事だし、みんな笑顔になる事だとおもっていますので。
発表していた子供のみなさんへ
まあ、みなさんがこのブログを読んでるとはおもえないんですがw
皆さんの発表を見せていただいてありがとうございます。本当は是非皆さんのコードをもっともっと読みたいなっておもいましたね。そして実際につかってみたかったし、ツッコミもいれたかった(笑)
コードが書けるってことは、色々なものを自分でつくれるってことだから、もっと自分しかつかわないような、一風かわったものとかをつくってみるのも面白いんじゃないかなとおもいました。
まあ、まだそこまで「これが作りたい!」という欲求がないのかもしれないけどね。
さて、私は君たちのコードをみせろとしばしば言いましたが、他人のコードを読むって結構面白いことなんです、みんなもやったら良いと思う。最近はそう言う文化がドンドンふえてるからね。人のコードを読むと、とても勉強になるし、ボクみたいに君たちと話すきっかけにもなる。
最後の講評でも話しましたが、プログラミングにはコミュニティというものが有ります。
TENTOとかも多分コミュニティで、プログラミングとかが好きな人があつまってやっているものです。
大人が開催しているコミュニティは、まだあまり子供が飛び込む体制が整っているとはいえないけど、子供でもどんどん参加して、もっと詳しい人と話したりとかするといいとおもうよ。
ネットとかで検索したり、本を読んだりすれば大体学ぶ事はできるんだけど、みんなの知識を共有できると、みんなでスゴイ勢いで進化していけるんだ。
たとえば、私みたいなおじさんにきいてもいい、私はいつでもウェルカム(Twitter(@uzulla)でも、Facebookでも、このブログのコメントでも)。でもまあ、知らない人と話すとお母さんとかは心配するからねwそれなりの歳になるまではお母さんとかに一度きいてみてからね。
ちなみに、ボクの知ってる人で一番若い人だと、高校生1年生くらいから第一線のオトナと対等にお話してたりする人もいるんだよ。まだそういう人はすくないけど、今後は増えるのかもしれない。なので、大人の中に子供がはいってっていけない、なんてことはない。
でも、そうならなきゃいけないとか、そうなるのが良い!ということではない。みんな自分のペースで進めていくと良い、近い歳の子と楽しむほうが楽しいとおもうw
そして、プログラミングはすぐには逃げない。でも、ちょっとむずかしいことがやりたい!でもできない!っておもったら遠慮無く大人に聞いてみるのも良いと思う。
うまくいかないのが長くつづいちゃったらくやしくてイヤになるからね。そういうときには助け合い、その助け合いの場がコミュニティだ。
最後に、私はコンピューターで仕事して生きているんだけど、当然それ以外の仕事も世の中にはたくさんある。そして、コンピューターを生かすのはコンピューターの仕事にかぎらないからね。普通の事や仕事だってドンドン活用できるし、単なる趣味でもいいとおもう。
好きなゲームの攻略方法をあつめるようなサイトをつくるのも一つだろう。こうしなきゃいけない!とかおもわないで、やってみたいことをやってみるのがいいとおもうよ。
でも大体そういうのってむずかしいから、がんばらないといけないんだけどね!
みなさんが今後もコンピューターに親しんで、コンピューターを活用していくんだと思うと、コンピューター大好きおじさんとしては、とてもワクワクしますね。
皆さん、今回は大作をみせてくれて、本当にありがとうございました。またいつか見せてくださいね。