2020.02.19.Wed
2040年・未来の担い手
天才中学生プログラマーが考える「理想の世界」とは?
夏休みのわずか数週間で、独自のプログラミング言語を開発し、「U-22プログラミング・コンテスト2019」で経済産業大臣賞(総合)を受賞した天才少年がいる。開成中学3年の上原直人さんだ。小学6年から独学でプログラミングを始め、中学2年の時にはOSも自作していた異才プログラマーの素顔に迫る。(取材・文 酒井真弓 撮影・倉増崇史)
漫画の中のプログラマーに憧れて、言語開発の道へ
──今日は2040年の未来のことを聞きたくて伺いました。その前にまず、プログラミングを始めたきっかけを教えてください。
上原 小学6年の時、漫画で見たプログラマーの姿に憧れて、面白半分でプログラミングを始めました。中学受験もあっていったん距離を置きましたが、中学入学後の部活(KCLC:開成コンピューターラバーズクラブ)で再開しました。
部活ではまず、C#という言語を学びましたが、とっつきにくくて挫折しました。でもその後、AIの本を読んでコンピューターが人間のように学習するってどういうことか知りたくなって、AI、機械学習の分野でよく使われるPython(パイソン)を始めました。Pythonは比較的シンプルな言語で、すんなり理解できたんです。
──プログラミング言語「Blawn(ブラウン)」開発のきっかけは?
上原 Pythonの後、C++をやってみて、初心者でも扱いやすい言語とそうでない言語があるんだと実感しました。そこで、Pythonのように扱いやすく、それでいてPythonの不便さを解消し、開発者の負担を軽減するような言語を作りたいと思ったんです。
専門的な話になりますが、Pythonは動的型付けといって、実行するまで型が決まらないという特性があります。それで動作が少し遅かったり、実行するまでバグに気付かなかったりといったことが起こります。なので、型はあるけれど、それを書かずに使える言語があったらいいなと。その発想を形にしたのが、今回開発したプログラミング言語「Blawn」なんです。
──すごいですね。上原さんは、着想からわずか数週間でそれを実装されました。
上原 確かに、型を書かずに済むようにするのは苦労しました。でも言語開発って、やっている人が少ないから難しいと思われているだけで、実際やってみるとそこまで難しくはないんです。ギターに例えると、初心者が難しめの曲を一曲弾けるようになるくらいの難易度だと思います。
──それはちょっと同意しかねますが......(笑)どんな開発で「Blawn」を使ってほしいですか?
上原 特に絞ってはいませんが、マルチプラットフォームアプリの開発ですかね。iOS、Android、Mac、Windowsといった多様な環境下で同じプログラムを動作させるには、プログラミング以外の点でけっこう工夫が必要なんです。その負担を可能な限りBlawn側で吸収できる設計にしたいと思っています。開発者が楽にいいものを作れる、そんな言語を目指しているんです。
──経済産業大臣賞を受賞した「U-22プログラミング・コンテスト2019」(注)について伺います。22歳以下を対象とした国内最大規模のコンテストです。中学生が最終選考に残るだけでもすごいのですが、応募406作品(参加者総数1144名)の頂点に立ちました。自信はありましたか?
上原 正直、駄目だと思ってました。応募当時、Blawnにはバグが多く残っていたんです。それも、特定の環境でしか動かないといった深刻なバグ(笑)。だから、最終審査に残ったと聞いた時はかなり驚きました。
──受賞後の反響を教えてください。
上原 Rubyという言語を開発したまつもとゆきひろさんが、「面白い」と評価してくださったのがすごくうれしかったです。また、インターネット上にBlawnのソースコードを公開したら、不特定多数の方から「ここにバグがあるから修正した方がいいよ」という指摘をたくさんいただきました。自分では気付けなかった部分のフィードバックが得られ、ありがたかったです。
──賞金の40万円は、何に使いましたか?
上原 Macを買いました。前から欲しかったんです。
大人が方向性を決めるのは、ちょっとつまらない
──上原さんは受け答えもすごくしっかりされています。ご両親の教育方針も聞きたいのですが、どんなふうに育てられましたか?
上原 放任主義です。父も母もあれこれ細かいことを言ったりしません。僕は昔から動いているものを見ると「これってどういう仕組みなんだろう」と気になって仕方ないんです。それで自分で調べてやってみます。両親は「何かに熱中しているな」と見守ってくれています。もし親からあれこれ言われたら、"やらされてる感"が出て面白くなくなるだろうなと思います。
Blawnに関しても、振り返れば一直線に言語開発に向かったわけではなく、プログラミングを始めたらいろいろと興味が湧いてきて、結果的に言語を作りました。人によってはアプリ開発に進むかもしれませんよね。大人が方向性を示してしまうのは、ちょっとつまらないです。子どもに任せた方が良い部分もあると思います。
──それを聞くと、小学校のプログラミング教育必修化が心配になりますね。
上原 プログラミングって魔法みたいなもので、自分とは無縁だと思っている方が圧倒的に多いです。でも、やってみると意外と理解できたり、簡単なクイズゲームくらいならすぐ作れちゃうものなんです。このギャップは、実際にプログラムを書いてみないと埋まらないと思います。だから、プログラミング的思考や簡単なプログラミングだけでも、皆が経験できるのは良いことだと思います。
でも、算数や数学と同様に「つまらないけど仕方なく」となってしまうとさらに溝が深まります。そうならないための工夫は必要ですよね。
──そのお話を聞いていると、数学好きじゃなさそうですね(笑)。
上原 実は数学は苦手です。意外に思われるかもしれませんが。好きなのは現代国語です。文章を書くのは得意な方ですし、それほど勉強しなくても点数が取れるので。
──学校の成績はいかがですか?
上原 数理科目が足を引っ張って、なかなか成績が上がらなくて(笑)。学年順位は真ん中より下です。
AIに仕事を奪われた後の世界
──将来の夢や目標を教えてください。
上原 まだ漠然としているのですが、ITを生かしたことをやっていきたいですね。言語だけではなく、アプリを作るのも好きなので、ITへの興味は尽きないです。
──OSも言語もアプリも作れる、上原さんはすでにフルスタックエンジニアなんですね。今後のITの進化についてはどう考えていますか?
上原 この数十年でITは、8ビットの世界から、クラウドだ機械学習だと急速に発達しました。でも、次の20年も改善の延長で発展し続けるのかというと、違うと思います。例えば、量子コンピューターが実用化されれば、計算速度が上がるとかいう次元ではなく、全く別の仕組みで動くものが生まれ、それをベースとした新技術がどんどん出てくると思います。
──その時、人間はどうなっているんでしょう。
上原 「AIが人間の仕事を奪う」みたいな話、よくあるじゃないですか。でも有名な逸話によると、昔、工場に機械が導入され始めた時だって、働く人たちは反対したけれど、いざ導入したら収益が上がり、事業が拡大し、新たな人手が必要になって雇用が生まれた。AIは既存の仕事を奪うかもしれませんが、自動化された後の世界にも、また新たな仕事が生まれるんだと思います。
問題は、便利になればなるほど、ITを使える人と使えない人の差が広がっていくこと。今でさえ、Amazonで買い物する方がいる一方で、検索の仕方を知らないという方がたくさんいます。ITを知らないだけで選択肢が減ってしまうんです。このことが、近い将来、より深刻な問題を引き起こすのではないかと。その前に、学校教育などでITリテラシーの格差を埋めていく必要があるのではないでしょうか。
──上原さん自身はどうなっていたいですか?
上原 衣食住の煩わしいところは機械で自動化して、自分は好きなことだけやっていけたらいいなと思います。
──根っからのエンジニアですね。今は何が一番煩わしいと思っていますか?
上原 労働ですかね。学校教育が終わったら働いて食べていく、今はそれが当たり前ですが、自動化によって労働すら取っ払えたら、本当に好きなことだけやって楽しく生きられるんじゃないかなと思います。
注)U-22プログラミング・コンテストとは
次代のITエンジニアの発掘・育成を目的に1980年に経済産業省主催としてスタートし、2014年に民間に移行。以降はコンテスト主旨に賛同する協賛企業支援のもと、実行委員会主催として開催を継続、 2019年に通算40回目を迎えた。https://u22procon.com/(外部リンク)
インタビューを終えて
天才中学生がいると聞いて、どれだけ鋭いオーラを発しているかと思いきや、利発さとゆるさが同居する謙虚な好青年だった。言葉には含蓄があり、まるで40代のアナリストと話しているかのような安心感。学校でもTwitterでも「気楽にふわっとやっていきたい」と上原さんは語っていたが、能あるタカは爪を隠し切れないようだ。(酒井真弓)