Flashにとどめを刺したのはJobsだ
ついに、AdobeがFlashの終了を発表しました。
かつてはPCのほとんどにインストールされ、リッチなWebサイトには必須であり、世が世ならHTML5に代わるWeb標準になっていたかもしれないFlashですが、どこで躓いたのでしょうか?
実は、ネットコマースさんと一緒にやっているITソリューション塾では、2008-9年くらいから「Flashやばいんじゃないか」というお話しをさせて頂いており、数年前くらいからは「Flashはすぐには無くならないでしょうが、長期的にはわからないので、今から作るならHTML5にしましょう」というお話しをしてきました。私にとっては、この日は来るべくして来た、という印象です。
PCではWebブラウザのほとんどにFlashがインストールされていた
Wikipediaによると、Flashが生まれたのは1996年、ベクターデータを使ったアニメーション再生用のプラグインとしてでした。ベクターデータを使うアニメーションというのは、現在もFlashでサポートされていますが、アニメーションをピクセルでは無くベクター(線)のデータで表現するため、データ量が少なくて済みます。1996年当時の遅い回線でアニメーションを送ることができたのです。
この頃HTMLはまだバージョン2くらいで、アニメーションや動画には対応していなかったため、Webブラウザでそれらを再生するためにはプラグインが必要で、Flashはビデオや画面制御の機能を追加しながら高機能化していきます。一方でHTMLは1999年の4.01を最後に進化を止めてしまいました。HTML5が勧告されたのは2014年です。その間、進化を止めたHTMLに代わって先進的機能をWebブラウザに提供してきたのがFlashだったのです。
最初の躓きはWeb2.0
2000年代に入ると、Webブラウザの97%以上にFlashがプラグインとして組み込まれているという状況になり、一企業が提供する技術でありながらほぼ標準の地位を得ていました。Adobeがマクロメディア(Flashの開発元)を買収したのが2005年です。それまでAdobeはW3Cが推進していたベクターフォーマットであるSVGに肩入れしていましたが、Flashが次世代のデスクトップの標準を狙えると考えたのでは無いでしょうか。Adobeはその後、ブラウザ無しでFlashコンテンツを実行できるAIRを発表しています。Microsoftは慌てて独自のプラグインであるSilverlightを開発しましたが、リリースは2007年と、遅きに失したと言えるでしょう。
Webブラウザの機能拡張プラグインは、もうFlashで決まりかと思われた2005-6年、新たな技術が出現します。Ajaxと、それを駆使した新しいWeb体験「Web2.0」です。Web2.0は、Flashなどのプラグインを使わなくとも、Flash並の(当時はまだ機能的には劣っていましたが)機能を利用できたのです。Web2.0を実現したAjaxは厳密に言えば新しい機能ではなく、Webブラウザに元々備わっていた機能をうまく組み合わせて新しいWeb体験を提供できることを「発見」したのです。つまり、その時点で世の中にあったWebブラウザに何ら手を加えること無く利用できたということで、プラグインも必要としない画期的なものでした。Ajaxの機能はその後、拡張されてHTML5へと引き継がれています。
Flashを採用しなかったiPhone
Adobeにとってのもう一つの誤算は、Appleが2007年に発表したiPhoneでのFlashの使用を許可しない、と発表したことです。Adobeは強行にクレームしましたが、Appleは(というかJobsは)頑として拒否しました。この後、Flashの立場は急速に悪くなります。iPhoneがスマホで大きなシェアをとったため、iPhoneで見ることのできないFlashコンテンツをHTML5に置き換えようという動きが起きたのです。スマホ向けサイトからFlashが消え始めました。
2011年、ついにAdobeはモバイルデバイス向けのFlashの開発を中止します。(Android版は作り続けていたのです)この時点でも、PC用ブラウザのほとんどにFlashがインストールされている状況には変わりは無かったのですが、コンテンツ作成側にしてみれば、PC用とモバイル用のコンテンツを造り分けるのは面倒ですし、折しもモバイルファーストの波も押し寄せており、新たにFlashでコンテンツを作ろうと考える人は減少していったものと思われます。
ところで、何故AppleはiPhoneでFlashをサポートしなかったのでしょう? Appleの公式な見解では技術的な問題としていますが、
実は他に理由があるんじゃないか、という話も聞こえてきます。
ここではFlashにバグが多いと言っていますが、Jobsが(かつては仲のよかった)Adobeが主力製品をWindowsに移植し、Macのサポートを後回しにしている、といって不満を持っていた、といった記事も読んだことがあります。また、この記事でも触れているように、代替手段としてHTML5が見えてきていたことも、Jobsが強気に出られた背景にあったものと見られます。
プロプライエタリを許容しない空気
もうひとつ思うのは、やはりインターネットの世界では、私企業の技術を標準的に利用するということに大きな抵抗があったのではないかということです。Flashは、プラグインは無料で配布されていますが、オーサリングソフトは有償ですから、一企業の利益に直結しています。また、Adobeが買収する前のマクロメディアは携帯電話(スマホ前ですね)用にFlashを有償で提供する方針を打ち出し、携帯電話メーカー各社がこれに反発したという経緯もあったようで、「最初は無償とか言っておいて、後で何を言い出すかわからない。」という猜疑心もあったのではないかと思います。
この、プロプライエタリをなるべく排除しようとする考え方は今でもトレンドとしてあり、現在多くの技術がオープンソースで提供されているのは、技術を囲い込むと周りから警戒されて普及が進まない、という側面があるからではないかと考えています。
Flashのサイト、どうするんでしょう?
実はFlashには脆弱性が多く、ChromeやFireFoxなどは一昨年くらいから段階的にFlashコンテンツを表示しないようにしています。2020年のサポート終了以降は一切表示しないようにするようですが、一方で私が心配しているのは、未だにFlashのままでコンテンツを配信しているサイトが沢山あることです。
まあ、作ってしまったものを変えるのは大変だとは思うのですが、このままだとどこにも表示されなくなりますし、ChromeやFireFoxでも既に表示されていないかも知れないし、そもそもiPhoneでは最初から全然表示されません。それなのに、なぜそのまま放ってあるんでしょうか? 今無頓着にFlashを使い続けているサイトが、2020年までにはなんとかしようと思っているとはちょっと考えにくいのでは、と思います。WindowsXPサポート終了時のような騒ぎが起きないことを願います。。
#なんとなくですが、Flashが残っているサイトって、自治体などが一瞬だけ頑張って作ったサイトに多い様な気がしています。(もう予算が無いから直せない、とか)