
Why Mozilla Matters - gkanai
https://brendaneich.com/2013/02/why-mozilla-matters/
======
blumentopf
I have a hard time believing Brendan's pledge to diversity given Mozilla's
non-support for Gecko embedding.

There's a number of Gecko-based browsers, e.g. Camino, and they've left their
users in the lurch by ending support for Gecko embedding:
<http://caminobrowser.org/blog/2011/#mozembedding>

Mike Pinkerton has for years been voicing rightful criticism that Mozilla is
focussing on Firefox and nothing else, see e.g. this interview of 2006:
<http://mozillamemory.org/detailview.php?id=7277>

If Mozilla really wants diversity, why haven't they made an effort to make
Gecko attractive for embedding, thus providing an alternative to WebKit?
Instead they've done the exact opposite.

~~~
fpgeek
> If Mozilla really wants diversity, why haven't they made an effort to make
> Gecko attractive for embedding, thus providing an alternative to WebKit?

I think Mozilla's announcement makes their reasoning fairly clear:

[https://groups.google.com/forum/#!topic/mozilla.dev.embeddin...](https://groups.google.com/forum/#!topic/mozilla.dev.embedding/c_NMcO-N8wo/discussion)

My summary is:

\- The old embedding infrastructure was difficult to use and expensive to
maintain

\- It was also a technical dead end

\- Better embedding infrastructure depended on complex architectural changes
to Firefox

\- Firefox is Mozilla's bread-and-butter, in terms of visibility, influence
and revenue

\- Mozilla has ambitious goals and does not have infinite resources

Forget for a moment that we're talking about Mozilla, Firefox and Gecko
embedding. In a different context, what would you do?

~~~
batgaijin
Yeah I think it's worth it once we have the rust-based one.

I mean come on, Firefox isn't even distributed in 64-bit as an official
option. It's really on it's last legs waiting for the next gust to carry it.

~~~
zobzu
Chrome is 32 bits on Windows, by the way. Suppose it's on it's last legs too,
uh!

Oh and that
[http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/lates...](http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-
trunk/firefox-21.0a1.en-US.win64-x86_64.installer.exe)

~~~
arkem
64 bit Chrome on Windows is a possibility, Justin Schuh is working on it
[https://plus.google.com/u/0/116560594978217291380/posts/d93X...](https://plus.google.com/u/0/116560594978217291380/posts/d93Xj6biuxi)

------
rurounijones
Well that seemed like a very well-reasoned and well-written article without. I
found myself nodding along with a lot of it.

The part about there not really being "One Webkit" is the bit that stuck out
for me since it seems (warning: generalization ahead) most outsiders (even
web-developers based on articles and comments I have observed on HN) do
believe that Webkit is mostly one engine worked on by one basically happy
family of corporate sponsors.

------
noahl
I might be behind the times, but the thing that was by far the most
interesting to me was Servo [0]. He's absolutely right - all of the current
rendering/JavaScript engines are going to need significant work to take
advantage of massively-parallel hardware in the next few years. (I say this
after seeing the work required to port ordinary CPU code to CUDA. OpenCL
should be similar.) The idea of Mozilla not just switching to WebKit but
actually trying to leapfrog it to a new, even better rendering engine is
awesome.

[0] <https://github.com/mozilla/servo>

~~~
steveklabnik
And of course, with servo being written in Rust, that makes it doubly
interesting.

"To make an apple pie from scratch, you must first create the universe." -
Carl Sagan

------
mindcrime
Mozilla had their shot at being the leading edge browser, and, heck, maybe
they even were for a while. But at some point in the history of Mozilla /
Seamonkey / Firefox they started to care way too much about "market share" and
started treating IE as though it was the target. Discussions about
implementing new standards or new features ended with "but IE doesn't do
that", etc.

And then Mozilla became very inimical towards the idea of implementing forward
looking things, and giving ideas a chance to win or lose in the "marketplace"
(not a perfect metaphor, but whatever). Remember the debacle over mng support?
The argument basically reduced to "nobody's using it" at a time when no
browsers supported it. And nobody was going to use it, until some browser(s)
did support it. But IE didn't, and IE was the target. Oh yeah, there was some
argument about the size of the code, etc., yada yada, but even when the
developers reduced the size of the mng code dramatically, it was still
rejected.

Mozilla leadership never seemed willing to try and _lead_ and expect IE to
begin to see Firefox as the target. XForms? Mozilla absolutely should have
implemented XForms properly. The one place they did actually get "ahead of the
curve" a bit was SVG, and - while still hardly dominant - SVG has finally made
into IE.

Honestly, while Firefox is a great product in many ways (I'm using it to
compose this post) I think it has fallen short of what it could be, and one
reason for that - IMO - is an overly dogmatic, top-heavy leadership model and
lack of willingness to incorporate feedback from the larger OSS community.

~~~
tedmielczarek
You're trying to make a technical argument and referencing MNG and XForms. I'm
really not sure where you're going with that.

~~~
mindcrime
The point is that it doesn't f%!@#ng matter... Mozilla, at one time, tried to
foster this idea that they were the "browser for developers" and had this
notion of implementing new technologies and letting them fight it out in the
marketplace, yada yada. But they didn't actually do that. They made heavy-
handed decisions about what technologies would or wouldn't "win", mostly based
in trying to replicate IE. And now they're still talking about "innovating
faster" blah, blah, and I'm still not buying it.

Mozilla has shown little interest in _leading_ in terms of browser innovation,
from what I've seen. Of course, the argument now has probably changed from "IE
doesn't do that" to "Chrome doesn't do that", but whatever...

Edit: Also, just to be clear... I'm not saying Mozilla never do anything
innovative. They were, for example, one of the first, if not _the_ first,
browsers to support MathML. They were also early to the SVG party. I just
think they fell short of what they _could_ have been, if they'd been more
aggressive towards incorporating new things. _shrug_

------
NinjaWarrior
If you don't like monocultures, you shouldn't have hated plug-ins. And Firefox
OS should allow users to install browsers other than Firefox.

I'm very sad that not only Flash 11 but also Silverlight and Unity Web Player
are all doomed by the enthusiasm of the "open" standards. Therefore, I feel
that current Mozilla is full of hypocrisy.

And Mozilla, you must implement the Web Audio API ASAP. Without this, all
interactive "HTML5" demos with audio will be developed only for WebKit
browsers. "We innovate early, often"? I don't think so.

~~~
padenot
The Web Audio spec is more a user manual than a spec, to be fair. We are
implementing the API at the moment, but the spec is so unclear that it is
impossible to implement it properly. We have a couple things done and working,
though.

And about "We innovate early, often", keep in mind that we had a counter-
proposal to the Web Audio API, that we implemented. The W3C has chosen
Google's instead of ours, and I believe that the fact we are late to implement
this particular spec is quite normal.

~~~
graue
So why did the W3C choose Google's audio proposal? Was there some kind of
political wrangling going on there or were there purely technical reasons?
I've wondered about that for a while.

~~~
doublec
The Google proposal was more full featured than the Mozilla Audio Data API. It
provided more functionality baked in vs having to implement it in JS. This was
considered important for mobile devices.

Mozilla countered with another proposal, the Stream Processing API
([https://dvcs.w3.org/hg/audio/raw-
file/tip/streams/StreamProc...](https://dvcs.w3.org/hg/audio/raw-
file/tip/streams/StreamProcessing.html)) but this was a bit too late.

Another advantage of the Google proposal was they had a spec and
implementation from the start. The Mozilla proposal had a wiki page write up
and an implementation and I don't think there was as much effort put into
promoting it as Google did into theirs.

------
tjansen
When you still need to explain why Mozilla matters, despite a market share of
~20%, I guess it's already doomed...

Practically nobody uses a browser, or any other product, only to "fight
monoculture". It may be an honorable goal, but a product needs compelling
advantages beyond that.

~~~
robotmay
The reason I use Firefox over Chrome is mostly down to memory usage with a
large amount of tabs open. Chrome really starts chugging when you get over 40
tabs (and it's a pain to organise them too). It also has some really weird
caching problems which you only seem to stumble upon if you're doing a lot of
web development.

~~~
Xion
That's a bit ironic. I remember not so long ago I've heard many people who
switched to Chrome were deeming Firefox "memory hungry". I haven't heard
similar complaints about Chrome up until now.

~~~
mhd
Firefox improved quite a bit with the more recent rapid release cycle. And
don't forget the "organise" part. Once you get beyond a certain amount of tabs
in a window, the usual tabbed arangement shows its weakness -- and at this
point, you probably need something like XUL to expand the GUI, what
Chrome/Safari have to offer in this regard just doesn't seem to cut it.

TreeStyle Tabs is basically my #1 reason why I'm sticking with Firefox.

~~~
kanzure
> TreeStyle Tabs is basically my #1 reason why I'm sticking with Firefox.

Tree Style Tabs is, of course, one of the greatest things ever to happen to
Firefox. It's on the list immediately after FireBug.

These days, I have been switching over to xmonad (and other simple window
managers). Instead of using tabs inside of a browser, I use windows for each
page. Next, I have a global key binding (C-o) that brings up windows as I type
out tags which I can set with C-j. This way, I don't need tabs anymore, and I
don't need impossibly long lists. I can just type the thing I want. C-o mdn,
done. C-o google, done. C-o gmail, done. C-o irssi, yep.

I am still trying to figure out if this is better than constantly seeing a
list of open tabs.

~~~
mhd
That's a bit similar to the way I did it way back when Firefox came out. One
of the early window managers that supported this, probably pwm. And it does
work quite okay as a simple tab substitute for most applications.

For browsers, I would need some kind of hierarchy support, though. A bit
harder to do in a window manager, but then you'd have it for all kinds of
applications. Maybe even combine it with some additional exposed information
-- so without support you manager your hierarchy yourself, but if there's an
easy way to get a buffer list, the top-level would be from the wm, and the
second level from that list.

I would need some kind of display for a browser, though. I'm fine with on-
demand buffer lists in editors (and actually turn off sidebars when I use
Sublime), but for my browsing habits I'm better off with a list that's always
visible.

------
acdha
For me the question for the larger web community boils down to this: we
benefit as a whole when there are multiple high-quality browser engines but
the implementors do not directly receive a significant share of those benefits
(i.e. Opera implemented some things, helped the standards improve, and 99% of
the web didn't benefit until the corresponding WebKit or Gecko
implementation).

If we want that to change – particularly for ambitious projects like major
security or parallelism improvements – it seems like there has to be some way
to bring the scale back to the level where a small group can effectively enter
the field.

------
mtgx
I wonder if Mozilla plans on rewriting Firefox with Rust. Would that be too
big of a task for Mozilla? They should also make the decision if they stick
with Gecko or not at that point.

~~~
zobzu
They are developing them in parallel. Since rust is still an experimental
project (the language isn't even finalized) it wouldn't make sense to replace
firefox with it _now_.

So there is no "at that point" decision. Firefox+Gecko codebase is here to
stay for a few years.

------
anotherevan
As soon as I saw the headline that Opera was switching to WebKit, I thought,
"I bet I know what announcement Mozilla will be making on April first..."

------
Nitramp
> [...] Don’t get me wrong. I am not here to criticize WebKit. [...]

Well, no. The whole "Thoughts on WebKit" section of the article spells out
problems with WebKit that do not exist in Mozilla-land; most people would call
that criticizing.

Which is perfectly fine (how would you write this article without critically
comparing the different projects), but please be honest about it and spell it
out.

~~~
sixbrx
I might not be at the party to drink the spiked punch, but that doesn't mean I
won't partake a bit...

------
skatepark
Mozilla -- and Brendan Eich specifically -- have held back the web as a
platform for years.

Brendan Eich is myopically focused on the DOM and JavaScript monoculture --
rather than the underlying potential of the web: a standardized and completely
open application platform.

I assume this is due to his own vested interests and personal investment as
the author of JavaScript, but it has been incredibly damaging to the web as a
whole. For Google to push anything forward (NaCL, PNaCL, dart), they need at
least one other major browser vendor to join them. Apple and Microsoft have
vertically integrated native application markets, and have no reason to
further the development of the web. That leaves Mozilla.

If Mozilla genuinely cares about providing an open application platform (ala
Firefox OS), they'll put Brendan Eich out to pasture and focus on moving past
his stranglehold on JavaScript+HTML.

~~~
azakai
> For Google to push anything forward (NaCL, PNaCL, dart), they need at least
> one other major browser vendor to join them. Apple and Microsoft have
> vertically integrated native application markets, and have no reason to
> further the development of the web. That leaves Mozilla.

Yes, but Mozilla still needs to be convinced that the new technology makes
sense for the web. Mozilla collaborates with Google on lots of new things for
the web (WebRTC, see recentl HN stories on interoperability between Chrome and
Firefox there, Web Intents, etc. etc.), but it does disagree on NaCl for
example.

~~~
skatepark
Yes, but: Mozilla disagrees because Eich disagrees, and Eich disagrees because
he's built his entire career on top of his invention of JavaScript.

Is there really anyone other than Eich -- producing ANY platform -- that
thinks that JavaScript is the correct baseline virtual machine to target?

Breakdown of low-level targets:

Google: Native, NaCL, PNaCL, Dalvik

Apple: Native, LLVM (eg, for OpenGL feature emulation).

MS: Native, CLR

Oracle: JVM, Native

Mozilla: JavaScript

~~~
kevingadd
An alternate explanation that doesn't involve a fantasy world where Brendan
Eich issues oppressive decrees from his throne of skulls:

Maybe Mozilla dislikes NaCL because there's actually a lot wrong with it?

~~~
skatepark
> _An alternate explanation that doesn't involve a fantasy world where Brendan
> Eich issues oppressive decrees from his throne of skulls ..._

Eich is the CTO and sets the technical direction for one of the four major
browsers. The browsers can only move forward standards in cooperative with one
another.

This isn't a fantasy world.

> _Maybe Mozilla dislikes NaCL because there's actually a lot wrong with it?_

Then maybe they could propose a solution to the problem other than adding more
JavaScript? Mozilla also dislikes standardized bytecode and virtual machines:

<http://www.aminutewithbrendan.com/pages/20101122>

~~~
pcwalton
What would a standardized bytecode bring to the table over asm.js?

To me the choice is between more convenient encoding format for the bytecode
and backwards compatibility with all browsers, and going with the latter
sounds eminently reasonable to me. The x86 bytecode encoding is really ugly
too (look at those one-byte-long binary coded decimal instructions), but the
survival characteristics of backwards compatibility are undisputed...

~~~
skatepark
> _What would a standardized bytecode bring to the table over asm.js?_

A better technical solution and lower development friction throughout the
entire stack. The hackiness of the web already introduces an enormous amount
of cumulative friction, and asm.js just adds more.

People have been asking for a solution -- and working on them -- for 5+ years,
and Eich has consistently replied that such a thing is unnecessary. In many
respects asm.js is an admission of defeat, in that it's not standard
JavaScript (it's a strictly designed subset), and they are attempting to tune
it to the purpose of providing a standard bytecode format, while still being
able to claim that it is JavaScript.

In the same period of time, entirely new and proprietary mobile platforms have
emerged and eaten a huge portion of the application market's mindshare and
marketshare.

Perhaps it's time to stop listening to someone who can't think outside his own
box, and instead choose a technology that is actually well-suited to the
problemspace.

> _To me the choice is between more convenient encoding format for the
> bytecode and backwards compatibility with all browsers ..._

That could be achieved by generating JS from the bytecode, which would turn
the problem into a temporary one that disappears as browsers are updated,
instead of yet another time and resource draining wart on the web platform.

Human readable JavaScript "byte code"? Seriously? This is the kind of
backwards thinking that left the door wide open for native mobile apps to own
the market.

I would _love_ to be able to target the web instead of proprietary platforms,
but the technology stack isn't there and won't be as long as people like Eich
are running the show, and remain fixated on what worked for _web documents_ as
the solution for what will work the future of web _apps_.

~~~
pcwalton
"In many respects asm.js is an admission of defeat"

Going with a worse-is-better solution for the purposes of backwards
compatibility is always an admission of defeat. But it's a very practical one.
It's an admission of defeat that has made Intel and Microsoft billions, for
example.

"while still being able to claim that it is JavaScript."

But it is JavaScript. The ECMA-262 spec says how to interpret it.

"That could be achieved by generating JS from the bytecode, which would turn
the problem into a temporary one that disappears as browsers are updated,
instead of yet another time and resource draining wart on the web platform."

And then Web developers have to ship two binaries. Foisting the problem of
backwards compatibility onto Web developers for the sake of making a nicer
bytecode parser doesn't seem like a win to me.

~~~
skatepark
It's the users that pay the cost, instead of the developers. Mobile is winning
the app war for a reason.

------
OGinparadise
IE does MS bidding. Chrome does Google's bidding.

So, I hope Firefox stays and I hope that the $1 billion Google gave them
doesn't change their priorities.

~~~
fpgeek
Just because Google gave them $1 billion doesn't mean it impacts their
priorities (see: Apple and the rumored billions Google gives them for being
the iOS search engine placement). It also matters what other offers are on the
table. I bet Microsoft would be willing to pay plenty for Bing placement in
Firefox. Both Mozilla and Microsoft clearly considered the possibility
seriously (remember Firefox with Bing?).

Also remember that, initially, Firefox's Google contract expired without being
renewed. Instead, the renewal came a few weeks later. At the time there was
plenty of speculation that Google was letting Mozilla twist in the wind.
Considering how much Google came back with, it certainly looks like any
twisting went in the other direction.

~~~
OGinparadise
That's why I said I hope, money does have a way to corrupt things. Sometime it
starts as a noble thing: "let's do this one thing because it's a necessary
evil..."

 _(see: Apple and the rumored billions Google gives them for being the iOS
search engine placement)_

Yeah but Google is trying, hoping and praying to destroy Apple's 50-Billion-
in-profit business.

~~~
graue
I disagree with your last statement. The most convincing explanation I've seen
of Google's motivations with Android is that Android is a hedge in case Google
is locked out of other platforms. They make money from people using Google
services, regardless of whether the services are used from an iPhone, iPad, or
Android device. Google and Apple certainly compete in many areas, but Google
isn't trying to "destroy" Apple's business, nor is that even realistic.

------
byefruit
Clearly Mozilla matters to Brendan Eich because without it he would struggle
to find somewhere to meet his atleast $500k/year[1] pay package?

Mozilla's board are accountable only to themselves. It's a personal playground
and cash machine for Baker and Eich.

[1]
[http://thetruthaboutmozilla.wordpress.com/2007/12/22/analyzi...](http://thetruthaboutmozilla.wordpress.com/2007/12/22/analyzing-
mozilla%E2%80%99s-2006-financials/)

~~~
BrendanEich
I know, don't feed the troll, _ad hominem_ arguments are fallacies on their
face, and all that.

But so that there is no confusion on the part of readers who haven't been
around the block, or around the valley, and therefore might be taken in by
your libels, here's a personal testament:

You (byefruit) may be young, and/or not in my Silicon Valley job market. Look
at my peers of around the same age as me. Many are independently wealthy.
Those at executive or C-level (Chief of...) positions make similar salaries,
not counting stock options from public companies which generally remunerate
them to a much greater degree.

I'm not looking for a new job, but I get head-hunter contacts often enough.
From the non-startups, the promised packages are as good or better in terms of
salary. Doing a startup would mean a reduction in exchange for more founders'
equity.

I have had invitations and targeted recruiting pitches from Google starting in
2002 and running up to this year. Had I gone in 2002, I would be set for life.
I'm not independently wealthy, in spite of a decent salary for someone at my
age and level.

Getting Firefox out, restarting JS standardization, helping build Mozilla,
competing with Chrome, starting Mozilla Research
(<http://www.mozilla.org/research/>), launching Firefox OS -- these add up to
hard work, as hard as I've ever done save for the crazy Netscape days in
1995-6. This is especially true lately with lots of travel, which is not easy
on my wife and small children.

Meanwhile, open source means living in a fishbowl, and Mozilla with its
mission and people-first social movement roots means finding a business
structure that doesn't loot our brand or screw volunteers by trying to cash
out via an IPO or acquisition.

The structure that we chose was a U.S. 501(c)(3) Foundation, with IRS approval
up front, but then with IRS reneging after a couple of years, followed by a
fight to deny us our status and tax our early revenue that had been declared
tax-free at the time by that same agency.

In the course of this "package audit", I had the joy of a personal IRS audit,
which I passed cleanly (I defended myself). And Mozilla prevailed on the
question of its public benefit status.

I don't live in Atherton or Palo Alto. I don't drive a fancy car. I'm in a
house built in 1960 that was enlarged in the '70s but is modest by any
standard (and very messy right now!).

So, do you really think I am just in this for the money?

This is not a boast, it doesn't make me great or even good. Like most who have
some years of sustained work and credit/blame on their backs, I am little by
myself. I'm much less than some truly great people who work for a good cause
for no more, and often a lot less, than I make.

I am 100% sure that I could not persuade most of Mozilla's top talent of
anything if I were merely an empty suit adding no value and sucking a big
salary.

So it is just galling to hear your spin on thetruthaboutmozilla, which by the
way seemed in that 2007 piece to say that I was worth every penny (not that
I'm giving it any credence :-|).

If I'm right that Mozilla matters, then it matters no matter what I make or
where I go. If I'm valuable to Mozilla, then my staying will help. I have to
consider that too, in negotiating compensation.

"Know thyself" is as important now as it was at Delphi in ancient Greece. I'm
not at Mozilla to make money. I'm here to make the web better for everyone,
users, developers, your parents -- without having to face business-agenda or
personal-financial conflicts of interest.

Aristotle and Jesus agreed on this point regarding money (Mammon) vs. "the
good" (God): you can't serve two masters.

So, enough about me. Whom or what do you serve, and why?

/be

~~~
askimto
I serve False Humility!

