why is that an “or” question?

Recently, we’ve seen a fair bit of energy around the idea of mozpad, a group of “platform consumers” who are rallying together to advocate and work for the future of different aspects of the Mozilla application platform. I’ll admit that my first reaction to this was a sort of mildly wounded skepticism; I’m the guy responsible for how we support developers, and it’s easy to take it a bit personally when someone throws up a flag for supporting developers and people flock to it — over there. That’s the great, if occasionally uncomfortable, thing about Mozilla, though: discomfort on my part can’t and doesn’t keep people from helping to determine their own technological destiny in the project, and as with other such projects, the mozpad members are able to choose how to engage their own projects with the rest of the Mozilla community and contribute to our shared technological resources. As I came to realize after the second or third time that Matthew Gertner told me, mozpad is a great opportunity for people building applications on the XUL/Gecko/Mozilla platform to organize loosely around their own concerns, and share resources to improve things that are asymmetrically important to their collection of apps vs. Firefox or the web platform. At the end of the day, as before and always, individuals and organizations will contribute to the project in ways that best suit their own missions, whether that’s furthering the principles of the Manifesto or building a business or changing how people communicate or something else.

It’s easy to get caught in tricks of language or simplifications that make it sound as though a group like mozpad is something different from Mozilla, or has to interact with other parts of Mozilla in certain ways. mozpad is inevitably and inherently a part of the Mozilla project, as many of the people who have self-identified with their work have been in their own right before. If having their own web site and explicit group identity will help them organize and focus better on how to solve the problems they face in their use of the Mozilla platform, that’s a fine path to take, and all the world will benefit from it. The Mozilla community is riddled with nested communities of varying structures and sizes, organized around languages, applications, technical problems, services, platforms and shoe sizes. Some of them persist for years, while others disperse after a few days. That mix of structured protection of shared resources and free-wheeling project agility to solve problems is really quite powerful, and well worth the occasional bumping of heads when people’s expectations don’t quite line up at first.

For my part, I’m committed to helping mozpad achieve their goals of improving life for application and extension developers, because, really, that’s always what I’ve been about anyway. I was mozpad before it was cool! Yeah, that’s it!

calming the XULRunner waters

Mark had it exactly right: Mitchell’s post about XULRunner (and other things) was not an announcement that we are killing XULRunner. It was a statement about what the Mozilla Foundation is planning with respect to some very specific capabilities and deployment plans, due to our analysis of effort and return with respect to our primary mission.

To help people who might have been confused either by the original post or some of the reactions to it, I offer this summary:

  • The Mozilla Foundation will not be working on the a shared, system-wide XULRunner deployment capability in the Gecko 1.9 timeframe. This means that applications which are built on top of XULRunner will need to ship a copy of XULRunner with their apps, or otherwise ensure presence of an appropriate one (version, build flags, etc.). This is, to be clear, what every XULRunner-based application is doing today. Many applications in fact ship with small patches to XULRunner in their distributions anyway, taking advantage of the open source nature of our platform to make different impact/value trade-offs than we do for Firefox, and on their own schedules. This is not to say, by any means, that we do not see the value in a future that includes a universal XR runtime, with appropriate versioning, update, profile-sharing and other wonderful capabilities. It is to say, rather, that we feel the investment required and the risk of destabilization isn’t appropriate for us to undertake directly during this development cycle.
  • The Foundation will very likely not ship a “reusable” XULRunner as part of Firefox 3. While it’s still quite possible that Firefox 3 will be built on top of a private XULRunner, as outlined above, we will likely not take the schedule impact on Fx3 that would be required to make that private XULRunner usable easily by other applications.
  • The Foundation is interested in supporting the production and distribution of “naked” XULRunner builds suitable for application authors to take, customize, and distribute. This is an area in which virtually any member of the XULRunner community (including those who are apparently very invested) can make a very helpful contribution, as members of the Eclipse AJAX group have done already in providing contributed builds. I believe that the SeaMonkey project, which the Foundation supports not through directly-tasked developers but instead through infrastructure and enormous investment in shared platform work, provides an excellent example. XULRunner’s very origin is from “outside the Foundation” in bsmedberg’s early work, and given the presence in the XULRunner community of funded companies like Songbird and Joost, I am confident that both the interest and ability to assist themselves and others in this area are present.

