こどもとIT
GitHubやStack Overflowも!? 情報収集力と総合力の高さが光った小学生達
――Tech Kids Grand Prix決勝プレゼンテーションレポート
2018年10月10日 08:00
応募総数1000件を越えた小学生プログラミングコンテスト「Tech Kids Grand Prix(テックキッズグランプリ)」の決勝プレゼンテーション及び表彰式が、2018年9月24日に開催された。会場の渋谷ヒカリエホールでは、「ゲーム部門」「自由制作部門」それぞれのファイナリスト6名ずつ12名が堂々とプレゼンテーションを行い、審査を経て各賞が発表された。どんな作品が登場し、ファイナリストの小学生たちにはどんな共通点が見えたのか、レポートする。
小学生対象コンテストながら賞金総額100万円
今回のコンテストの審査基準は、Vision、Product、Presentationの3要素。各部門で上位3名の入賞者と総合優勝には賞金が贈られ、他に5つの協賛企業賞、オーディエンス賞が決まった。賞金総額100万円という、小学生対象ながら豪華なコンテストだ。
ファイナリストは5分のプレゼンテーションタイムで自己紹介から作品のビジョン、機能紹介を行った。ステージいっぱいのスライドを背に、皆堂々としている。
まずは、ファイナリストの全作品を、各賞受賞順に紹介していこう。
「ゲーム部門」
ゲーム部門1位・総合優勝:宮城采生さん作「オシマル」
アニマルブロックが押し合って陣地に押し込み合う「押し相撲」ゲーム。動物によってブロックの強さが違う。動物のデザインやBGMも全てオリジナルで作った。今回のプログラムでは、キャラクター生成時の配置に特に苦労したが、何度も違うアプローチを試し、Unityのウェブサイトで調べてヒントを見つけて解決したそうだ。Unityを始めたのが1年前で、スクールには通っておらず独自に学習しているという。昨年中にすでに別の作品でコンテストに応募して受賞した経験があるという、驚きのスピードで習得してきた。将来の夢は「みんなが平和でハッピーになれるものを作ること」。ゲーム部門の1位と総合優勝に輝いた。
ゲーム部門2位・ミクシィ賞:羽柴陽飛さん作「Point vs. Line」
点と線というシンプルなシェイプをモチーフに、「線」の攻撃をかわしながら「点」をスコアポイントに誘導するゲームを作り上げた。1人プレイだけでなく2人プレイモードも用意し、「線」と「点」で対戦もできる。「どうしたらゲームが面白くなるかを考えてゼロからルールを作っていくのがとても楽しかった」そうだ。プログラミングを始めてからもうすぐ2年。過去にScratchでドラクエの曲を再現した際、苦労して再生ずれを解決できたときのうれしさが、プログラミングにのめりこむきっかけになったという。
ゲーム部門3位・Cygames賞:長谷部環さん作「宇宙突戦争」
宇宙を舞台にしたシューティングゲーム。後半でボスキャラが登場するなど展開も工夫されている。プログラムで一番苦労したのは敵のショットの出し方で、思ったように出せずに「心が折れそうになりました」と語る。当初、簡単なシューティングゲームにするつもりが、作っているうちにやりたいことがどんどん広がって、たくさん機能があるゲームになったそうだ。大好きなゲームの作者を「マルチな才能を持つクリエイター」と尊敬し、自身も「いつか得意な絵と好きな音楽で、オリジナルのゲームをプログラミングするゲームクリエイターになりたい」そうだ。
Google Play賞:齋藤之理さん作「素数の世界」
上から次々に出てくる数字が素数かどうかを判断して当てるゲーム。数学が大好きで特に素数に興味があり、これまでもScratchでいくつかのプログラムを作って楽しんできた。ところが、素数の楽しさを共有できる友達には出会えていない。そこで「素数の世界を自分以外の人も楽しめるように」という動機から、このゲームを作ったという。「素数や数学のことを話せる友達ができたらいいなと思っています」と語る、本大会最年少のファイナリストだ。
ファイナリスト:大竹悠太さん作「Crazy Drive VR」
道の途切れた道路を飛び跳ねて渡りながら進んでいくゲーム。3Dの視点でどんどん奥に進んでいく。細部にこだわって複数のステージや効果音、BGM、ギミックなどを作った。VRを楽しめる「Oculus Go」でもプレイできるようにしている。わからないことはGoogleで検索し、Google翻訳も駆使して解決したという。
「自由制作部門」
自由制作部門1位・オーディエンス賞:菅野晄さん作「写刺繍」
刺繍が得意なおばあちゃんから、図案を自分で作るのは大変と聞いたのがきっかけで、写真や画像から簡単に図案を生成するアプリを開発した。刺繍の図案というのは設計図のようなもので、縫い目と使用する糸の色番号を指定したもの。アプリでは、好きな画像を取り込んだら、縫い目の数(細かさ)と、刺繍糸のメーカー、使う糸の数を指定する。これだけで自動的に図案化して表示してくれるのだ。機能はもちろんデザインが洗練されていて、総合的な完成度が高くオーディエンス賞も獲得した。
自由制作部門2位:澁谷知希さん作「今日の洋服何着てく?」
天気予報の情報を元に、おすすめの服装や持ち物をアドバイスしてくるウェブアプリ。マンションだと外の天気を感じにくく、その日の服装を決めづらいことから発想したという。天気や温度によってシンプルなアイコンで服装や、水筒・帽子などの持ち物を示すだけでなく、おすすめの服装のアバターも表示される。天気によって背景も曇りや晴れに変わるなどの演出も。ユーザーの入力した郵便番号から地点座標を取得する部分と、座標から天気情報を取得する部分でAPIを使用し、「データを取ってくるよりもそれを解析する方が大変」と感じたそうだ。
自由制作部門3位:吉田拓隼さん作「たべガチャ」
お母さんの毎日の食事作りの困りごとを解決しようと、冷蔵庫にある食材で作れる料理を提案するアプリを作った。食材を3つまで選ぶとカプセルが落ちてくる演出が入ってレシピが提案される。食材をわかりやすく見せるイラストや、食品ジャンルがわかるように色分けするなどデザイン面でもたくさんの工夫をした。アプリに組み込んだ食材やレシピはなるべく栄養価の高いものから選んでいるそうだ。将来は「野球選手とプログラマーになりたい」という。
サイバーエージェント賞:柴田謙さん作「うんちく」
カナダ在住の柴田さんは日本の友達がビジュアルベースのプログラミング言語を使っていることが多いことに気づく。自身は英語圏育ちで8才からPythonを使っていたので、日本でテキストベースのプログラミング言語をやらないのは、プログラムの記述が英語だからかもしれないと推測した。そこで、日本語だけで書けるテキストベースのプログラミング言語を開発したのが「うんちく」だ。ルール通りに日本語で指示を書けば、それがPythonに変換されて実行される仕組み。日本語でPythonのコードが書けてしまうようなイメージだ。プログラミング言語自体を構築しようとする意識がとてもエンジニア的で、「将来は新しいOSを作りたい」という夢にも納得だ。
筆者はビジュアル言語からテキスト言語への連携の壁が英語だとはあまり思っていなかったのだが、柴田さんの日本語テキスト言語を眺めながら、もしかして、英語圏の人がPythonで「print("Hello world!")」とタイプするときの心の負担は、日本語圏の人が「『こんにちは』って書く。」とタイプする程度のものなのかもしれない……と気づき、ちょっと認識を新たにした。
東急電鉄賞:大嶺結葉さん作「Veg-菜」
ベジタリアンがレストランで自分の意思や食べられる食材をスムーズに伝えられるアプリ。日本語、英語、繁体中文の3ヶ国語に対応し、日本に来た外国人も使えるように意識した。実は大嶺さんの家族はベジタリアンで、対応するレストランがあまりないので外食をするときに説明が大変なことを日々実感しているそうだ。ベジタリアンにも細かい分類があり、食べられる食品が違うので、それらも選べるようにした。すでに正式にiOSアプリとしてリリースされているのでユーザーからのリアルな感想も寄せられているそうだ。
ファイナリストは「訓練」された子ども達か?
ファイナリスト全員が、発想する力も形にする力も発表する力も素晴らしかった。とはいえ、読者の皆さんの中にはもしかすると「この小学生たちは特別に訓練された子達だからでしょ?」と感じる人もいるかもしれないし、そう思いたくなる気持ちもわかる。
しかし、筆者は実際に子どもたちの様子と作品を見て、例えばピアノやバレエ、競技スポーツといった、たゆまぬ練習に生活のかなりの部分をあてないと全国レベルに上がれないようなストイックな世界とはどうも違うな、と感じた。そうした芸術・スポーツ系のトップを目指す子ども達や、中学受験で毎日塾通いをする子ども達の方がよほど「訓練」されているだろう。
今回のファイナリストたちは、「練習」や「訓練」、「勉強」という感覚でプログラミングをやっている様子はない。誰かの指導で引っ張ってもらっているというより、もっと伸びやかに自分の力で前に進んでいる印象なのだ。プログラミングは「好きなこと」の一つで、作りたいものがあってのめり込んでいる、というごく自然な流れで、自分でどうにか完成させたいから必死にエラーと戦う。
「環境」はあるが、その先は子ども自身の力
もちろん、「環境」要因は大きい。ファイナリスト12名の中で、主催のTech Kids Schoolや他のプログラミング関連のスクールに通っている子どもたちの割合は高かった。スクールでさらに特別なコースを受けているメンバーも多い。そうやってベースの知識を存分につけたり、相談できるメンターに定期的に会えるのは大きなメリットだろう。それでもなにか「教え込む」ような仕組みで力をつけているのとは、どうも違うような気がする。
「教え込み」ではないことは、総合グランプリの宮城采生さんと、ゲーム部門3位の長谷部環さんが、どこのスクールにも通っていないことからもわかる。もちろん、そこにもいい「環境」はあり、子どもの「やりたい」に寄り添って適切な道具を選定したり走り出せる準備をする大人がそばにいる。宮城さんがゲームを作りたいと相談したときに、Unityや周辺の必要なアプリを選定してセッティングしたのはお父さんだったし、長谷部さんも、相談相手はお父さんだそうだ。
だが、だからといって、例えばマンツーマンで日々「指導」や「教育」をしているわけではない。最初だけやり方を紹介したり、困った時には相談に乗るといった寄り添い型だ。その先は、やはりファイナリスト達自身が強いモチベーションで切り拓いている。
では、彼らに共通するのはどんな資質だろう。3つあげてみたい。
資質その1:やり通して完成させる力
どんなに小さなゲームでもアプリでも、「最後まで作り上げる」というのは実はそれだけでなかなか大変なことだ。
例えばScratchのサイトで公開されている大量な作品群をのぞいてみるとわかるが、作りかけの作品やクリアできないゲームなど、中途半端な仕上がりのものも多い。とりあえず作りかけてみたけど……と放置するのは、子どもだからではなく、プログラミングを学ぶ大人の初学者にだってよくあることだ。
また、根気の問題だけでなく、企画が壮大すぎるのもよくあること。作品として成立するラインと将来の機能追加に切り分ける判断をしつつ、最後までやり切る粘り強さを持たなければ、完成には至らない。
今回のファイナリストの作品は、機能の実用度やリリースのレベルは様々だとしても、ゲームやアプリとしての機能と体裁は整っている。一旦、ちゃんと完成品として着地させてある。「完成させる」「終わらせる」という、ものづくりには大切な力を持っていた。
資質その2:情報を自力で取りにいく力
従来の「指導」のイメージを持っていると、「子どもだし、わからないことがあったら誰か詳しい人に教えてもらうんでしょ?」と思うかもしれない。だが、このファイナリスト達は、自分で検索して調べ、自分で情報を取りに行く習慣がついているのが共通する特徴だ。そして自分でひたすら試す。
それに加えて今回感じたのは、ここで英語力があると情報入手力が格段に上がるということだ。「わからないことがあったらGitHubのIssuesを見たり、Stack Overflowで調べました」とプレゼン時に言ったのは、岡村有紗さん(自由制作部門)。彼女はインターナショナルスクールに通い、英語に抵抗感がない。開発に使ったFlutterの公式ドキュメントは英語なので、日本語しか使えなければ選択肢にすらならなかったはずだ。
カナダ在住で英語がネイティブレベルの柴田謙さん(自由制作部門)に話を聞いてみると、やはりGitHubやStack Overflowは当然のように見るそうだ。GitHubやStack Overflowといった、専門性の高い英語のコミュニティの名前を小学生の口から聞くとは思わなかった。そもそもテキストベースのプログラミング言語に関しても、英語を元に作られた命令や構文の意味を、普段話す言葉の延長で、ごく自然に理解をしているのだと感じた。
もちろん、英語ができることと、情報を取りに行ける能力は全く別のものだ。しかし、言語の壁によってターゲットにできる情報量は確実に違う。日本人にとっては第2言語だから、同じステージに立つ時期が小学生である必要はないが、大人になるまでの間に、英語で書かれた情報を取りに行くことの障壁を極力下げた方が圧倒的に「得」をするのは間違いない。
資質その3:企画・設計・デザイン・プログラミングの総合力
ゲームやアプリを一人で作り上げるには、コンセプトなど企画から始まって、画面展開の設計やユーザーインターフェースデザイン、グラフィックデザイン、プログラミング……と、全てを一人で行う必要がある。それぞれの精度やレベルは様々だし、実装の度合いも違うとはいえ、これら全てに意識を向けないと作品は出来上がらない。
この全体を見通せる総合的な力があることがファイナリストの共通点だった。今回、各部門で3位まで入賞した作品はそのバランスがよく、特にデザインの完成度が高いと、作品全体の印象が際立つ傾向があった。
2020年に向けて小学校段階でのプログラミング教育が模索されているところだが、今回のファイナリストを特別な子ども達と位置付けてしまうのではなく、その共通点から、何か大切なポイントが見えて来るのではないだろうか。