
山田さんから、若いのにすごいエンジニアがいると紹介をされた。実際に今から会う古橋さんのサイトを見てみた。どう考えてもベテランのにおいがする。というか、作っているものが何となくではあるが、若者が取り組めるようなテーマに思えないのだ。少し混乱しながら取材当日を迎えた。
古橋:今、21歳です。未踏には2年前に選んで頂きました。
VNN2:VNNインタビューで、最年少ですね!古橋さんのブログを拝見すると、ネットワーク通信プロトコルで使う高速なシリアライズ形式「MessagePack」や、統合ディスクレスネットワーク基盤システム「VIVER」、音声チャットサービス「festivoice.net」、ペア・プログラミング支援サービス「Partt!.org」など、基盤系のソフトからアプリケーションまで幅広く開発をされているようですが、どのあたりが得意分野なのでしょうか?
古橋: 一番の関心は、基盤系のミドルウェア・ツールですね。特に、分散システムのインフラ領域です。たまに気分転換でWebサービスを作ったりもしますが、基本はあくまで基盤系です。
VNN1:若い開発者には、Webサービスなどのアプリケーション開発者が多いと思うのですが、古橋さんのように10代の頃から基盤系のコアな技術開発をされる方は少ないですよね。そもそもどんな変遷を経て、現在に至っているのでしょうか。
古橋:初めてプログラミングをしたのは中学生の時ですが、本格的に開発するようになったのは高校生になってからです。部活で科学部に所属していたのですが、その時にあるデータの分布を視覚的に表現したいと思い、プログラミングをしたのがきっかけです。
VNN2:もしかして、中学生で初めてプログラミングしたのはWindows上ですか?
古橋:はい。Windows上で、GUI環境でしたよ。
VNN2:そうかー、MS-DOSとかではないんですね(苦笑)。その後、基盤系のソフトにはどうやって繋がっていったのですか?
古橋:高校生のときに、ある高校がKNOPPIX を使ってクラスタリングシステムを組んだという記事を見て、「負けられない!」と思いました。KNOPPIXはCD-ROMからブートできるLinuxだったのですが、ソースコードをずっと読み込んでいくうちに、徐々にOSが起動する部分のスクリプトにたどりつき、これならネットワークブートするシステムを開発できるのではないかと思いました。このアイディアが、未踏で採択されたVIVER というネットワークブート型の分散システムに繋がっています。
VNN1:高校生の時に未踏に繋がる開発を始めていたというのはスゴイですね。ところで、現在はどんなシステムの開発に注力されているのでしょうか?
古橋:今は「えとらぼ」という会社でアルバイトをしており、そこで開発しているkumofsという分散ストレージに最も注力しています。今月号のUNIX Magazine(注:2009年4月号)でも特集されていますので、是非読んでみて下さい。「えとらぼ」は、mixiの元CTOである衛藤バタラさんが設立された会社なのですが、そちらにKLabの勉強会で知り合った方がいらっしゃって、声をかけて頂きました。
VNN1:kumofsはどんなシステムなのでしょうか?
古橋:複数のマシンにまたがる分散ストレージシステムで、いわゆるkey-valueストレージです。用途はWebサービスのバックエンドを想定しています。Google File SystemやAmazon Dynamoなどが有名ですが、クラウド環境における基盤システムと言えます。kumofsもスケールアウトで性能向上を図れるアーキテクチャになっており、特徴的なのは、システムを停止することなくストレージサーバを追加・削除できるところにあります。
Google File SystemやAmazon Dynamoの技術は、論文などでは公開されていますが、ソースコードが公開されていないため、一般の開発者にとっては詳細を知る機会がありませんでした。一方、kumofsはオープンソースで公開予定ですので、技術者の方には是非試してみて頂きたいですね。
VNN2:それは楽しみですね。ところで古橋さんが他に注目されている技術にはどんなものがあるのでしょうか?
古橋:個人的にはSSDに注目しています。従来は大規模な分散システムではハードディスクへのアクセスがボトルネックとなっており、ここをいかにチューニングするかの勝負だったわけですが、SSDの登場により、ハードディスクへのアクセスではなくCPUやネットワークがボトルネックとなることが予想されます。また、Webシステムではネットワークのレイテンシが問題となってくるかもしれません。
つまりSSDの登場により、ボトルネックとなる箇所が変わるため、その解消のために新しい技術が必要となってくるのではないかと感じています。
VNN1:世間ではクラウド環境によるアーキテクチャのパラダイムシフトが注目されていますが、SSDも実はかなりのインパクトをもたらすのかもしれませんね。ところで、古橋さんが凄いと思われる技術者ってどんな方ですか?
古橋:具体名を挙げるなら、mixiの平林幹雄さんです。平林さんが作られたデータベースマネージャであるTokyo Cabinetは、kumofsでもバックエンドで使っています。「汎用化ではなく特化」ということで、とことんチューニングされており、やっぱり速いです。平林さんは、徹底的にソフトウェアの質で売り込んでいき、結果としてユーザに受け入れられているところが凄いと思います。
VNN1:古橋さんは、生まれながらの生粋のエンジニアという印象を受けますが、プログラミングをしていないときの古橋さんは、趣味ではどんなことをされているんですか?
古橋:デザインに興味があり、いろいろなツールを使ってデザインワークをしています。VIVERのロゴやPartty!.orgのロゴも自作したものです。
VNN1:古橋さんが将来的に作ってみたいソフトはどんなものでしょうか?
古橋:うーん。いろいろなものをどんどん作っていきたいですね。間違いなくこの道を追求していくのでしょうが、具体的にどういう会社でどんな仕事をしているのかは想像がつかないところがあります。
VNN1:最後に、次のスゴイ技術者の方を紹介して頂けないでしょうか?
古橋:上野康平さんをご紹介したいと思います。千葉大学の3年生ですが、飛び級をしているので私よりも若いですよ。P2P分散ストレージ「Cagra」を一緒に開発しましたが、非常に優秀な技術者です。
VNN1,VNN2:本日はありがとうございました。
少年のような目をして笑顔で話をしてくれた古橋さん。というか、何年か前まで本当に少年であった古橋さんなのだが、話の内容が大学や企業の研究者の話を聞くようであり、また礼儀正しい丁寧な口調が、我々に大人の印象を与えたのかもしれない。近未来に基盤性能が向上したとき、古橋さんはスケールアウトする仕組みを常に考えて研究をしているように、VNNには感じられた。将来プロとして研究や開発を始めるであろう古橋さん自身がどんなスケールアウトをするのか、楽しみでしょうがない。

古橋 貞之 (ふるはし さだゆき)
Blog: http://d.hatena.ne.jp/viver/
1987年生まれ。筑波大学第三学群情報学類4年。
2006年上期未踏ユース事業にて「統合ディスクレスネットワーク基盤システム」の開発を行う。未踏スーパークリエータに認定される。