上野康平――3次元空間を統べる若き天才プログラマー:Pre New Generation Chronicle(2/2 ページ)
バイナリアンたちを紹介していく「New Generation Chronicle:バイナリアンスレッド」。第1回の井上さんからバトンを引き継いだのは、史上最年少の18歳で天才プログラマー/スーパークリエータの称号をIPAから贈られた上野康平さんだ。
日米で開発者のスキルに差はないが……
―― 大物ハッカーといえば?
Rubyのまつもとゆきひろさん。ハッカー理想像を実践されているところにあこがれます。技術力だけをみれば、まつもとさんより優れた方も多く存在されるかもしれませんが、日本人であそこまで自分の信念を持って行動されるハッカーってなかなかいないんじゃないかなと思いますし、自分でしっかりとしたコミュニティーを運営されていることなどもリスペクトしています。Ruby 1.9で過去の遺産をバシバシ捨てているのは素晴らしいなぁ。ああいう覚悟がC++にあれば、もう少し違っていたでしょうが。
―― 自分より年下で注目しているプログラマーは?
具体名を出すのは避けますが、国内だと、「3Dライブラリ/人工無脳をバリバリ書いてしまう高校生」の方、「簡易コンパイラを書いてしまう自称15歳」の方などなど、若い方でもすごい開発者はたくさんいます。米国に行くと、もう少しビジネス指向が強くなる気がします。
開発者の能力としては差はないと思いますが、英語の壁というものはそれなりにあるかもしれません。事実、CGの世界にかんしていえば、物理ベースレンダリングの実装が行えるようになるレベルの書籍は日本にはほとんどありません。そうなると、最先端の技術を母国語でバリバリ扱える方がやはり有利になってしまい、有能な国内の開発者でも、英語が堪能でなければ、ある一定のレベルで止まってしまうか、翻訳コンテンツ待ちといった状況になってしまいます。
こういうと、英語教育を若いうちから、といった議論に走ってしまいそうですが、実際には教える側のレベルも問われるわけで、そこを議論しなければそれが本当に有用なものになるのかは分かりません。わたしにしても、米国に引っ越してから一般クラスに移るのに2年くらい掛かったほど言語センスがないと自覚してますが、英語が出てきたときに拒否反応を示さずに読み進めさえすればそれほど恐れるものでもありませんでした。
―― 自身の研究で、ハードウェア的な知識はどの程度必要ですか? また、それをどう習得していきましたか?
Webプログラミングなど、高レベルなプログラミングに比べると、基本的なコンピュータのハードウェアの知識は必要なのではないでしょうか。CPUの内部構造とか、メモリのアクセススピードはどのくらいだとか知っておいても損はありません。
わたしも最近になって、コンピュータの基礎論、数学知識は非常に重要だと痛感しています。これらの知識が抜けていると、天井が見えてしまうというか。最新のトピックを追うのも重要ですが、それに気を取られてデータ構造とかアルゴリズムとかをおろそかにしてしまうと、やはりどこかで痛い目に遭うのだと思います。
あと、バイナリアン的なことをいうなら、機械語関連の知識にも目を向ける意義はあります。例えばメモリのキャッシュミスでどれくらいのパフォーマンスロスがあるのかなど考えたり。重要なのは、それらを放置しない方がいいのではということで、最近のPHP周りの議論をみていても感じるのですが、動けばよい、というのも確かにそうなのですが、ちゃんと勉強するのも大事なことだと思います。
―― インターネットは10年後、どのように進化していると思いますか?
今よりもさらにクライアント端末が多様化していると思います。インターネットは今以上にライフライン化しているでしょうし、次のパラダイムはインターネットではないだろうと思うので、あまり興味がなかったりします。
むしろ、量子コンピュータの登場に期待しています。圧倒的な演算性能を持つ量子コンピュータの登場で大打撃を受けそうなのがシミュレーションと、シミュレーションに深く依存するような分野でしょうね。もちろんCGも含まれます。CG業界はこれまで、パラダイムシフトとなるような経験をしたことがないといわれているので、気になるところです。
―― 今、数あるITベンダーの中で「いい仕事してるなぁ」と思うベンダーは?
Googleかな。やはり超巨大グリッドは偉大です。将来はGoogleに行くのかとか聞かれますが、Googleは完成してしまっていますからねぇ。分散システムを一から作るというのなら喜んで参加したいですが(笑)。
Googleの分散システムってかなり特殊な制限の下でアルゴリズムを記述しなければならないので使いにくいんですよね。MapReduceは頭がMapReduceで思考していないと使いづらいんですよ。だからレンダリング向けのMapReduceに相当するものを未踏で開発したのです。最近レンダリングのコミュニティーでは、「CPUでやってるレイトレイシングなどをMapReduceでやるのは難しいんじゃないの?」「GPU関連で使われているアルゴリズムを移植する方がうまくいくんじゃないか?」とか話をしています。
―― 大学卒業後はまた米国に戻りたい?
そうですね。こういうと、「日本から人材が流出」とか書かれそうで誤解を受けそうなのですけど。大学院に進学するにしても、例えばCG関連であれば、ハリウッドと技術連携ができている研究室は日本にあるか? 真の意味で産学連携ができている研究室がどれほど存在するか? とか考えるとやはり米国に目が向きますね。というか、レンダリングの世界に比べればこの世界は小さなものですよ。そんな小さな世界でナショナリズムとかいっていても仕方ないと思うのですけど、どうですか?
上野さんの質問完全版は、こちらで公開しています。併せてお楽しみください。
関連記事
- 井上恭輔――電子工作より生まれし巫女萌えバイナリアン
ソフトウェアとハードウェアの両方に精通し、世の中を変革しようと牙を研ぐバイナリアンたちを紹介していく「New Generation Chronicle:バイナリアンスレッド」。第1回は、スーパークリエータの井上恭輔さんに聞いた。 - 小飼弾――35歳からのプログラミングこそ無上の至悦
豊富な実績で多くの開発者を先導する存在になりつつある人物を取り上げる「New Generation Chronicle:マエストロスレッド」の第1回は、ブログ「404 Blog Not Found」などでも知られる小飼弾氏だ。 - 斉藤のり子――エビちゃんOL(自称)の華麗な開発生活
LL系の開発者を紹介する「New Generation Chronicle:Web2.0系スレッド」。その最初を飾るのは、81世代の斉藤のり子さんだ。 - amachang―メランコリックな渋谷系Javascriptハッカー
常に明るく振る舞うその裏で、理想と現実のかい離を常に思い悩み続けてきたamachang。幾つもの伝説を持つ一風変わった渋谷系ライフハッカーに「New Generation Chronicle」のWeb2.0系スレッドを継承していただいた。 - ハッカーとの遭遇
- ratpoison――X用コマンドラインインタフェース
コマンドラインの効率性とXの良さを組み合わせられる、ratpoisonというGNU Screenに似たキーボードドリブンインタフェースを持つウィンドウマネージャを紹介しよう。作業に集中したい方にはお勧めだ。
Copyright © ITmedia, Inc. All Rights Reserved.