悪いのはMozillaじゃなく、エンタープライズ
昨日、何気なくつぶやいた以下のTweetが72人にRTされて、個人的な記録となりました(http://favstar.fm/users/knsmr/most_retweetedを見ると、RT数による私の過去のツイートのランキングが見られます)。私のTwitterのフォロワー数は2400人程度と、それほど多くありませんので、これは結構な数です。共感する人が多かったのかなと思ったので、ここのブログでも共有してみます。
企業の情報部門は「サポート対象ブラウザ」というけど、ウェブってそんな世界じゃなかったのよ、もともと。そこに誤解があったんだし、そんなこと言うなら、ウェブ技術使うのやめてOSのAPIに戻ったら? 10年同じもの使いたいんでしょ。外のウェブの世界に負担をかけるのいい加減にやめたら?
この発言は私自身が感じているところの表明ですが、直前のつぶやきで紹介したArsTechnicaのPeter Bright氏が書いた「Firefox update policy: the enterprise is wrong, not Mozilla」という記事の、大雑把な要約でもあります。
ArsTechnicaの分析と主張は元記事を見ていただければと思いますが、簡単に言うと、こういうことです。
Firefox 4、5のリリースと前後してMozillaが採用した新しいサポート方針について、企業ユーザーから不満の声が上がって来ました。Mozillaは古いバージョンのFirefoxを積極的に切り捨てて、セキュリティパッチの提供を行わない方針としました。Mozillaは、2011年中にFirefoxのバージョンを7にまで上げると発表していて、バージョンアップのペースはグッと上がりますから、急加速した感じは否めません。
これは当然のように企業ユーザーの反発を招きました。業務アプリの多くは、ブラウザについて「サポート対象ブラウザ・バージョン」という形で通常「IE7/8、Firefox 3.5/4」などと限定し、各バージョンについて動作検証などを行うことが多いからです。IE6の市場シェアが未だに高いのは、IE6でないと動かない、あるいは動くかどうか検証されていない業務アプリの存在のために、企業の情報部門がIEのバージョンアップを許可していないから、という理由があります。
ソフトウェアのモジュール化と連携は、インターネットの登場によって加速していると思います。ある機能を果たすために利用するミドルウェアやフレームワークのAPI、外部WebサービスのAPI、ブラウザのDOMやHTMLのAPI、そしてそれらをラップするライブラリ群のバージョンは、もはや固定しようがありません。数が多すぎるし、それぞれに日々進化すべきものだからです。ソフトウェアが稼働する広い意味でのプラットフォームとなったウェブやインターネットは、毎日変わり続けています。「変化(=進化)すると困る」などと言って、特定バージョンのみを想定したソフトウェアを作るのは、もはや間違いなのではないでしょうか。ArsTechnicaのBright氏は、悪いのはMozillaじゃなくて、エンタープライズのほうだと言っていますが、私も同感です。
検証に手間やコストがかかるのは分かります(テストを自動化しましょうよ)。過去の開発の経緯があるのも分かります。しかし、だからといって特定のブラウザを社員や納品先企業に使わせ続け、そのことによって、ほかのWeb開発者やデザイナにコストを転嫁していいわけがありません。
Ruby on Railsの開発でテストの自動化が強調されるのは、Rubyが動的言語で型チェックが弱いからという理由だけではなく、ライブラリのバージョンを常にアップデートしていて、いつどこかが壊れても、すぐに原因を特定して修正できるようにという意味があるかと思います。ライブラリが変わらなくても、気付けばFacebookのAPIが変わっているかもしれません、それがウェブですよね。jQueryのバージョンは固定したほうがラクに思えるかもしれませんが、いずれ外の世界とのズレが大きくなって、どこかでビッグバン移行することになるでしょう。固定することのリスクは大きいし、固定部分から腐っていくのがウェブなんじゃないかと思います。この意味で、私には業務アプリの多くは腐っているように見えます。
もちろんこういう話はバランスの問題なので、バージョンを固定するのが合理的なケースも多々あるでしょうけど、たくさんRTしていただいた背景には「もう、エエ加減にせえよ!」という現場の皆さんのフンマンがあるのかなと思ったのですが、いかがでしょうか。
コメント
アラファイブ
Firefoxで、バージョンを上げて動かなくなる事が有るのでしょうか?
まだしもIEなら8までで動いていたJavascript(隠れたチェックボックスと
イメージを紐付けて、イメージのクリックでチェックボックスのイベントを
起こす)がIE9で動かなくなり、会社にIE9をインストール出来るPCが一切ない
ので手も足も出ないので困った(今も困り続けている)、
とかなら沢山有ると思いますが、
Firefoxではその様な事は聞いた事も経験した事も有りません。その様な
Mozillaだからこそ言える事では無いでしょうか?