Problems With the Firefox Development Process
An anonymous reader writes "Mike
Connor, one of the core Firefox
developers, is raising a flag concerning the Mozilla Firefox
methodology of development. From his blog: "In nearly three years, we haven't built up a community of hackers around Firefox, for a myriad of reasons, and now I think were in
trouble. Of the six people who can actually review in Firefox, four are AWOL, and one doesn't do a lot of reviews." In an earlier
entry, he raised concrete concerns about the community involvement. Asa Dotzler
recently elaborated
on the process, as previously covered on Slashdot."
Seriously. Mozilla's obsessive-compulsive disorder when it comes to their trademarks is above and beyond any other open source project's, and I think it's probably turning a lot of people off toward helping them.
That's strange...
From what I read on the last Slashdot Mozilla/Firefox article, people thought that there were too many coders in Firefox, thus creating bloated code...
I guess that's a myth, eh? Community misconception?
*SLAP!*
Don't set your standards low just because the competition does. Set 'em high because you can and should.
(I've just been in the mood to slap someone lately. Nothing personal.)
Yeah, IE has been horrible with security and whatnot, who cares if firefox makes one mistake? They're still perfect in my eyes.
http://onticfusion.sytes.net/
Many of the devs are hard at work for plain Mozilla. This makes the development of Firefox seem slow, but a lot of code from Mozilla can be (and is) used in Firefox through the Gecko engine. You don't have to exclusivly work on Firefox to help Firefox.
That said, I wish there were more devs working on Firefox-specific issues.
If it is a problem of documentation, then those two remaining programmers had better work on documenting it... and quickly. If they want the architecture to be preserved when new programmers who don't understand it come along.
-Vendal Thornheart
Perhaps you missed this story here, where it was found that Mozilla is actually faster than Firefox.
I think right now what is needed is a strong branding for Firefox that will create a reputation among the "tech-oriented" masses that get their information from magazines and cursory reading of pop-tech articles. How else will they truly gain ground against what many people perceive as the ONLY way to get online?
I think it's important to realize some people synonymize "The Internet" with Internet Explorer, because of IE auto-dialing, and auto connecting, as well as broad-band connections always being on and using it as default browser with windows.
Anything you do mainstream (particularly in the US) is already being done branding first and content second. Just take a look at TV.
We're dealing here with the WWW, possibly the most impressive achievement to date in terms of communication and information sharing. It's going to take some power to muddle through the masses, and you're not going to do it by sticking exclusively to principles at the expense of reaching the clueless.
The infrastructure, particularly the end-user "filter" of that information, is of critical importance. Idealism about open-source initiatives has to play tug-of-war with practical ways to get a broad following.
We are one consciousness experiencing itself subjectively. Back to you with the weather, Bob!
It's nothing new, really, just a little more extreme.
Mozilla has for years made a constant and ongoing argument that they're open to all comers and want all the help they can get, only to turn people away without consideration. I don't know what it's all about, and I'm not sure I care anymore.
It's a shame, because while (for example) Ben Goodger is obviously a talented programmer, his belief that he is the only person capable of doing what he does is just crippling the effort. Allowing a few people to prove they're as good as he is (hmmm... maybe he's afraid to find that out) could move things along tremendously.
I'd pitch in a couple of bits for my fave browser!
Well, why don't you then? Or did you not notice that "Donate" button on your first link?
Under capitalism man exploits man. Under communism it's the other way around.
Best he be careful, blog entries regarding 'conserns' might get him sacked :-)
Lack of new, innovative names. Look, I like "FireFox" as well as the next guy, but let's face it, that name is getting a bit stale. Sure, 6 months ago, FireFox had a "hip," "edgy" feeling, but today, FF just isn't cutting anymore. Only Korean old people use browsers with such old fashioned names. We all know that the most productive period in FF's history was the period in which it was changing its name every other week. Features got added like crazy during those couple of months. Some people look at that as coincidence, but as I always say, "Correlation is causation." Therefore, if we want to add new features to FF quickly, we're going to need to start changing the project name weekly, if not daily or even hourly.
In order to help out the FireFox team, here are my suggestions for new, catchier names:
Fox Fire
Brush Fire
Brush Fox
Foxy Britches
Fancy Pants
Panda Britches
Moz Illa Than You
Moz Def
Linky Clicky
Clicky Linky
Spider Webby
The Amazing Spider Webby
Ultra Browser
Supa Browsa
Supa Browsa II: Supa Browsa Remix
and finally,
Internet Explorer II: Electric Bugaloo
From the article:
Of the six people who can actually review in Firefox, four are AWOL, and one doesn't do a lot of reviews. And I'm on the verge of just walking away indefinitely, since it feels like I'm the only person who cares enough to make it an issue.
What good is people submitting patches if no one is there to review the code prior to commit? Indeed, I submitted a very trivial usability enhancement to Firefox, and it was quickly swept under the rug. Perhaps it should simply be made into a plug-in, I don't know. Just thought I would share it as first-hand experience.
- shadowmatter
Brian Kernighan is widely quoted as saying: "Debugging is twice as hard as writing code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it."
When you're debugging, it involves rereading code you're already familiar with, so I suggest a corollary: reviewing someone else's code can be harder than writing it in the first place too.
That said, don't let it stop you from trying! Pick a patch from your favourite project and review it. Try to understand it. Look for places where it could be wrong.
Reviewing is a related but distinct skill from developing, and it can be improved with practice. A good reviewer is worth their weight in gold but it's often a thankless task (so let me take this chance to say a big thank you to markus and djm for putting up with my diffs :-).
$ find
I downloaded the code, posted up onto the relevant bugzilla entry, and waited for a response.
And waited.
And waited.
Still no response.
Seven months later, the bug flickers into life again and people start asking why this isn't here. Again, I post up reminding people that I offered to write the code, and still would. Again, utter silence. Tumbleweed drifts across the face of the bugzilla page...
Have a look, entry 79709 if you're interested (Mozilla's bugzilla set-up disallows direct linking from Slashdot). My main motivation for writing this has now gone, as I bought an OS X-based desktop too and can synchronise contacts fine now. I might still have a crack at it just for interest's sake though, but I wouldn't count on getting any contact from Mozilla people.
Cheers,
Ian
Architecture documentation
How to write Firefox extensions
--
the strongest word is still the word "free"
why are we obsessed with firefox being too perfect! c'mon this is a community based product and even though they strive for perfection and do quite a good job at it. they are humans and bound to be prone to problems. and we arent paying them. its our fault that we raise them to some levels and then expect them to be there just because we praise them and raise them to exhalted levels and get a free download of our favourite browser!
One maintainer for Firefox would be fine, if it were a little more modular. The problem is the same one Linus had, fairly early on. People don't scale as easily as lines of code. Basically, the Firefox code needs to be ripped into managable parcels, such that the maintenance that is done can concentrate on one parcel, rather than ALL interactions in ALL parts of the code.
Monolithic code is problematic, because for N lines of code, there are potentially !N interactions that can occur. !N gets big, very very quickly. When you use procedures wisely, then N is the number of procedures, rather than the number of lines, but it is still a VERY big number, far too big for ANY finite number of maintainers to handle sensibly.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
I've posted bugs to Firefox Bugzilla. All I know about the Firefox "community" comes from that.
One of the bug posts, about a serious memory leak that causes a complete crash, was handled in an angry way, even though I had spent hours documenting it on two computers and two operating systems.
This is an extremely common phenomenon among Open Source authors. They often use their position as a way of acting out their anger. I was criticized because I use Firefox in a more intense way than other users! When I posted a carefully written response to the criticism, I got criticism for posting a long response.
I offered to re-write the manual for another Open Source project, and got a negative response that was encouraging and discouraging at the same time.
On another project, I entered a minor bug. The program was crashing if it saw a DOS end-of-text-file character in its text file input. I got back a long, philosophical discussion about why they were not willing to fix the bug because it was a problem that came from DOS.
One person with an anger problem can literally control the development of an Open Source project by scaring away potential helpers.
In my experience, the anger is often not expressed in a way that is obviously angry. It comes as opposition, sometimes very subtle opposition, even to good ideas or to useful help. The opposition vastly increases the amount of time required to contribute to a project.
The serious Firefox crash I reported in October 2003 was still there in February 2005 in version 1.0, even though it was verified by others in a careful way.
The background for all this is that Firefox is apparently the best browser, and an important window to the world for millions of people.
This is an important subject, and there is a lot more to say, but I don't have time now.
An additional remark:
The problems with reporting bugs in Firefox are trivial compared to reporting bugs to Microsoft, in my experience.
A top-level Microsoft support technician got interested in a very well-documented bug in Windows XP that I reported. He decided, partly as an experiment to teach himself about Microsoft, to work with several Microsoft groups. Result: An entire waste of time of many, many hours, over a period of months.
I've been reporting several bugs in Windows XP for literally years, and they haven't been fixed. If you work with both Linux and Windows XP, do you notice that Linux has a powerful, bug-free Command Line Interface, and the CLI in Windows XP is weak and buggy? (Yes, I know they are working on replacing it.)
It was elaborated on slashdot once before.
Sounds to me like there is a community of hackers waiting in the wings (just have a look at the large numbers of extensions available for firefox) - its just that they haven't allowed any of them to get past the first steps and into more involved hacking
my $0.02
From my observations of lots of open source projects, and involvement in a few, this seems fairly typical. With only a few exceptions, it seems like most projects have the bulk of the work done by a very, very small number of people, usually just one. I often wonder how much the "many eyes makes all bugs shallow" maxim, while probably true, applies in practice when on most projects there simply aren't many eyes.
[dons flame retardant suit]
Read reviews of shopping cart software
What features does IE have over Firefox?
RSS? PNG support? Popup blocker without a service pack? Proper CSS support? Integrated Sherlock? Tabbed browsing?
Oh wait, those are all features Firefox has that IE doesn't. About the only thing IE has that Firefox doesn't is ActiveX support, and the only good thing that has come from that is keeping me in business (people pay me to clean their computers of spyware/malware).
- Reviewers != Coders. There are more Firefox coders than reviewers. A bottleneck is created, but hardly a crisis
- Most of Firefox's changes come from Gecko, which is done by Mozilla coders (I guess you could call them Gecko coders, although I've never heard anyone say that). There are currently about 70 reviewers, and 20 super-reviewers for mozilla. There's about 84 coders a month (down from the 150+ haydays of the Netscape area)
You realize that you are arguing with a firefox developer about how firefox is built, do you not?
Maybe they aren't doing the project "for free and open source software" but for users who want a decent browser on any platform? Mozilla aren't fighting any war for the desktop, because they make browsers, not desktops.
That seems to be their goal, so quite obviously windows is included, and the Mac. I notice you don't comment on the Mac, but that is also a closed source OS, even if it has Darwin underneath.
Your right that offering FireFox for Windows isn't going to get people to move off Windows. I've seen some people make the argument, but never seen it as being listed as a goal of the Moz and FF people. You can't call it failure if it wasn't their goal.
In fact, you seem to be against cross platform development altogether. It is hardly the only OSS software to do this (Open Office anyone?), and it is usually touted
Open source isn't some huge, unified movement dedicated to destroying Microsoft (although some individuals are). There isn't a "true open source" community, maybe you mean the free software community, which is based on the ideals of free software, rather than the more pragmatic open source community? (not that the two are mutually exclusive). Even then I'd think the point of open source is freedom, and that includes the freedom to delevop in MS Windows. The GPL and other licenses don't say you can't develop on a closed source OS.
Like freedom of speech lets people say things you don't like, including ideas that are against freedom of speech. Freedom to code lets you code for closed source systems, even if the people that came up with the idea don't like what you are coding for.
It isn't any half way measure, they are doing exactly what they want to do (and other major OSS projects do), and they are doing very well. It just isn't what you want, but you are free to go make a *nix only fork if you think it will get more support by loosing all the Windows people.
January 2005: "A Firefox developer talks about the project's controversial invitation-only developer recruitment policy and explains why Firefox will never grow up."
March 2005: "In nearly three years, we haven't built up a community of hackers around Firefox, for a myriad of reasons, and now I think were in trouble."
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
Reminds one of this anecdote.
I believe posters are recognized by their sig. So I made one.
I tried and failed to become a Firefox developer. You have to know several people who are already on the inside, so they can vouch for you. It's an exclusive club by design, not encouraging for newcomers.
Respectfully, Albert Gore