I’ve somewhat collected my thoughts since getting hired last week, and I’ve had time to read through emails, comments, and blog posts concerning my employment. Most people have been very supportive, but there seems to be a fair amount of confusion about what I’ll be doing.
In layman’s terms…
First of all, lets just get this out of the way – Firefox and Camino will remain separate products with healthy futures. Neither one is going to replace the other. There are no plans for any sigificant changes in the way either product is developed in terms of each other, except perhaps a little more sharing of code. Camino and Firefox already share many components, so that won’t be much of a change. They are still and probably always will be fundamentally different, with both offering certain advantages over the other.
As you probably know, I’ve spent most of my time working on Camino-specific development in the past. There has been some concern about my abandoning Camino development for Firefox. I’m going to do my best now to explain how my employment with Mozilla Foundation changes that.
Firefox and Camino share a lot of code, but they also have a large amount of code that is specific to each application. Working on Camino-specific code obviously only helps Camino, and the same goes for Firefox. Working on code that they share helps both browsers. The easiest way to explain how things are going to change is to say that I will spend a lot more time on the code that the browsers share, and also more time on the Mac OS X Firefox-specific code. I will spend less time on Camino-specific code, that is true, but I will still be “working on Camino.”
If you’re a Camino user, here is what you can expect to see from my work on the code that Camino and Firefox share. One of the first things I’ll be doing is cleaning up form widgets (content-area buttons, text fields, etc.). Most widgets in Camino already have a native look and feel, but they aren’t great right now. I’ll also be working on making pages load faster, and Mac OS X rendering in general. This most likely includes making the gecko rendering engine use the Quartz API intead of Quickdraw. This will bring a lot of benefits, including making use of your graphics card to do a lot of the work that your CPU is doing right now because we use Quickdraw.
If you’re a Firefox on Mac OS X user, you will see all of the benefits described in the previous paragraph, but you should also be seeing some additional improvements. In general, my goal is to make using Firefox on Mac OS X a better experience in terms of its user interface. At the moment, Firefox does an acceptable job of looking and behaving like it has a native Mac OS X user interface, but it could be a lot better. I am going to do my best to improve the situation. Its a big job, but now I should have plenty of time to do it :)
Aside from Camino and Firefox on Mac OS X, I’ll be doing some work on Thunderbird on Mac OS X as well as the Mac OS X toolkit.
I know this is somewhat vague, but I’m just trying to give a general idea of the direction I have in mind. I don’t actually start working on this stuff full-time until I graduation in May, but I will be working on it part-time until then.