HTMLドキュメント内にFlashコンテンツを埋め込む方法として一般的に利用されているのがSWFObjectというオープンソースのJavaScriptライブラリである。SWFObjectを利用すれば、標準的なマークアップまたはシンプルなJavaScriptスニペットを記述するだけでHTMLのWebページにSWFファイルによるFlashコンテンツを埋め込むことができる。今回、SWFObjectの開発者であり、現在はYouTubeにおいてFlash Engineerとして働くGeoff Stearns氏に、同ツール開発の経緯やRIA開発におけるポイントなどについてお話を伺った。

※ 本インタビューは5月末に行われた。小誌ではStearns氏とガールフレンドであるBrandie氏が旅行で日本を訪れた際にインタビューする機会を得た。Brandie氏は広告代理店に務め、実際にSWFObjectをはじめとするFlash技術を業務に活用しているとのことで、インタビューに同席していただいて実際の現場からの意見も聞くことができた。貴重なプライベートの時間を割いていただいたお二人に感謝したい。

Geoff Stearns氏とガールフレンドのBrandieさん

SWFObject誕生のいきさつ

2005年当時、Stearns氏はニューヨークの広告代理店Schematicで、Flashとクライアント技術の開発者として働いていた。初期のバージョンのSWFObjectはその頃に必要に迫られて開発したものだという。同氏の仕事ではHTMLとFlashの両方を同じページ内に埋め込む必要があり、そのためのFlash PlayerおよびFlashコンテンツのデテクションキットとして開発されたのがSWFObjectである。

SWFObjectではFlashの代替となるコンテンツをHTMLに仕込んでおき、Flash PlayerがインストールされているWebブラウザで表示した場合にJavaScriptによってFlashコンテンツをロードする。したがってもしFlashに対応していないWebブラウザでアクセスした場合でも、サイト自身は代替コンテンツによって正常に表示できるというメリットがある。

実は当初は「Flash Object」という名前で開発していたが、"Flash"の名称を使うことが好ましくないというAdobeからの警告に従って「SWFObject」と改名したそうだ。

その後、Bobby van der Sluis氏とMichael Williams氏(故人)の2名が加わり、SWFObject 2.0の開発が行われた。Sluis氏自身は当時UFO(Unobtrusive Flash Objects)という同様の機能を持ったツールを開発/公開していた。Sluis氏はStearns氏のSWFObjectを高く評価し、「せっかくならば協力してよりいいものを作った方がいいだろう」と呼びかけ、開発に参加したとのことだ。

SWFObject 2.0の開発プロジェクトはGoogle Code上にホスティングされ、2008年3月に正式公開された。本稿執筆時点における最新版は6月11日にリリースされた「SWFObject 2.2」である。

プロジェクトを守るためには「NO」が必要

「SWFObjectは最初からOSSで開発するつもりだった」とStearns氏。ソースはGoogle Codeで公開している

現在、SWFObjectの開発はStearns氏とSluis氏に加えてAran Rhee氏、Philip Hutchison氏、 Kyle Simpson氏の5名が中心となって行っているとのこと。ただし、今後はRhee氏、Hutchison氏、Simpson氏の3名が中心になり、Stearns氏とSluis氏はオブザーバ的な立場にシフトしていく予定だという。その理由について同氏は次のように語っている。

「2.2以降は新機能の追加よりもメンテナンス的なアップデートがメインとなるくらいでちょうどいいのではないかと考えています。したがって自分が強力にリーダーシップを取る必要はあまりないと思います」

新機能の追加に積極的でないのは、SWFObjectがその基本となるコンセプトから外れないよう特に気を遣っているからのようだ。それは同氏にOSSプロジェクトをうまくまとめていくコツを聞いた際の回答から伺い知ることができる。同氏の答えは「はっきりと"NO"と言うこと」だった。

「たとえばSWFObjectは小さく、速く、簡単で、多くの人に使ってもらえるようにという考えで開発してきました。これに合わないものに対しては常に"NO!"と言ってきました。それが今のSWFObjectにつながっています。これからもプロジェクトを守るために"NO"の判断をしていくつもりです」