チームには嫌いな人もいる
10分でプロトタイプが完成。これから20分でゲームを完成させることが言い渡された。すでに時間をオーバーしているチームもあり、さらに時間厳守が強調される。実際の作業に入りエンジニアが俄然忙しくなる。ウチのチームのマネージャは働かないと講師に訴える子供も現れる。双六のボード作りに熱心になるチームが多く、20分では完成できないような大作に挑戦したり、完璧さを求めて作業が進まないチームも出てくる。
20分後、作業終了が宣言され、10分間のユーザーテストに移る。2名のエンジニアには他のチームに移動して、そこで作られたゲームで遊ぶ。その感想を5分間で聞き取りしてユーザーフィードバックを得る。10分間でゲームを改善して、いよいよベータ版から製品リリースとなる。この過程でさながら本物のコンピュータゲーム製作現場のような熱気を子供達から感じられた。
最後に完成したゲームをチーム全員でプレイして、無事、本日のプログラムが終了した。このチームで明日も課題をこなしたいかという質問に対して、子供達から、嫌いな人がいるから外して欲しい、違うチームを作り直したいなどの意見が出た。講師の回答は、実際のチームにも嫌いな人は必ずいる。しかし、世の中は甘くない。好きじゃない人とも仲良くできるスキルが必要である。現代のプログラミングは一人ではできない必ずチームで開発する。明日も同じチームで課題に取り組んでもらう。という話で幕を閉じた。
プログラミング的思考とは
青山学院コンピュータサイエンス・サマースクールは小学生向きにカスタマイズされていたが、内容的にはプログラマーの新人研修にも使えるほど本格的であり、大人が聞いていても得るところが大きかった。AIの最先端の都市シアトルで働く3名のプロの講義で、今イノベーションが起こっている現場での新しい働き方に触れられた。プログラマーには何よりもコミュニケーション能力が求められ、顧客のニーズをいかに理解してプログラムに反映させるかが最重要事項になってきている。
ソフトウェアをつくるためにはコードを書くプログラマだけではなく、プログラムマネージャ、アーキテクト、デザイナー(これらの役割の人間は必ずしもプログラミングができるとは限らない)、といった多種多様な役割、人材が必要となる。そのような様々な役割の人が協力してはじめて世の中の人が使えるソフトウェアができる。そうした中でプログラマ(ソフトウェアエンジニア)に求められるものは、コーディング能力(プログラムを開発する能力)だけでなく、卓越したコミュニケーション能力を持ち、潜在的なものも含めた顧客のニーズを形にしていく力・能力だ。
コーディング作業よりも、ソフトウエアで何をしたいのか、それをコンピュータに実行させるには、どんな方法があるのかを考えることが求められる。2020年から、日本の教育現場でこれほど高度な授業がおこなえるとは思えないが、そのタイムリミットは確実に迫っているのだ。
▲「WEDGE Infinity」の新着記事などをお届けしています。