July 25, 2005

New Camino Roadmap

I wanted to take a few minutes to lay out our new roadmap and some of the reasons behind it. It’s been year since we’ve released 0.8, but over the past 13 months, we’ve released four updates that have added some very significant features and fixes, back-ported from the trunk. As a result, it hasn’t really been a year. Now with two solid alphas behind us, we’re poised to take the next big step.

My basic assertion is that the trunk is in very good shape right now. There are some well-known regressions, but overall, it’s close to where we need it to be for a release. Mozilla plans to branch tomorrow for Mozilla1.8. We will live on that branch for the next few months, transitioning at least one of our trunk tinderboxes over to the branch (probably binus). That doesn’t mean we’re abandoning the trunk, it’s very important to stay on top of new development, but all the focus and QA is going to be on the branch and we can piggy-back on the attention for Firefox 1.5.

A lot of us that are very aware of the day-to-day happenings with the project, and that causes us to get a little blinded to true public perception. We see every blemish, every bug, every glaring defect that prevents us from wanting to put a “final” branding on that build. Some of these are big, some of them are small, but we are deluged by the daily bugmail and the regression chatter on the forums. We lose sight that a lot of people really love this product we’re making, blemishes and all. I can’t count the number of feedback emails I get that say “First off, I love this browser, and I’ve tried them all...” and only after a few sentences of gushing come up with a very small detail, usually one we’ve fixed in a recent nightly or have had since version 0.4. Even riddled with bugs, people try Camino and enjoy it enough to take time out of their day to say “thank you.”

We need to take advantage of our growing popularity and come out of our shell. We have to draw a line in the sand and deliver 1.0. How far away from that are we? I believe that we’re much closer than some might think. Yes, we know we still have bugs, and there have been some rendering regressions from 0.8, but fundamentally we are very solid, fast, lean, full-featured, and ready to plant our flag. Simon reminded me that we talked seriously at Netscape about declaring 1.0 when Safari came out. That was years ago. We could be on version 3.0 by now! Think about how many bugs Safari 1.0 had, or any 1.0 app. We can’t polish and preen forever. Real artists ship.

We’re also, in the court of public opinion, still competing with Firefox for mind-share. With them going to 1.5 this Fall, we’re falling further and further behind in the “version number war”. We know it means nothing, but which would most people rather have, Version 1.5 or Version 0.9? Not a hard decision for most. It’s not a real reason to make any decisions, but it’s yet another factor leading up to where we need to go.

Taking all that into consideration, Simon and I have come up with a new Camino roadmap. Here’s a quick summary:

  • Release 0.9beta shortly
  • Triage the 1.0 list to about two or three month’s of work for crashes and major regressions
  • Start releasing 1.0 “release candidate” builds for feedback and to help hone our remaining priorities.
  • Release Camino 1.0 this Fall off the 1.8 branch

Mozilla is branching for 1.8 tomorrow, and as I said before, we’ll take the bulk of our resources with them. Yes, this means that we’ll have to begin checking into two different trees and it will be a bit more of a pain on developers. That’s just what you get with stable branches. We still have a few more things to do, such as bundle the Java Embedding Plugin into nightly builds (and solve probably 90% of our existing Java bugs in one fell swoop), but we should be able to beta in the next week or two.

After we declare beta, we will move all of our focus to delivering a solid 1.0. I envision “release candidate” builds (or whatever we decide to call them so people don’t think we mean “final candidate” builds) every month or so. The key is demonstrating progress and getting feedback on what’s still remains to accomplish our goal. Note that there’s no mention of releasing 0.9 final. We haven’t ruled this out entirely, but right now all it does it distract from the 1.0 goal. If 1.0 does happen to drag out, we may go ahead and release 0.9final in the meantime, but I don’t expect that to happen. With such a small team, we must be focussed.

We will also be trying to do much more promotion of Camino in the coming months. I’m sure there are a bunch of you who say it’s simply not ready and we’ll just fall flat on our faces if we put 1.0 on something that’s not ready and ask the world to come try. I couldn’t disagree more. You don’t see the feedback that I get on a daily basis. We’ve worked hard for the last three years, it’s time that everyone had the chance to see the fruits of our labor. It won’t be perfect, that’s what 1.1 is for.

Speaking of 1.1, I'm sure it will be a very large bin of all the things that don’t make 1.0. There will be a bunch of architectural improvements, new features (RSS?), and still more bugfixes. 1.0 isn’t the end of the line, it’s a stepping stone. Sure, it’s a damn big rock, but it’s still just one in a long line. Posted by pinkerton at July 25, 2005 7:07 PM