Whistler Air

Whistler Air is the float plane we took from Squamish to Vancouver last Friday on the way home from Whistler.  The way home included: a 10 mini van taxi ride to Green Lake, hour "limo" bus ride to Squamish, 20 minute float plane ride to Downtown Vancouver, 30 minute cab ride to the Airport, 2 1/2 hour plane trip to SFO, 5 minute Air Tram to BART in the airpot, 1 1/4 hour BART ride home, 8 minute car ride home.  I was tempted to put on some roller blades or hop on my bike and then go for a swim afterwards.

And while the Firefox Summit also included a rockslide, bear sightings, a day with no electricity, my MacBook hard drive dying on day 2, it also included over 400 Mozilla contributors from around the World — US, Japan, Korea, Singapore, Germany, France, South Africa, Brazil, India, and more.  Great event, great people, great time, lots of Rock Band.  It was a celebration for the launch of Firefox 3 and then discussion towards the future and some of the things that were demoed were very cool.

Whistler Canada is a beautiful place.  Would love to come back and try snowboarding.  The Bay Area Ski bus is doing a trip out there January 10 – 16, 2009.

early photo – Mozilla Firefox 1.x team

computer history museum anyone?

I finally got around to scanning this photo, I guess being in the Computer History Museum this week for Mashup Camp kinda motivated me to get this up finally.

This is kinda the original Firefox and Thunderbird team with marcia and the whole several thousands of people in the Mozilla community and ex-Netscape people missing. No one person started Firefox you see (Thunderbird, on the other hand, is all mscott and bienvenu).

What makes this a classic Mozilla photo, is the stupid ethernet cable that's running from the ceiling (and yes we did try to move it, that's why we're all smiling). It's one of the reasons why this photo never got published. So classic.

Congrats Parakey

Maybe this becomes one of those famous old school computer photos, with everyone in it getting all rich and famous. Let’s hope so, because I’m in there :-) (eh, I'm already "rich" and "famous").

I have another photo that’s more representative of those involved in Firefox because there was quite a number of people involved in making it happen.Anyway, that’s Blake (looking at the Rock) and Joe standing next to him. They just sold their company Parakey to Facebook. Very cool. I forgot to ask for their autograph. eh, I’ll take a Facebook t-shirt (which will end up going to Dad) and a free lunch.

That’s Ben all the way to the right and he’s at Google now. dbaron, extraordinaire, fixing something I’m sure in front of his laptop.

I’m there on my computer with cbeard and we’re finalizing the press release announcing Firefox 1.0. I’m about to publish it (after about the umpteenth cbeard edit).

And then Asa actually cropped this image and just shows Jay’s hat because he’s drinking a margarita or something that brendan probably made for him.

That was fun…Ok, back in the garage.

*Update*. I take stuff down all the time. Sorry Blake.

Safari on Windows

Safari on Windows is not a surprise. It's something that at Mozilla (actually even at Netscape) we were predicting. It was just a matter of when.

What people might not know is that the Safari team consists of a lot of ex-Netscape folks from the Netscape 6.x days. Once you get into the groove of building browsers, you just kind of do it and enjoy it because the software and the problems and opportunities that browser software development has is so diverse and it's so interesting. The feedback is cool too, someone builds a web application, it works or it doesn't work, what needs to be changed in the browser to make it work — in a nutshell.

Anyway, it's good to see Safari on Windows. I think that the Safari team should also consider whatever hooks they might have that's Safari-Apple-iPhone-whatever only should be ported to IE Windows and Firefox.

There's definitely a danger that QuickTime and Videos work best in Safari and works moderately ok in IE or Firefox. Also, while the Apple team may know what the business opportunity is for having a browser, I don't think they *really* know what that potential is.

Also, Apple better be careful with their marketing with Safari. If they're going to call out that Safari is the fastest browser out there, they better be able to back that up.

Thoughts on XUL Runner

[I had deleted an earlier post for one reason or another on XUL Runner. I'm rewriting per a request]

I'm coming at this from a different perspective so what I'm thinking could be inaccurate.

Background 1

The evolution of XUL runner was based out of AOL being able to leverage the Netscape browser into the main AOL client. Basically one instance of the browsing engine should be on the machine and it could be leveraged by AOL, Netscape, CompuServe or whatever application that may need it. This kinda launched as GRE or Gecko Runtime Environment. One of the bigger reasons for this at the time was download size of the different applications. Of course that was in a still dial-up world in the year 2000.

In any case, AOL never embedded Netscape into their main client, it was tested and launched in the long defunct CompuServe client. It did work though.

Background 2

The modern thoughts on XULRunner came when the Mozilla Suite needed to be broken up into the separate applications. The thought was a Firefox or Thunderbird or Sunbird or whatever other applications that come up could leverage a single XULRunner instance and the download would be light, there would be shared components, and all would be happy.


There are three:

1) to do a XULRunner is hard, not easy building one of these and be able to predict what all the applications want, different versioning, etc.

2) The investment in XULRunner was minimal (just not a priority and if it's not Firefox who cares) and didn't get the chance to really get flushed out. Who was gathering the requirements? Who was talking to customers? Who was evangelizing the platform? Where were the white papers? It's still a project and maybe it will get it flushed out more down the road.

3) Possibly the biggest issue, no one is building client software anymore, none that matter anyway. You have two extremes, little shareware type applications that do one or two things that can be done using platform specific code. The other extreme is like an Adobe Photoshop i.e. some wickedly complex piece of software and you're not going to base Adobe Photoshop on XULRunner. Given #2, you're not going to get #3.

