nmi.jp Twitter → @tkihira
ダメなベンチャーキャピタリスト よく使うショートカット windows編

Flashの抱える3つの問題


2012-06-26
Takuo Kihira

この記事は2011年3月5日、私がまだ前の会社を経営していた頃にFacebookで公開した内容です。
当時はExGame(Flash Player on HTML5)の開発に四苦八苦していたので、Flashに対する憎しみが非常に深かったことを付記させてください。


私はFlashが大嫌いです。主に次の3点によるものです。

  • インストールアプリである
  • 仕様が公開されていない
  • 標準化されていない

Flashはブラウザの標準機能ではなく、プラグインという形のインストールアプリです。私はインストールという存在が許せないという思いを常々持っています。インストールはユーザーもしたくないし、開発者だって出来ればさせたくない。ビジネスにおいてお互いにルーズ・ルーズの関係になる、数少ない行為だと思っています。

最近話題になったピグの問題をご存じでしょうか?アメーバのピグというソーシャルゲームの動作環境をFlash 9からFlash 10.1にあげたところ、自分のマシンで動かなくなったと苦情が殺到した騒ぎです。開発者から見て「バージョンアップも出来ないなんて…」と嘆くようでは話になりません。自分のプログラムを動作させるのに、ユーザーの努力を前提とするのは、明確に間違った行為です。

このような理由で、インストールアプリであるというだけで大きな問題であると言えます。プラグインではなくブラウザ標準機能としてサポートされることは、今までもこれからも絶対にないでしょう。

----

次の問題として、仕様が公開されていないという事が挙げられます。あろうことか、Adobeは「仕様書を公開している」などと言っていますが、とんでもない、Adobeがネットで配布しているswf specificationは仕様書としては全然ダメです。必要な情報は全く書いておらず、間違いは沢山書かれています。

たとえば初期化の順番、関数呼び出しのタイミング、そういった基礎的な所ですら全く情報として欠けています。そして堂々と間違いを書いてあり、修正される気配もありません。また、グローバルオブジェクト(BITMAPなど)のAPIに関しては、全くもって公式の情報が一切ないという、本気でとんでもない状況です。

なので、Adobeからライセンスを受ける以外の方法でFlash Playerを作ることは出来ません。私たちはそこにチャレンジしていますが、仕様書がない以上「これで完成した」と言えるタイミングは来ないでしょう。Adobeからライセンスを受ける以外にPlayerを作れないというのは、由々しき問題だと言えるでしょう。

----

最後の問題として、標準化されていないことが挙げられます。標準化されていない規格ですので、Adobeのみの意思によって自由に新しい仕様を追加することが出来ます。Flashを搭載する端末は、それをただただサポートするだけの立場です。GoogleがAndroidをFlashを採用するという行為は、Adobeの意向にGoogleが完全服従するという意味になります。彼らが思想的に終焉を迎えた解りやすい例だと思います。

言うまでもなくWebはHTML5やSVG、JavaScript(ECMAScript)などの標準化された技術仕様に則って運用されています。Adobeとしては、自社の技術を標準化するモチベーションがないのは明らかですが、それがそのまま他のサードパーティがFlashを使ってはいけない理由になります。

以前はFlashでなければ出来ない事がありましたが、今の技術水準ではそのレイヤーをクリア出来るはずです。他に選択肢があるにも関わらず標準化されていない技術を使う意味はありません。Webの将来はAdobeはおろか、誰の支配下にも入らないものであるべきです。

----

Flashは、既に役目を終えた技術です。これからのスマートフォン、これからのPCWebは、それぞれに最適化された新しい技術フレームワークの上で動作することになるでしょう。願わくば自分もその流れの中で、良い役割を果たしたいものです。