「将来のために、学生時代に何をやっておけばいいだろう」
多くの学生がこのテーマについて思い悩み、答えを探しています。数ある選択肢のなかから「プログラミング」を選び、自分の人生を変えたのが、今回の主人公である立命館大学 情報理工学研究科 大学院1年の片岡秀公さんです。
彼は大学3年生のときプログラミングに魅了されてから猛勉強を続け「未踏IT人材発掘・育成事業(以下、未踏)※」に採択されるほどの成長を遂げました。
彼がプログラミングをはじめたきっかけや、学生がプログラミングをする意義について聞きました。
※……突出したIT人材の発掘と育成を目的として、ITを活用して世の中を変えていくような日本の天才的なクリエーターを発掘し育てるための事業。片岡さんは2016年度の未踏スーパークリエーターに認定された。
凝り性の大学生が、プログラミングに出会った
――片岡さんがプログラミングをはじめたきっかけは?
片岡:大学3年の後期に研究室に配属されたんですが、そこで先生に「暇だったらプログラミングをやればいいんじゃないか」と言われたことがきっかけです。それまでは本格的にはやっていなくて、授業のプログラミング演習を受けていたくらいでした。
――言われてからは、すぐプログラミングにのめり込んでいったんですか?
片岡:はい。僕、やりはじめたら熱中するタイプなんです。例えば高校時代にはずっとオンラインゲームにハマっていて「全国のプレイヤーランキングで1位になるにはどうしたらいいだろう」と考えながらずっとやり込んでいました(笑)。
――凝り性なんですね。
片岡:それから、のめり込めた別の要因として、大学や研究室がプログラミングに理解があり、機材などに潤沢にお金を出してくれたからというのも大きかったと思います。
快適に作業できるように新しいパソコンや複数のディスプレイを用意してもらえたり、機械学習に用いるGPUを積んだサーバを用意してもらえたりしました。
その環境のもとで、大学の先輩や先生の研究の手伝いとしてコードを書いていたんです。
――1日のうちどれくらいの時間書いていましたか?
片岡:当時は1日6〜7時間くらいです。でも、どんどん時間は増えてきています。未踏に受かってからは1日8〜10時間くらいになって、今だと起きているときはほとんどコードを書いています。
――すごい努力量ですね!
片岡:書けるようになってくると楽しくて。作ってみたいもののアイデアがたくさん出てくるんですよ。
野菜の鮮度をITで選別する『VEGFR』
――未踏に応募してみようと思ったのはどうしてですか?
片岡:大学の先生が未踏のOBだったんです。その人に「おもしろいアイデアがあるなら、未踏に行って成長してこい」と言われて。考えて出てきたのが『VEGFR』というアプリケーションのアイデアでした。
――『VEGFR』はどんなものなのでしょうか?
片岡:音を用いて農作物の鮮度を計測できるアプリケーションです。
――情報理工学部なのに農作物!? アイデアを思いついたきっかけはなんですか?
片岡:スーパーの野菜売り場などで主婦の方々などを見ていると「良いトマトはどれだろう」と悩んだ末に、僕から見て美味しくない特徴を持ったものを選んでいることがよくありました。それに違和感を持つようになって。
――「本当は他のトマトの方が美味しいのに」と。片岡さんは、良いトマトの選別が得意なんですか?
片岡:ウチは実家が専業農家で、トマトをメインに作っています。その家庭でずっと生活していると、どれが美味しいトマトでどれがそうでないのかがわかるようになるんです。
でも、見極めの感覚を身につけるには長い時間がかかります。僕よりもお父さんの方が上手いですし、おじいちゃんはもっと上手いです。
その感覚を身につけるのに何十年とかかるのならば、ITを使って一発で処理できるようにした方が早いんじゃないかと考えました。それが『VEGFR』のコンセプトに繋がっています。
――開発で大変だったのはどういった部分ですか?
片岡:データ取集ですね。『VEGFR』は機械学習を用いて「どういった(音の反響の)特徴を持ったトマトがどれくらいの鮮度か」を学習させているんですが、その過程って凄まじく地道で。
――どんなことをやるんですか?
片岡:人間が鮮度を選別した後のトマトを1つひとつ手に取って『VEGFR』で測定用の音を流しては、どんな音の反響になるかをひたすら機械に覚えさせていくんです。その作業を、トマト何百個分も続けていました。
――気が遠くなりそうですね……。
片岡:でも、だからこそ完成したときの達成感はすごくありました。鮮度の良し悪しが正確に識別されたときは「やっときたか!」と思いましたね。自分主体でソフトウェアを作って達成感を味わえたことで、もっと面白いものを開発しようという気力も湧いてきました。
『VEGFR』をきっかけに「自分が興味を持ったものをどんどん作ろう」と考えられるようになったんです。
「自分の強みをどう活かすか?」を考える
――それ以外に、未踏のプロジェクトを経て得たものはありますか?
片岡:未踏に選出されたメンバーのなかには、大きく分けると「プログラミングスキルが高い人」と「アイデアを出すスキルが高い人」がいます。僕は後者の人間だと理解できました。
――片岡さんも充分にプログラミングスキルは高いと思うのですが、それ以上にすごい人がいる、と?
片岡:世の中には信じられないくらいの天才プログラマがいます。「いったい、今までどれくらいの時間をプログラミングに費やしてきたんだろう」と恐ろしくなるくらいの。上には上がいるというか。
それを間近で見たからこそ、自身なりの“強みの活かし方”を考えるようになったんです。アイデアを伝えるためのプログラミングをするというか。
――というと、具体的には?
片岡:良いアイデアを出せることはすごく重宝されます。でも、そのアイデアをプレゼンなどで誰もが理解できる形で説明するのって、本当に難しい。トークスキルのすごく高い人ならばできるかもしれないですけど。
そこで、どうやったら自分のアイデアをうまく伝えて人の心を動かせるかを考えたときに「(サービスの)プロトタイプを作るためのプログラミングスキルを身につけよう」と思ったんです。
要するに、実際に動いているものを誰かに見せた方が、情報が伝わりやすいじゃないですか。誰かがそれを見て「良いじゃん」と言ってくれれば、人を集められますし、面白いプロジェクトも実現できます。
世の中には、さまざまな分野で高いスキルを持った人がたくさんいます。その誰かが僕のアイデアに共感してくれることで、一緒に良いものを作れればいいと思って、今は色々なプロジェクトに携わっているんです。
アルバイトよりも、プログラミングをやろう
――学生がプログラミングを学ぶことのメリットは何でしょうか?
片岡:論理的思考を学べることだと思います。
プログラミングってルールを守って記述しないと絶対に動かないですし、どんな動作にするかをロジカルに考える必要があります。そういった要素を、プログラミングを通して学べるんです。
また、これは極論ですけど、アルバイトをするよりもプログラミングを書いた方が絶対にいいと僕は思っています。
プログラミングはたくさんの求人サイトやクラウドソーシングなどで案件の募集をしています。単価も高額なことが多いですし、仕事をする時間や場所にも縛られません。
もちろん納期はありますが、それを守れば仕事のやり方は自由です。コーディングが速い人なら「1か月以内に15万円で作ってください」という案件を3日で終わらせて、日給5万円にすることだってできます。
それに、プログラミングの仕事を受託すると責任感が生まれるんです。なぜなら、複数人でやるプロジェクトも1人でやるプロジェクトも、納期や品質を守らなければ他の方々に迷惑がかかってしまうから。その経験を通して、プロ意識が芽生えるというか。
――では、この記事を読んでいる学生にも、プログラミングを薦めたいですか?
片岡:はい。気になる人は早いうちにプログラミングをやった方がいいと思います。僕は高校時代に戻ってプログラミングをやりたいくらいです。
僕は大学3年からスタートしたので、高校1年から始めれば5〜6年くらいプログラミングの経験が増やせていたはずです。それくらいできていたら、今頃プログラミングサイボーグになれていたと思うんですよ(笑)。
取材協力:片岡秀公