blakeross.com blakeross.com
January 29, 2005

So I’m setting up my Firefox build environment on a new computer, which creates one of those scenarios where you quickly accumulate 250 open windows and your Windows taskbar actually starts scrolling.

Starting about three hours ago, I started hearing this noise once every couple of minutes. Now, hearing things while you try to set up a Firefox build environment isn’t unusual. It always makes you slightly delusional. But this was a new noise, something I hadn’t heard before in years of building Mozilla.

Naturally, the first thing I did was check all the networked applications that might be trying to signal my attention, but nobody had tried to reach me on AIM, MSN Messenger or IRC…

It turns out that the application so desperately requiring my attention was the Windows desktop search application. The little dog that inexplicably sits in the corner was—I swear to God—scratching himself every couple of minutes, and the noise I was hearing was paw meeting fur.

Take a moment to think about that.

If ever there was a case against “cute” and “harmless” features, this is it. And by the way, the picture above isn’t doctored. That’s actually the question the dog poses when you click on it. And if you select “Do a trick,” he will do anything from pull out a dog bowl and ask for food to—you guessed it—scratch himself again.

If the developers who programmed the dog focused instead on making sure that searching a couple hundred files on the machine next to you wasn’t ten times slower than searching 8 billion machines around the world, perhaps every search engine out there wouldn’t have to reinvent desktop search today.

January 28, 2005

People sometimes ask why we work on Firefox for free. It gets hard to keep a straight face at “work.”

Give me another project that touches the lives of millions of people worldwide and still has public codenames like “The Ocho” which get published in the media. (”The Ocho” is the name of the fictitious ESPN 8 station in Dodgeball; kudos to Ben for the flash of v1.5 naming brilliance). The best part of Firefox is that even as it’s skyrocketed to the top, it’s never really grown out of its humble roots as a skunkworks project that was by and large coordinated on caffeine highs at Denny’s. It has, in short, never quite grown up.

Of course, it never quite dawned on us in the beginning that everything we were doing would someday be so scrutinized by the public eye. When I added “Cookies are delicious delicacies” as the tongue-in-cheek description of site cookies in our Options window, I did so because describing something so complicated in such a small space was quite frankly the last thing I wanted to worry about after rewriting the cookie manager. I didn’t realize it would be archived for posterity in online encyclopedias, computer science lectures, privacy policies (for Virgin no less), magazine articles, developer documents, and even in print in an O’Reilly book called Google: The Missing Manual. I didn’t realize I had singlehandedly created a cult legend that others would scramble to recreate as soon as we finally removed it right before shipping 1.0. And most of all, I never realized that one day it would inspire someone to give birth to hemp cookies. Because I assure you that had I realized any of this, I would have tried to actually create something funny. And maybe even signed my name.

This is, of course, but one case study in a project that has never taken itself seriously. What most people seemed to miss about Asa’s original Firefox (then called Phoenix) roadmap was that the seemingly arbitrary milestone chart was actually a roadmap. (It does say “the trip” at top, y’know.) And if you superimposed it on top of a real map—say, around the West coast—you found that it made for a pretty clean trip from Mountain View, California to “Phoenix,” Arizona. It just so happened that Netscape was based in Mountain View. It just so happened that we called it “Phoenix” because it was reborn from the ashes of a certain product. It just so happened that that product was…well, you get the picture.

Certain entrepreneurs have even tried to capitalize on Firefox’s energetic demeanor. People bothered by constantly broken builds had one of two recourses depending on who broke it: violence if was me or complete public embarrassment if it was hyatt. For the young Mozilla contributor, MozillaZine offers the stylish Mozilla bib, and for his prostitute mother (or father), the thong.

Speaking of families, certain buttons began to crop up around the web urging people to download Firefox (or Firebird, as it was called then) as part of the effort to save Seth’s kids. More recently, little Timmy and Jimmy Spitzer were spotted as donators to our New York Times Ad campaign. And yet, Seth claims he has no kids! Why, Seth? Why are you so ashamed?

It would be nice to claim that the silliness ends where the work begins. But it infects every part of the project, right down to our bug tracking database. Mixed among those little showstopper things like “Firefox crashes on startup” or “Firefox emailed my addressbook and attached my hard drive” are the real important issues, like Vending machine prices raised by $0.05 (as Sebastian astutely points out, that’s actually not a regression but inflation), or the fact that our drag and drop code is British, or that (perhaps most famously) our core UI technology kills babies and should therefore be removed. Then there are the “oops” moments that plague every major software project: our “RSS” button looks like it says “ASS”, our download manager seems to be flipping our users off, and naturally, our alternate stylesheet icon looks like the all-too-common soybean speared by a hair clip.

In fact, the lunacy infects the code itself. Every time Ben edits the infamous widget state manager—quite possibly the worst code of all time if you block out memories of whatever coughed up Netscape 6—he adds a line from Manos: The Hand of Fate—quite possibly the worst movie of all time if you block out memories of Dreamcatcher—to the bottom of the file. But another Firefox legend is on the cusp of dissolution: his overhaul of the Options code has obsoleted this file! Where are going to we find code so terrible that it can house the Manos collection? And is Ben really justified in cleaning up poor code if it means killing a legend in the process?

You can rest assured, however, that these are isolated incidents and don’t point to any sort of crackdown effort. Firefox is growing and maturing—there’s no question about it. But as long as we’re around, it’ll never fully grow up. So sit back, relax, and await the delicious delicacies that The Ocho will have to offer.

January 27, 2005

I gave a talk about Firefox tonight along with Joe at the monthly meeting of the SDForum Open Source SIG. Perhaps I’ll post the slides tomorrow. It went very well, and I was surprised just how much I learned about myself and about Firefox while I was doing it. The types of questions people ask force you to think about things in ways you never have before.

The best part, however, was the people I met there. In fact, there were a couple of surprise guests that Joe and I later went to dinner with. It was a great and eye-opening experience, and hopefully I’ll be able to tell you more about that if they don’t mind me spilling the beans. But for now, I need to sleep.

« Previous Page    Next Page »