The interesting thing is that XULRunner is in direct competition with offline apps. XUL versus AJAX type offline apps would be a neat exercise to see what's good and bad about each. It's funny because we've had "offline" apps for the longest times, it's called n|VU and Thunderbird, and Songbird.

*I think this is what I said in the post deleted "XULRunner Pipe Dream" or something like that. I just whipped this up so I probably have more thoughts on this.

UA or User Agent strings and Mozilla vs Gecko vs Firefox


  • If you need to do browser detection, detect for browser capability versus a specific browser so you're not locking people out.
  • If you need to detect for Firefox, consider using the Mozilla rv: number to capture all Mozilla-based browsers.
  • If you're going to list out "System Requirements", or this "site/application was tested with" what I believe is preferred* is "Mozilla Firefox [version number]" e.g. Mozilla Firefox 1.0
    "and above" or "and higher". Or it's Mozilla Firefox 1.5 or Mozilla Firefox 2. Note that Mozilla is dropping the min version for Firefox 2 so it's Firefox 2 and not Firefox 2.0 except in the user-agent string which is Firefox 2.0. Makes sense?

Here's a really good article that all web developers should read (article needs to be updated though): http://developer.mozilla.org/en/docs/Browser_Detection_and_Cross_Browser_Support

The user agent string for Firefox 2 is:

  • In general: Mozilla/5.0 (platform; security; OS or CPU; Locale; Mozilla Platform rv:) Gecko/yearmonthdate Vendor or product name/version
  • Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
  • Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox 2.0

The user agent string for Internet Explorer 7 is (per the IE blog):

  • IE 7 Windows XP SP2: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
  • IE 7 Windows Server 2003: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)
  • IE 7 Windows Vista: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)

The user agent string for Safari is:

  • Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/XX (KHTML, like Gecko) Safari/YY

What's does the Mozilla part mean?

Mozilla version e.g. Mozilla/2.0 was the original convention for identifying the product. Microsoft borrowed the Mozilla/version part, added "compatible" and here's more on that history. When we changed the user agent string to Mozilla 5.0 with Netscape 6, we broke a lot of web sites but we're all ok now — that was 6 years ago. Mozilla/5.0 and Mozilla/4.0 are no longer meaningful though and we shouldn't ever see that changed for legacy/site compatibility reasons.

When targeting the Firefox browser for your web site/application, it's actually better not to and detect for standards and capability versus targeting a particular browser version as the article mentions. If you must detect for Firefox, you should detect by Mozilla platform rv: version or rv:1.8.1. This makes it so that you don't block out Mozilla browsers like Seamonkey or Camino or other applications using that same engine.

What about Gecko?

Gecko isn't very meaningful these days either, it was used to indicate the new or NGL next generation layout engine which was then branded Gecko. It's also Netscape trademark, licensed by the Mozilla Foundation. The "Gecko" brand really should go away since "powered by Netscape Gecko" really doesn't mean anything. It takes a lot of energy to build a brand and Gecko is not actively being marketed as a browser engine.

The platform is actually the "Mozilla platform" with "rv:1.8.1" indicating the version of the "Mozilla Platform". So "rv:mozilla platform version" trumps Gecko/date stamp. It's not clear to me whether the Gecko date stamp is meaningful for web developers. I suspect that the Gecko portion of the user agent string can go away completely.

What about Firefox?

Hmm…So "Firefox/version" isn't very useful either. Browser sniffing for "Firefox/version" in the UA string shouldn't be used unless you're really targeting for Firefox or a specific Firefox browser version (which you really shouldn't be doing in the first place).

* need to verify w/ Moz Corp, but I'm guessing I'm right.

Internet Explorer Comparative Analysis

