• はてなブックマークに追加
  • Yahoo!ブックマークに登録
明日に向かってプログラめ!!PARTV vol.6/10 金子勇@SkeedCastは、根っからのプログラマ!
エンジニアなら無関心ではいられないファイル交換ソフト「Winny」。その開発者である金子勇さんは現在、P2P技術を使った新たなサービス開発に携わると同時に、講演者やパネリストとしても活躍しています。その素顔は快活で気さくで、本当にプログラマっぽいプログラマでした。
(取材・文/総研スタッフ 高橋マサシ 撮影/関本陽介)作成日:08.12.12
プログラミングとは、表現手法である
金子勇さん
金子氏の技術の集大成という「NekoFight」の画面
金子氏の技術の集大成という「NekoFight」の画面
技術顧問を務める株式会社ドリームボートのHP
技術顧問を務める株式会社ドリームボートのHP
いかに手を抜いてコア開発に注力するかがポイント
プログラミングを始めたのはいつごろですか?
 
小学校5年くらいです。もともとは天文少年でして、天文雑誌の『スカイウオッチャー』なんかに、「火星の表面を描く」みたいなソフトのソースコードが載っていたわけです。興味わきますよね。一方で私は昔からメカが好きで、いろんなものの分解と組み立てをしていたんですが、パソコンだけはそれができなかった。ソフトウェアですから当然なのですが、だったらと頭の中でその動きを考えていたんです。
 いわば「脳内プログラミング」ですが、それを実験しようと電気店に置いてあるパソコンにコードを入力したのが始まりです。PC-8001から入りましたから、パソコンの第一世代ですね。実際に動いたプログラムを見て、「考えたよりも動作が遅いなあ」というのが実感でした(笑)。
 
金子勇さん
テープに記録して、また電気店にやってくるようになったとか?
いえいえ、即日プログラミングです。ゲーム好きの友人がいて、企画書とビットマップのキャラクターをもってきて「ゲームを作ってくれ」というんですね。電気屋さんはお店の宣伝になるからと「開発」を認めてくれていましたから、BASAICでプログラムを組んで、デモして、できたゲームで遊ぶと。これを一日でしていました。
 ですからソフトは保存していなかったのですが、プログラマって自分の書いたコードは覚えているものじゃないですか。同じゲームは別の日でも作れましたし、少しずつ違って別のゲームができたりするのも面白かったり。中学に入るとポケコンでの開発が中心になり、授業中にポコケンでずっとプログラミングをしていたのですが、ハードが非力なのでアセンブラで組んで、それでも遅い(笑)。

 こんなことを続けていたせいか、中学時代に「プログラミングを極めた」感じがしてしまいました。疲れるから仕事にはしたくないと思いましたが、将来どうなるかわからないので、高校では1年のときに情報処理技術者認定試験(当時)の第二種、2年で第一種を受けて合格しました。それから大学に入るのですが、ちょうどC言語のコンパイラが出てきたころで、おまけにUNIXに出合って大学に寝泊まりするようになり、やっぱりプログラミングをしていました(笑)。
これまでどんなゲームを作ってきたんですか?
 
いちばん多かったのはアーケードゲームをPCで再現させるものです。例えば、テトリスは見た瞬間に「これ作れるじゃん」と思ってその日のうちに完成させました。ただ、ろくに見ないで作ったので回転が逆だった。大学の仲間に広めて、練習して、ゲームセンターの本物でハイスコアに挑戦したら、皆が「お前の作ったのと動きが逆でできないぞ」なんて騒ぎになった(笑)。
 ミサイルが追尾するフライトシミュレータ「NekoFlight」も大学時代に初めて作りました。シミュレーションの研究室にいたんですが、担当の先生が航空学科の出身でその手の本が多くあり、「ミサイルの追尾アルゴリズム」みたいな本を参考にしたんです。私は、計算で動かすけど自分の予想と違った動きをするような作品が好きですね。
 
フライトシュミレータの「NekoFlight」
フライトシミュレータの「NekoFlight」
「NekoFlight」と同じくHPで公開されている格闘ゲーム「NekoFight」も面白いですね。
2000年くらいから開発している、私の技術の集大成です。CGも物理演算もAIも入っていて、地味な作品ではあるのですが、プログラムを面白がっていただければと思います。反発や重力などを物理演算で計算していて、体の重心を計算して歩いていますし、キックをすると頭が下がり、重力を切るとふわっと浮くでしょ。
重力を切った状態の「NekoFlight」
重力を切った状態の「NekoFight」
 ただ、CG周りは箱にしています。プログラミングはメリハリをつけることが大切で、コアとなる部分はしっかり作るけど、それ以外はいかに手を抜くかがポイントだと思っています。周辺部分に100倍の手間がかかるならそれを100分の1に圧縮して、その分をコア開発に注げばいいんです。
 商用ソフトでは無理な方法でしょうが、私の場合は趣味のプログラミングですし、何より「今までにないソフトを発表すること」が目的。最低限のGUIは作るけどアイデアのほうが大事だと思います。
