The Inside Track on Firefox Development.

« Reflection | Main | Step 2: Ask Questions »

March 20, 2006

Step 1: Public Discussions

The first step on the pathway to open source project happiness is to have our discussions in the public.

One of the things people have (rightly) criticized about Firefox and Mozilla development in the past is that too much happens mysteriously, behind closed doors. This was for a number of reasons that sounded sufficient at the time - it was expedient, people were sitting within shouting distance, mental laziness, etc.

What poor communication breeds is a lack of understanding of procedures, priorities and such like. A healthy project is one where the contributors understanding where things are headed, and what parts they can play. It is one where newcomers can visit the project website and within the space of a few minutes get a decent understanding of how things work, and find out opportunities for them to participate.

People don't want to contribute to projects where things happen "magically". I've learned this lesson in the past.

To this end, I've been encouraging everyone to have public discussions on the Mozilla Newsgroups/Mailing Lists. For Firefox, the list is dev-apps-firefox@, and the newsgroup is mozilla.dev.apps.firefox. They are mirrored through Google Groups for ease of browsing. We're planning on improving the theme for Firefox2, and rather than pursue this effort in a walled garden like last time, we're going to proceed in dev-themes@/mozilla.dev.themes. Come on over and join in!

At the same time, we've been encouraging other projects to use the newsgroups/lists too. Decisions made in private email, IRC (which isn't archived anywhere) even in public bugs etc make it very difficult for people who aren't central to the project to find out more or participate. I think we should strive to strike a better balance between convenience and accessibility/referencability.

On top of this, there is a need to make the contact portions of the web site more accurate, relevant and easy to find, so people can easily find the list they want, and the person or group to contact.

We've been having discussions about all of this in mozilla.dev.general, in these threads. Rather than talk in a vacuum of only ourselves, I really hope that those of you that have experienced difficulty in the past in some of these areas will come forward and contribute to the discussion.

Posted by ben at March 20, 2006 9:23 AM

Comments

Sounds great!
One thing I've noticed since starting to help out in Bugzilla is that (in IRC at least), nobody's particularly willing to lend a hand unless I'm quite vocal in my requests. I don't know if this is my n00bishness at IRC, or because I'm on the wrong continent or something, but it's quite offputting.

Posted by: Philip Withnall at March 20, 2006 10:54 AM

IMHO one of the problems is to many mediums.

More than once, the phrase is "didn't your read that [blogpost|email|irc message|bug|wiki|newsgroup post|spaghetti thrown against the wall].

IMHO there should be 1 unified place for at least linking to things, and categorized. For example using the wiki. Then have a category for "Proposals", "In Implementation", "In Testing"... etc. Linking to the various mediums that people use.

I think a big problem is people don't get the memo in all the noise.

It's hard for people who contribute part time (majority of time in school, work, etc) to read all wiki changes, bugs, blogs, newsgroups, emai, and keep up on IRC).

Each medium has it's benefits, and I don't mean to suggest "no more _____". I just think we need a consolidated way to find out "what is ___ doing", and "what proposals are in the air", etc. etc.

At least, that's the problem I experience... it's hard to keep up with everyone.

Then throw in the timezone differences... and it's a total mess. Not like things happen between 9-5. It's 24x7x365 changes going on.

Posted by: Robert Accettura at March 20, 2006 10:57 AM

Robert: absolutely. I forgot to mention this in my post, but I think it's pretty critical. I'll mention it again soon.

Quite a bit of design discussion is happening in the public, in bugs etc. But there's no easy way (and hence no practical way) for new folk or even existing folk in other modules to find out what's going on.

There's always a place for IRC and f2f conversations, but I think it should work a bit like this: ideas are developed on the lists/newsgroups. The dev-apps-firefox group has been good for this so far. To make rapid progress, people can have real time meetings f2f or on IRC, as long as the results of these are reported back to the group for further discussion. This process yields design docs on the mozilla wiki, which yield implementation tracking bugs, followon bugs, etc.

Posted by: Ben at March 20, 2006 11:19 AM

Phillip - what sort of things do you need help with?

Posted by: Ben at March 20, 2006 11:21 AM

I agree, there are too many mediums.
Newsgroups, blogs, wiki's, mailing lists, bugzilla, irc, it's just too much to keep track of.
Not sure how to solve that issue, though, because I can understand the need for yet another mailing list.

Posted by: Martijn at March 20, 2006 11:24 AM

Ben: I can't express how frustrating it is. Meeting notes have gotten better (more detail, more on time)... and "Mozilla Developer News" is progress. But we really need something consolidated. 1 place that if you keep up with it... your in fair shape.

Rather than a wiki, it could even be a blog... perhaps in the style of Matt Mullenweg (photomatt.net) with brief 1 liners and a link for all but big topics. Would be easy to follow with a browser or any RSS reader. I'll try to blog about a proposal for this in a day or two, I've got a few ideas brewing.