Here's the IE 7 Beta 3 analysis I was writing up.

A few notes:

  • It's comparative versus competitive because we want to keep things friendly :).
  • Extreme Tech's article comparing Firefox 2, IE 7, and Opera 9 is a great read.
  • Another review by Paul Thurrott
  • I want to do a high level feature by feature comparison (from a marketing perspective) as well since that's a nice way to look at these products. I'll do that in a little while, there's a bit of that in the Extreme Tech article.
  • Feature versus feature can be blown out much further in the full on comparison between user interactions. That work should get done on some of the key features. (This means getting a UE and UI designer together and making those pretty interaction graphs that are huge and can get posted on to walls so people can see what the heck is actually going on.)

Enjoy (if you're into this kind of stuff)!

48% market share for Firefox

Firefox No 23651175 47.9 %
MS Internet Explorer No 13301938 26.9 %
Safari No 6263767 12.6 %
Unknown ? 2210918 4.4 %
Mozilla No 1546638 3.1 %
Opera No 1187130 2.4 %
Netscape No 411342 0.8 %

BoingBoing is one of the sites I've been monitoring for a couple years now and I'm amazed that Firefox is at 48% market share up 2% from June. I remember when it was 20 – 25% and I thought it would stay there for quite some time. I wasn't amazed when Firefox overtook Internet Explorer on this site. I am amazed by how much.

I've been promising to launch the Firefox Market Share project via SpreadFirefox. Essentially it's a take on Om's Broadband profile project. I talked to Sherman about this before I left and will need to re-engage there but also spoke a while back w/ Ross Mayfield about it. I've got some of it set up already, looking to launch by end of the month or so (and I'll cross post this on SpreadFirefox).

I also have part 1 of a comparative review for IE 7 ready. I have a few minor tweaks like removing Internet Explorer 7+ references. Otherwise, it's pretty good to go. I didn't want to publish it too early and give the IE team a chance to actually read it and make changes accordingly :) I'll put it up tomorrow.

search discovery in Firefox 2.0

If you're using Bon Echo Alpha 3, you'll notice that when you visit Technorati, the search engine icon changes color. If you select the drop down from the search bar, you'll also get "Add Technorati Search" as an option.

Here's what needs to be embedded in the head of your page:

link rel="search" type="application/opensearchdescription+xml" title="Foo" href="http://foo.com/bar.xml"


link rel="search" type="application/opensearchdescription+xml" title="Technorati Search" href="http://technorati.com/osd.xml"

Then you need to create a similar document: http://technorati.com/osd.xml

I'd advise companies to have an "add search engine to browser" link/image as well using JavaScript as described here or here.

If you're a search engine, get going on this. I've only seen this work on Technorati (works on Live.com too apparently) though I imagine I'll see this incorporated with most sites — don't need to be a search company to make this work.

Very well done. I'm assuming this is Gavin's work. Nice!

**Updated w/ more documentation links.

time off and a new chapter…

My last day at Mozilla Corp. will be May 15th. People are going to ask why I'm leaving. Chase may have set the standard for this as far as farewell notes go. My reasons for leaving aren't the same as his though.

(Note: I'm not leaving the mozilla.org project just taking some time off from that too. You'll see me causing trouble again soon and my bugzilla account will still be the same it's not tied to rebron@mozilla.com so you can still file bugs against me).

Here are my reasons:

  • I've been at this for 7 years! since February 1999. Netscape->Mozilla Corp I count it all as the same thing since it's all been browser work off of NGL. The most I've had off in those 7 years was 2 weeks off that I took last year. Time for a break. For real.*
  • I'd like two hours of my day back. This is more or less my commute the last 7+ years. HQ is a little far. I have 23,000 miles on the car I bought just last year.
  • I set out to help establish Mozilla Corp (done), to ship phoenix/Firefox, which I wanted to do all the way back in 2002 (done), help gain market share for Firefox and restore some balance on the Web (done/mostly done). I think I did an ok job.

What am I going to do next:

  • Take some time off. Watch my wife argue in her first trial in front of her former Judge that she clerked for. She's going after the big bad insurance companies.
  • I'm going to garden and landscape our front yard, and coordinate getting the porch fixed.
  • Hang out with family and friends. See my niece, call friends up.
  • Train for my third Ironman in August and try and raise some more money for Leukemia/Lymphoma Society.

I'm not sure what I'm doing next work wise, e.g. I'm not going to Google, or Flock/Microsoft (please don't insult me). One thing for sure, I'll still be participating w/ mozilla.org down the road. Too much fun, too much invested, and too important not to be where all the action is. :)

*For the old timers…I never did get my sabbatical from way back when.