ADSL環境を求めた引っ越しが「Winny」を生む
その後、茨城大学大学院を修了されて日本原子力研究所に入所されています。どんなご研究を?
大型計算機を使ったシミュレーションや可視化などの技術です。同時にいくつかのフリーウェアを開発・発表していたのですが、これらを商品化したいという話があり、二足のわらじを履くのはちょっとな、と思ってその会社に入社しました。福岡の会社だったので、東京オフィスで実質的にひとりで3DCGソフトの開発をし、一方では情報処理推進機構(IPA)の未踏ソフトウェア創造事業でシステム開発に参加します。私はいくつかのことを並行して進めるのが好きなようです(笑)。
それから東京大学に?
未踏で担当PMだった竹内郁夫先生とのご縁もあって、2002年1月に東京大学大学院情報理工学系研究科の特任助手になりました。4月からは「東大版未踏」ともいうべき「戦略ソフトウェア開発」というプロジェクトに参加します。開発の中心は学生で、私たちは彼らを指導しながらも開発に携わるという形です。
そのころに「Winny」を開発されたとか。
 
はい。プロジェクトを始めたころって、結構ヒマなわけです(笑)。それで4月1日に「こんなもの(ファイル共有ソフト)ができたらいいな」とネットの掲示板に書き込んで、開発を始めて、5月6日に掲示板で「Winny」を公開しました。
すごいスピードですね。開発のきっかけは何でしたか??
引っ越しですかね。
 
「NekoFight」の画面
はい?
東大に移るときに引っ越しをしたのですが、前の地域では干渉が理由でADSLが引けず、回線がISDNだったんです。ですから引っ越しする先ではADSLが使える環境にするぞと必死に場所を探しまして、当時としては大容量のネットワーク環境が整いました。これをどう使おうかと考えているときに、はやりのP2P技術を使ったソフトができないかと思いついたのです。
 それまではP2Pも知りませんでしたし、ネットワーク自体もさほど詳しくありませんでした。シミュレーションでも使いますし、グリッドコンピューティングも多少はかじっていましたが、そんな程度です。逆に素人だから実現できたアイデアかもしれません。
金子勇さん
ただ、Winnyは違法なファイル交換に使われたり、情報漏洩があったりして、金子さんも起訴されてしまいます。一審が150万円の罰金刑で、今は控訴中ですね。
当然ですが、違法行為に使ってほしくて開発したわけではないです。また、裁判については支援してくださる方が多く、弁護費用の寄付金も集まりました。そんな皆さんからの応援で今の私があると思います。本当に感謝しています。
 罰金を払えばいいじゃないかという声もありますが、こんな前例を作りたくない気持ちが強いのです。もしP2P技術がネガティブに見られてしまうなら、私としても非常に残念なことですし、プログラマの方々にはご迷惑をおかけしたのかもしれません。申し訳なく思っています。
金子さんが謝ることではないと思いますが……今のお仕事はP2Pを使った技術開発ですね。
Winnyの技術がベースになっていますが、プログラム的には全く別なコンテンツ配信サービスの「SkeedCast」です。ここでも支援してくださる方々がいて商用化を進めています。
 Winnyは完成したソフトウェアと思われていますがいわば基礎技術で、その特徴は容量の少ない回線でも動画などの重たいデータを配信できることです。それをビジネスに応用するという試みです。低価格で安定していて、高速で柔軟性もあるP2P技術には、高い将来性があると思っています。
趣味はやっぱり「プログラミング」です!
ところで、ご趣味は何ですか?
先ほども言いましたけど機械系が好きなんです。PDAなどのガジェットも集めたりしていますが、最近ではカメラ。動作が好きなので撮影に凝っているわけではなく、散歩がてら外に出て、夕焼けを撮影するくらいですけど。
 それと飛行機がかなり好きです。たまに用事で大阪に行くのですが、伊丹空港に降りていくときのバンクがたまりません。
すごく怖いですよ。
速度が下がって横滑りを始めるのがまたいいんですよ。航空機の理論から読み込んでいますし、技術を信頼していますから、怖さなど全くありません。それに私は物事を理解する場合、自分でプログラムを組んで動かしてみて、その結果で初めて納得するタイプなんです。
 物理的な対象が多いのですが、何かに興味をもつとその動くメカニズムが気になりますよね。それを理解するためにプログラムでシミュレーションを組むんです。飛行機もシミュレーションソフトを作っていますし、高校時代にはビリヤードの動きをシミュレートしました。