Other important points from Mitchell’s post, which deserve deeper discussion in other posts, include:

  • A desire and commitment to invest in improving interactions with the entire XUL(runner) development community.
  • A continued commitment to invest in the powerful and valuable shared platform for the web and beyond.
  • A keen interest in improving the process of getting good and appropriate patches and other improvements (hello, docs and tools and build help!) into the common repository or pipeline promptly and predictably. As XULRunner itself is about 1000 lines of code that differs from Firefox, the bulk of the work is likely to be in build, packaging, update and other “meta” areas, I suspect.

now don’t take this the wrong way

(It’s the weekend, I’m off the clock; if I catch this attributed to “Mozilla”, as I saw people referring to my previous post, I will probably be quite cross. There is irony in that, but you shouldn’t feel compelled to comment on that.)

If people don’t stop link-dropping me Chris Messina’s performance art, I think I might have to hole up in a mountain cabin with automated weaponry and an ever-declining respect for personal hygiene. Don’t get me wrong, I think Chris is a pretty clever guy, and I’ve quite enjoyed the handful of real conversations I’ve had with him. He dances with the camera in a way that makes me a fair bit self-conscious, and he has Fortune Cookie 2.0 down so pat that I expect to open the BBC one day and find out that Venezuela is going to bust his patent and start making generics.

And I have a little of the manic in me too, so I can imagine how awesome it would feel to just Go like that: ranting into a recording for most of an hour, railing against enemies of the revolution; tossing half-formed ideas into the void (where they might contact the half-formed anti-ideas you threw in there 30 minutes prior — so much light); rubbing up against acceptable heresies until they’re polished and gleaming.

But if people are so starved for rah-rah web hope, if they so badly need something to Engage them, to let them feel like they’re glimpsing part of the Web Conversation, like they’re hiding under the tablecloth at the Cool Web Kids club holding their breath so nobody hears them over the gentle hum of pingback high-fiving and literary appropriation that they will spend THREE THOUSAND CONSECUTIVE SECONDS staring at Chris in a looking glass, taste buds a-tingle in anticipation of the next bon mot…. Well, damn, people. There’s work to be done. (Though, in all honesty, we’ve all sat through longer conference presentations that I’m sure were less thought-provoking and interesting. I haven’t even found time to watch Chris’ opus, but I’m pretty confident in this position.)

“Mozilla” can and probably will do many of the things I’ve read in people’s emailed excerpts of the FLV that Chris wanted to nail to the door of the church, because “Mozilla” is all the people who want to be part of it. People who agree that the Web needs a champion that isn’t going to try to slip something in their drink, a champion that isn’t going to ask you to pay to register once your free trial expires, a champion that tries every day to be a living expression of the web and sometimes succeeds. “Mozilla” is the people who build Spread Firefox and the people who dump it when they want to do something else. “Mozilla” is the people who write add-ons for Firefox and the people who will go to their grave improving SeaMonkey long after it was “supposed to be” gone. “Mozilla” is the people who help their friends and co-workers not only use Firefox but understand what that choice means. “Mozilla” is the people who mix their pronouns and metaphors because they’re terrified and proud and excited and can’t make all the things they feel about the web fit into text. “Mozilla” is the people who understand that telling Mozilla what it should be doing is like saying “nobody in my neighbourhood cares about the litter” but not picking up a piece. Chris didn’t need permission from a centralized authority to drive Spread Firefox, even ignoring the odd dichotomy of “you should make a centralized decision to drop SF so that you’re…not acting as a centralized decision making body”, he just needed to be willing to take action that might not succeed, and that would put his beliefs and goals out, in a concrete way, where people could see and judge them. He just needed to be willing to make the hard economic (scarcity, not prime rate) decisions about where to spend his time even if people were telling him he should spend it somewhere else, and I’m pretty glad he was willing. It’s scary as hell at times, and it’s a ton easier to tell people what they should do than to do what you think should be done — I speak from decades of experience here — but talk can’t change the web, can’t protect the web. And the web needs changing and protecting, make no mistake about it.

So if there are other aspirants to Ze Frank’s throne out there who want to spend an hour energizing the blogeratisphere and getting fitted for a pulpit — and I’ll be honest, you’re almost certainly not going to do it as well as Chris, unless you are actually Ze Frank — I encourage you instead to make a screencast showing someone how to use a part of Firefox, improve a document for a web developer near you, test an add-on from the sandbox, help someone make their web site work better with Firefox and SeaMonkey and Opera and Camino and Safari and all the other standards-oriented browsers out there, test a nightly, participate in any of the bazillion discussions about where the browser and platform could and should go. Do something that you think “Mozilla” should be doing, because if you’re on the web, and you care about the web, and you’re afraid that we might yet again have a monoculture of stagnation on the Internet, you’re “Mozilla” — even if you don’t know it yet.