Firefoxはミニマムか?

「『Firefox=本体ミニマム+as you like』な設計思想」みたいな認識って一部でどういうわけか支持されてるんだけど、個人的には正確ではないと思ってる。

そもそも何でこうした認識がまかり通っているかというと幾つかの理由があると感じる:

  • 「肥大化した」Mozilla Suiteとの対比
    • そうは言ってもメーラーとHTMLエディタとブラウザの統合スイートと、ブラウザを対比するっておかしいと思うんだけど
  • Firefox 3頃までの、本体側への「わかりやすい」機能追加の少なさ
    • 単に仕切り直ししたから最低限の機能の整備に時間かかってただけという気もしないではない
  • Firefox 2の頃のアドオンの大隆盛
  • 以上の認識+2ch Firefoxスレのテンプレの「アズユーライク」の言葉

Firefox初期の主要開発メンバーである、Ben Goodgerの(現存する)数少ないインタビューとか回顧録を参照するとわかるんだけど、彼はFirefoxについて、便利なブラウザを目的としている*1とか、Mozilla SuiteやNetscapeのUIをゴチャゴチャしたものと見做して、それとは違うものを作ろうとしていた*2ような事が伺える。
もちろんアドオンに関する発言も少なからず有って、そこにはFirefoxでアドオンという存在が(たまたま)生まれた経緯についても書いてたりする*3。とはいえ、そこでもアドオンを中核に据えるみたいな話は無く、アドオンマネージャなどの道を整えたという話しかしていない。あくまでも使えると便利だからという理由で組んだような語り口だったり。

(とはいえ情報が少なかったりと、直接彼に問い合わせないと真実のほどはわからないのは確か。これが理由で、存在しないということを証明しないといけなくなっている)

本当に本体をミニマムにして他の全部をアドオンで賄おうとするならば、本体の機能なんてIE6程度でいいわけだし、アドオンのAPIだってもう少しstableなものとして整備されててもいいはずだし、一部のアドオンの存続を危うくするような破壊的な変更の投入だって、そう簡単には入れないはずなんだよね(でも過去には相当な数の破壊的な変更が入っているし、アドオン開発者は地味に苦労している)。

それでもFirefox 1.0が検索バーやポップアップブロックを実装していたというのは、それはユーザーにとって便利な機能を実装するブラウザというものを志向していたからなんだと解釈してる。
卵と鶏の関係にも近いんだけど、ユーザーが何を便利と思い何を望むかだって、時代のトレンドによって当然変わる。

例えば、Firefoxがシンプルとされていた頃の05年前後のWebって、(ごくごく一部の変態ユーザー以外は)タブを数十も開くほどWebサービスも充実していなかったし、今にくらべればコンテンツも少なかった。
それに対して今のWebはサービスもたくさんあるしコンテンツも豊富にある。そういう時代を見越す形で、(実装はともかく)Panoramaという、ユーザーが開けるタブの数をスケールする仕組みが本体に搭載されたというのは僕は正しい進化の方向性だと思うし、現在進行形で開発が進められているSocial APIの本体投入も、 SNSを使うユーザーが増えているという現実を鑑みれば至極真っ当なものだ。本体に開発系のツールが投入されているのだって、競合がみんな搭載するようになっている以上、時代の要請とも言える。

ミニマムを志向するんだったらUIの出来なんて、アドオンで拡張の余地がたくさんあればいいだけだし、Firefox 3.xの頃にMozilla Labsなどで未来のタブの姿なんて研究する意味は殆どない。UIを作るというのは悪く言えばユーザーの操作を型に押し込んでしまうのだから。

たとえ、本体は可能な限りミニマムであろうという傾向のようなものが存在していたとしても、それは当時のハードウェア的な制約から来るものだろう。今やハードウェアの性能は大きく向上し、コモディティ化してしまった。それに合わせてブラウザの存在価値も当時に比して本当に大きくなっている。上の繰り返しになるけれども、その存在価値に見合うだけの機能を備えなければならないし、機能追加のコストとして支払うハードウェア資源は従来よりもずっと安上がりになった。
ちなみにブラウザに必要とされる機能が増え、高速化が求められるようになってからは、どのブラウザも従来使われていなかったハードウェア資源(具体的にはGPUのことなんだけど)を積極的に使用するようになった。05年頃の感覚でブラウザのメモリ使用率やCPU使用率を語るのは、今やナンセンスでしかない。

僕はFirefoxが「本体ミニマム+as you like」な設計思想で成立しているとは思っていない。個人解釈になるけれども、おそらくあるのは「便利なブラウザを作る」ことなんだろう。本体だけでもそれなりに便利にするけれども、それで足りないところは個々人にアドオンに頼ってもらう。そういう姿の便利なんじゃないかなと思ってる。

「最近のFirefoxは余計な機能追加ばかりしている。余計に肥大化している。設計方針を間違えている」と玄人ぶって言う人は、どこがどのようにダメなのか説明できると思うんだけどね。「重い」とかそういう曖昧な言葉で煙に巻くんじゃなくて。