Digital Media Web Blogs > Web

Mozilla development troubles


Related link: http://www.steelgryphon.com/blog/index.php?p=37

The recent Slashdot post about the Firefox development process troubles resonated strongly with me and strangely enough gave me some warm and fuzzy feelings:

This is bugging me, and its been bugging me for a while. In nearly three years, we haven’t built up a community of hackers around Firefox, for a myriad of reasons, and now I think we’re in trouble. 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.

This does sound painful, and all too familiar.

For a number of years we've been working hard to get some open source developers interested helping out with the MusicBrainz server development. The MusicBrainz server is a complex piece of software that requires a serious effort to setup and install. While our lead server developer Dave Evans has made massive strides in cleaning up and extending the crappy codebase he inherited from me, it is still a complex piece of software and there is little we can do about it.

Thus it's hard to attract people to come work on the project -- much like Firefox. Seeing a massively popular project like Firefox suffer from these same problems gives me the warm and fuzzy feeling only in the sense that we're not alone. For a long time I attributed the lack of developers joining the project as my own personal failure to do a good job of recuiting. But now with more input, I'm starting to change my tune a bit.

I'm starting to believe that it has to do with complexity. We all know that "Any sufficiently advanced technology is indistinguishable from magic". I think in the case of open source software development we can also say that "Any sufficiently complex project is indistinguishable from magic." Any newbie programmer who looks at a complex piece of software like Firefox is bound to be overwhelmed and is likely to walk away to work on something simpler.

It takes a person with very specific skills and intense dedication to work on a complex project, and people who possess those skills often start their own projects as opposed to hitching their wagon to someone else's project. When Firefox complains that it can't find people to help peer review the code, it's not surprising. There are few people who have the overall knowledge to code on the project and even fewer with the experience to peer review a piece of code. And coding is always more fun that reviewing code.

Today, Slashdot posted a follow up entry that concerns the Mozilla Suite:

Discussion on the newsgroup focused on the fact that nobody was currently taking responsibility for the suite (code-named 'SeaMonkey'). As developer Robert Kaiser put it, "What we badly need is an active core developer group and an 'app czar' or project leader". Fellow developer and MIT graduate Boris Zbarsky answered the call, saying: "Absolutely. Do you have people in mind who have time to do this? If so, I'd love to know who they are. They are sorely needed."

Oh the pain -- I feel it! If complexity wasn't enough, time is another ugly factor. Dealing with complex systems takes serious dedication of time. And a serious dedication of time usually comes from being addicted to a project. But how can you become addicted when its too complex to wrap your head around in the first place? Chicken? Egg? Bah!

Complex open source projects need to be multi-year projects. Take the Linux kernel for instance. When Linus first released the kernel it was a small piece of software that appealed to a bunch of hackers who ordinarily deal with complexity, and thus Linus got uptake pretty quickly. Now that the kernel is one of the most complex pieces of open source software, there are many people working on it -- but it took many years of hacking and small steps to build this large base of contributors.

Both Firefox and MusicBrainz need to work hard to cultivate more developers. It takes effort and most important, it takes time -- lots of it.

Do you have any insights on how to recruit OSS developers into complex projects?

Categories





AddThis Social Bookmark Button

Read More Entries by Robert Kaye.

Topics of Interest

Related Books

Recommended for You

Archives


 
 


Or, visit our complete archive.