小飼弾のアルファギークに逢いたい♥

#10 jQuery/Mozilla John Resig

この記事を読むのに必要な時間:およそ 3 分

小飼弾氏(撮影:武田康宏)

小飼弾氏(撮影:武田康宏)

弾:デスクトップアプリだと,UNIXのsleep()注7みたいなものがますます欲しくなるかも。

Resig:JavaScriptの実装の中でsleep()の問題点というのは,それがスレッドの存在というものを示唆すること。今までとの断絶が大きい。Google GearsではWorker Poolという方法でそれらを雑ながらも扱ってはいるけど。

弾:デスクトップアプリケーションのもう一つの懸念事項として,ローカルファイルをどういうふうに対応させるかがあります。

Resig:ローカルファイルとかデータベースなどにアクセスしてPrismを使用することはできると思います。

弾:その機能のためのライブラリあるいはオブジェクトは提供してるんですか。データベースオブジェクトのような,あるいはファイルシステムオブジェクトのようなものを。

Resig:Firefoxは階層的なしくみで作られているのですが,その下のほうにXPCOMというものがあります注8)⁠ファイルシステムとかデータベースに対するインタフェースもそこで提供されています。

弾:XPCOMのようなフレームワークはAdobeやMicrosoft,Googleのベンダが出してくるものと共有されますか。

Resig:今のところ,MozillaとAdobeの間では相当協力していて,特に新しいTamarinエンジン注9では相当努力を進めています。

弾:クロスライセンスというのは普通にあるもので,デスクトップアプリケーションでもそういう状況はすでに始まっていますね。

Resig:デスクトップアプリケーションを構築するためにWebテクノロジを使うのであれば,それだけ多くのHTML,CSSやJavaScriptなどが多く使われるようになってくるというのは興味深い点です。

弾:jQueryはデスクトップアプリケーションに使われると思いますか? 使わない理由はないと思いますが。

Resig:まったくそのとおりで,Adobe社と彼らのAIRというデスクトップソリューションで協力していて,jQueryの互換性を保証しようとしています。

jQuery UI

弾:jQueryのロードマップは?

Resig:jQueryのコアに関しては短期的なバグフィックスのロードマップしかありません。しかし新しいプロジェクトであるjQuery UIに関しては,インタフェースのウィジェットというものを通じて,機能性をより増やそうとしています。

弾:jQuery UIで提供するカッコいい機能を2つほど何か挙げてもらえますか?

Resig:たいへんいいドラッグ&ドロップのシステムがあります。モーダルダイアログとか,ソータブルリストのようなものが,いくつかその上に構築されています。

すごいエンジニア

弾:ただのエンジニアとすごいエンジニアを分けるものは何でしょう?

Resig:あえて機能を追加しないことができる人がすごいエンジニアだ思います。すなわち具体的に何が重要であり,かつ何が重要でないかということを理解したうえで,その理解のもとで最適化ができる人。というのは,自分のJavaScript APIの経験からすると,その行動を小さく収めれば収めるほど,それだけ保守がしやすく,学びやすく,しかも文章化しやすいんです。

弾:半分は賛成です。なぜ半分なのかというと,それで機能が足りないと,そのギャップを埋めるためのオレ実装が乱立するから。今のJavaScriptみたいに(笑)。

Resig:確かに(笑)。

弾:JavaScriptやFirefox以外に関心があるのはどんなことですか?

Resig:Javaの上で構築されている,可視化のためのビジュアライゼーションのための言語である,Processingというものに最近興味があります。非常に関心を持ったのは,Processingで構築していく中で,非常に美しいものを作り上げているわけですから,芸術としてのコンピュータ科学ということです。

読者へのメッセージ

弾:最後に,本誌読者に対するメッセージをお願いします。

Resig:いつも自分が興味を持っているものに集中し,いつも自分の開発は自分の関心ある内容に対して最適化を加えるように,ということです。自分の経験からすると,自分が楽しく,しかも興味を持てる内容に集中すれば,それだけ自分はもっとハッピーです。

Firefoxのマスコット,フォクすけと一緒に

Firefoxのマスコット,フォクすけと一緒に

注7)
指定した時間だけ遅延させるコマンド。
注8)
Mozilla内で使われているクロスプラットフォームのコンポーネントオブジェクトモデル。
注9)
Flash 9に組み込まれているActionScript VM 2のソースコードをAdobeが提供し,Mozillaがホストするもの。Firefoxの次世代JavaScriptエンジンSpiderMonkeyで使われるほか,ActionScript VMの一部としてAdobeによっても利用される。

著者プロフィール

小飼弾(こがいだん)

ブロガー/オープンソースプログラマー/投資家などなど。ディーエイエヌ(有)代表取締役。1999~2001年(株)オン・ザ・エッヂ(現(株)ライブドア)取締役最高技術責任者(CTO)。プログラミング言語Perlでは,標準添付最大のモジュールEncodeのメンテナンス担当。著書に『アルファギークに逢ってきた』(2008年5月,技術評論社)。ブログは『404 Blog Not Found』

URLhttp://blog.livedoor.jp/dankogai/

コメント

コメントの記入