どういう具合にですか?
 
どのように打つとどんな回転がかかってどれくらいの速度で球が進むか、それが別の球に当たってどのように反射するかなどです。摩擦は難しいので床の沈みなどまで正確に考慮しませんでしたが、キューで押されたことで一定の摩擦が起こるくらいの計算はしていました。シミュレートできなかったのはジャンプのときの動きだけです。
 ただ、マイコンの8ビット機なので浮動小数点以下は使えず整数で計算していて、なかなか大変でした(笑)。いちばん好きな趣味はプログラミングなのかもしれません。
金子さんにとってのプログラミングとは何でしょう?
私にとっては「こんなことを考えたよ」という表現であり、そのための手法です。プログラミング以外の方法でしゃべるすべを知らないのです。そしてやっぱり、多くの方に楽しんでもらえるソフトウェアを開発したいと思っています。
 
金子勇さん
金子勇さん 金子勇さん(38歳)
1970年生まれ。茨城大学大学院博士課程修了後、日本原子力研究所に入所。3Dシミュレーションなどの研究の傍ら、自作のフリーウェアを発表する。その後商品化のためにエクス・ツールス株式会社で開発作業に携わり、2002年4月から東京大学大学院情報理工学系研究科特任助手として「戦略ソフトウェア開発」に参加。同年5月にファイル共有ソフト「Winny」をインターネットの掲示板で公開。2004年5月に著作権法違反の疑いで起訴される。2006年12月に罰金刑を受けて控訴し、現在係争中。株式会社ドリームボートで技術顧問を務める。
  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する
高橋マサシ(総研スタッフ)からのメッセージ 高橋マサシ(総研スタッフ)からのメッセージ
非常に失礼な言い方で恐縮ですが、世間からの金子さんのイメージって「暗い」だと思いませんか? 全然違います! インタビュー中は始終笑顔で初めて会ったとは思えない雰囲気、しかもその笑顔が魅力的。本人は「プログラミング以外にしゃべるすべを知らない」と言うけれど実はおしゃべり(笑)。支持したくなる根っからのプログラマですよ。

このレポートの連載バックナンバー

明日に向かってプログラめ!!

編集部が注目したプログラマの趣味やハマりごとにフォーカス。彼らの人間性とその魅力を通して、プログラマライフをクローズアップします。

明日に向かってプログラめ!!

このレポートを読んだあなたにオススメします

SE兼マンガ家よしたにの「理系の人々」

理系的?ビンゴゲームの楽しみ方/理系の人々

SE兼マンガ家よしたにの「理系の人々」結婚式の二次会で恒例のビンゴゲーム。当たっても当たらなくても、自分なりの楽しみ方があれば面白いかも……毎度おなじみ…

理系的?ビンゴゲームの楽しみ方/理系の人々

明日に向かってプログラめ!!

酒徳峰章@なでしこは、音楽に目覚めて家具にハマる

明日に向かってプログラめ!!言語デザイナーと呼ばれる人は日本にも何人かいますが、「日本語プログラミング言語」をつくったのは酒徳峰章さんが初めてではないでしょ…

酒徳峰章@なでしこは、音楽に目覚めて家具にハマる

本社に加えて東京にもネットワーク開発の拠点を設立!

ユーザーの心を動かす任天堂のネットワークエンジニア

今ゲーム専用機でネットの活用やネットワーク対応によるユーザー同士のコミュニケーションが活発化している。その開発最前線で活躍する任…

ユーザーの心を動かす任天堂のネットワークエンジニア

オオスガさん!の生みの親、日本語プログラム、18歳天才現る

天才かオタクか?未踏ソフト出身者たちは我が道を往く

未踏ソフトウェア創造事業(以下未踏)はエンジニアにとっても狭き門。しかし、応募テーマが採択されれば開発に向けて担当PMや補助金が…

天才かオタクか?未踏ソフト出身者たちは我が道を往く

Rubyまつもと氏、Palmscape奥氏、うたうたう新井氏のホンネ 

生まれた時からプログラマ☆興味と感性で世界を驚かす

プログラマは下流工程、早く抜け出してSE、そしてPMへ上がりたい……なんて思っているソフトエンジニアの皆さん。その考えは間違って…

生まれた時からプログラマ☆興味と感性で世界を驚かす

やる気、長所、労働条件…人事にウケる逆質問例を教えます!

質問を求められたときこそアピールタイム!面接逆質問集

面接時に必ずといっていいほど出てくる「最後に質問があればどうぞ」というひと言。これは疑問に思っていることを聞けるだけで…

質問を求められたときこそアピールタイム!面接逆質問集

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP