My "coming of age" story as a programmer is one where Mozilla played a big part and came at a time before the sort of neo-OSS era that GitHub ushered in. It's been a little over 5 years, though, since I decided to wrap things up in my involvement and called it quits on a Mozilla-oriented future for various reasons.
More recently—but still some time ago, compared to now—in a conversation about what was wrong with the then-current state of Mozilla, I wrote out a response with my thoughts but ultimately never sent it. Instead, it lingered in my drafts. I'm posting it here now both because I was reminded of it a few weeks ago from a very unsatisfying exchange with a developer still at Mozilla when a post from his blog came across my radar, and because, as I say below, it contains a useful elaboration on a general phenomenon not specific to Mozilla, and I find it worthwhile to publish. I have edited it from the original.
It should also be noted that the message ends on a somewhat anti-cynical note, with the implication of a possibility left open for a brighter future, but the reality is that the things that have gone on under the Mozilla banner since then amount to a sort of gross shitshow—the kind of thing jwz would call "brand necrophilia". So whatever residual hope I had five years ago, or at the time I first tried to write this, is now fairly far past gone, and the positivity sounds a little misplaced. Nonetheless, here it is.
First, Mozilla has been running on steam for years. What's going on with Mozilla now is just the culmination of a bunch of bad decisionmaking that has continued because the people helming the Corp had a long enough runway that the negative feedback can't be pinned down irrefutably to anything in particular.
It goes like this: you can do the wrong things but be in a long enough feedback loop that the effects only really start to show themselves some time later. So rather than successfully correlating results to their real causes, what happens instead is:
a) people fool themselves in the meantime that bad things aren't bad, and
b) in the aftermath, when the consequences do start to appear, the temporal offset from the real root cause is so large, and they have so many other things to attribute failures to, that they can (and probably will) go the intellectually dishonest route and pick the thing that is wrong-but-convenient for them to explain it all away, and discount any argument that it was actually the bad things from (a)
Really, that's a sort of general phenomenon that can apply to many situations and not specific to Mozilla. But Mozilla is one of them, so now let's get back to the details that are specific to the case there.
At Mozilla, where the current illness comes from is partly from a lot of new hires who got spliced in without a good understanding of what made Mozilla successful (especially not being able to tell that the Mozilla spirit was a genuine one, and not the same brand of faux, HR-driven enthusiasm that you can encounter in virtually any corporate setting).
And it's partly lots of old hats either leaving, or staying around but resigning themselves to go along with the culture that the new, business-focused leadership brought in (i.e., letting the business folks handle the business problems and the software folks stick to handling software problems).
And then it's partly that the old culture itself really did get some things wrong on their own, like fostering some attitudes that were always dangerous in the wrong mixture. (Mozilla was just able to avoid the wrong mixture for fairly long.) Specifically, one of the things I'm referring to is a sort of persecution complex. Mozilla's persecution complex can be summed up like this:
Because the problems that Mozilla was trying to tackle were so fundamentally us-against-the-world in nature, then to even work on them you had to be able to press on in the face of negativity. Eventually, you're numb to the negativity and develop a default reaction not just to cope with it, but to expect it at every turn, no matter what move you make. So what you do is ignore it, even when it's the kind of negativity that you shouldn't be ignoring.
That is, Mozilla's culture led to a failure to critically distinguish between good bad feedback and bad bad feedback. Which segues us into the other thing.
Despite the picture painted in the part I quoted above, Mozilla even at its prime was never particularly democratic or egalitarian. Decisionmakers did the things they wanted by taking shots (or shooting down other things) while not always giving reasons that entirely sound—essentially running on intuition much of the time. And here's the thing with that: you can actually get away with running on mere intuition so long as the thing that your intuition suggests you do happens to be the right one. But what happens when that fails and you're left totally unprepared for how to work through your problems by taking feedback into account during your decisionmaking?
For example, why are things like FirefoxOS a failure? Why did the battle against H.264 fail? (These are hardly my biggest pet issues; FirefoxOS wasn't even a thing until after I jumped ship, for example, but they're still useful to consider.)
The reasons are different. I suspect, though, that for a scary number of Mozillians past and present, the things they tell themselves to answer this fall into one of two categories (or maybe some mixture of both):
- "the masses weren't backing us"; and/or
- "well, no matter what you do, you'll find that sometimes it comes down to the old rule that you win some, you lose some, and you can't account for that"
Which is to say, in the Mozillaverse there is a fundamental problem with accepting the notion that, strategically speaking, the wrong choice was made—that back at the outset when you might've been able to hear dissent that the approach was a bad one or the problem not adequately understood, that there could possibly exist some assessments or some voices of reason in that dissent that were actually bang-on. (This is a double whammy: at the time, it gets dissmissed almost outright for the reason that, essentially, "everyone has an opinion", and then months or years later when it's evident that it did know better and it the official tack was flawed, it doesn't even get the acknowledgment that, yes, in fact that's the mindset that should have gotten buy-in.) So Mozilla marches onward continuing to use the same reflexive dismissals for criticism, rather than being reflective in these moments and trying to learn how to recognize the "right" kind of feedback so it might be able to use it to avoid mistakes in the future.