Bugzilla is a drag to fllow for anything other than a component or two. Nothing against bugzilla, but the "big picture" and the "spectator seats" just aren't viable. It's sometimes hard enough to manage component... much less watch an entire product (I don't know how timeless does it).

IMHO your ideas are right on track. But I think until the channel noise is reduced... there will be only so much benefit.

Oh yea, I forgot about mozillazine forums ;-).

There must be several encyclopedia's of firefox related documentation written every day... it's impossible.

I've got a few ideas. I'll toy with them, and blog on a suggestion in better detail... perhaps that will get things moving.

Posted by: Robert Accettura at March 20, 2006 11:52 AM

Yes, but how will you deal with slashdot ignorance ;)

Posted by: Kroc Camen at March 20, 2006 2:55 PM

I find one of the hardest things to grasp is the code review process - if a new contributor gets to the stage of patching a bug, it's non-obvious who to ask for review, and when you do pick someone that person may be so busy that it's bit-rotted before they find time to look at it. I admit that it's not an easy problem to deal with as reviewing takes time, but giving users a better idea of how long they can expect to wait would only help.

P.S. Just checking you've noticed the recent spam on http://weblogs.mozillazine.org/ben/archives/009730.html

Posted by: John at March 20, 2006 7:28 PM

Maybe part of the solution is in improving bugzilla to allow it to better scale to the number of issues it needs to handle currently. The amount of information in bugzilla is huge and it is generally rather inaccessible for outsiders or even informed insiders. Many problems currently arise from the fact that some people are not informed enough and bother other people that do have that information and a shitload of more useful things to do than communicating it.

Bugzilla certainly has come a long way but it is certainly not the final answer to bugtracking. I'm sure there are clever features that can be added to more effectively mine the information in there.

Some useful ideas:
- bug rss feeds instead of email notification (bug spam for even a small number of bugs can be overwhelming). Probably having a combination of rss feeds and mail notification would be nice.
- Meta bugs, can be used to for exampl map feature trees to bugzilla or to track related bugs more effectively or manage releases. This is very similar but subtly different from the current tracker bugs for e.g. performance. You should be able to do interesting stuff with this like having an rss feed for a meta bug and putting all important things happening to contained bugs in that (e.g. fixed, reopened, closed events)
- bug graphs: show relation to meta, duplicate and other bugs graphically. E.g. fix for bug X caused regression Y. This would be cool thing to show off svg.
- timeline information in every bug. Review the history of a bug in one glance.

Just some simple concepts which should be fairly trivial to add in bugzilla and which have the potential to help in addressing some of the information overload that seems to be the problem currently. I'm sure some of the above stuff has been thought of before.

Posted by: jilles van gurp at March 21, 2006 6:57 AM

Ben: What I need help with is (apart from the large number of bugs) generally getting to know how the system works, especially the review process. All the lists of reviewers I've found look a tad out of date, and are strewn across the place, making it quite hard to find something - this links back to Robert's comment.
Another thing I _was_ having trouble with was getting help on bugs where I was out of my depth (violent reporters, etc. :-P ). I was looking for help in #bugs, but I've recently found that it's only a bot channel, and I can get help (plenty of it) in #firefox. Again, this wasn't documented anywhere (not even in the channel title).

I must also agree wholeheartedly with Jilles. Bugzilla does need improving. It's great already, and isn't straining at all under the 300000-odd bugs in the database, but some additional features like the ones mentioned wouldn't go amiss.
I think one feature which would be good is a special search for bugs which have patches waiting to be reviewed, and another for patches waiting to be put into CVS. At the moment, I think it's a hit-and-miss thing as to whether a reviewer/person with-CVS-privileges picks up on a completed patch in a small out-of-the-way bug, which means effort is going to waste.

Posted by: Philip Withnall at March 21, 2006 12:48 PM

i agree it's too many

Posted by: seo at March 22, 2006 1:47 AM

I recently heard some talk about redesigning the bookmarks interfacce, but i have no seen any sign of it at all. I believe I saw the blurb about it here (though I could be mistaken).

I think this is a good idea. I have so many bookmarks, I cannot navigate them, and frequently forget where I have put a specific book mark. It would be nice to have this interface simplicied or clarified in some way which makees it more useful than it is currently.

cheers,
Davidf

Posted by: DavidFedoruk at March 22, 2006 10:43 AM

Please, re-redesign the Options menu to have a classic pre Firefox 1.5 look. I hate the top buttons and much prefered the side buttons. It was so much better. I hate it so much in fact that I refuse to go into the options menu and would rather stop using Firefox than encounter that poor copy of the Mac OS X menu system. I love it on Mac OS X but it does not belong in Windows XP.

Posted by: HeyItsMe at March 22, 2006 5:37 PM

You have Gotcha really nice blog

Posted by: Reetha at March 26, 2006 10:11 AM

I think using a blog of one-liners to track things is a great idea. There is so much information that's scattered not just in Bugzilla and the wiki, but on peoples' websites and blogs, etc. Take roc's blog, for example. Some of his posts are personal, and others are really technical status updates, it would be great to have his status update blog posts tracked along with everything else.

Posted by: fantasai at March 27, 2006 2:26 PM