October 22, 2007 12:38 PM PDT

The mythical (open-source) man month?

by Matt Asay
  • Font size
  • Print
  • Post a comment

It turns out that 10 to 12 developers on a project may well be the optimal number for maximum efficiency and productiveness. No surprise, then, that all open-source projects of which I'm aware have 15 (or fewer) core developers. So why do we in the open-source world often make so much of the "thousands of eyeballs?"

Because open source is not about aggregating a community to work on the code, but rather an array of communities to work on code. Open source works, even when a project becomes big, by staying small.

I therefore found this blog entry on software development (via Zack Urlocker) from Bob Warfield fascinating:

Mark Masterson reminds us that people have been saying for a long long time in places like the Mythical Man Month book that system design integrity is best achieved through the work of a single mind. The alternative is design by committee, which dooms us to understanding by committee and all the inefficiency and waste that goes along with that approach...Abstractions properly constrain the performance and functionality bottlenecks of a system to make them more comprehensible. Yet how often do we really focus on making architectures or code understandable? In what actionable way is that something you can measure and act on?

So far, the best answer is simply to use fewer people and live with what they can get done. It will automatically lead to simplifications and abstractions that act as firewalls. On the other side of the firewalls are initially very simple implementations, but they are placeholders. Some chief architect decided an abstraction was needed so that there would be a place to stand with a big enough lever to move the software's world should it be necessary.

(Good) Open source follows this principle by divvying up complex software into manageable, modular chunks that small groups (of 10 to 12 developers, generally) can tackle. When we speak of a globally developed Linux kernel, for example, we're not literally talking about thousands of developers holding hands to work on the same line of code at the same time. We're talking about each of these developers scratching individuals itches as part of a larger whole.

These disparate developers bring particular needs, talents and interests, and the melding together of these different developers makes for a richer project. That's the benefit of open source for development.

Also, the more people that focus on the "grunt work" of bug finding and fixes, the more time the core developers can spend doing...core development. Open source, then, is doubly efficient in parceling out development tasks. Proprietary software can attempt to replicate this, but it has difficulty matching the bug-fixing pool of any successful open-source project.

So, if you're starting an open-source project, your goal should be to keep your software modular enough that you never need development-by-committee. Even massive projects can offer bite-sized problems for developers to tackle. That's the open-source way.

Matt Asay brings a decade of in-the-trenches open-source business and legal experience to The Open Road, with an emphasis on emerging open-source business strategies and opportunities. Matt is vice president of business development at Alfresco, a company that develops open-source software for content management. He is a member of the CNET Blog Network and is not an employee of CNET. Disclosure. You can follow Matt on Twitter @mjasay.
Recent posts from The Open Road
Canonical shines its Ubuntu light on consumers
Open source became big business in 2009
Will we see an open-source IPO in 2010?
Could Apache keep Google's regulators at bay?
Red Hat's Q3 earnings defy gravity
Canonical's opportunity to simplify Ubuntu
Google--not necessarily 'more open than thou'
Is it Ballmer's fault?

15 sites that went kaput in 2009

Web sites launch all the time, but they also shut their doors. We highlight 15 that bit the dust this year.

Top 10 news stories of the decade

Let the debate begin: Was the iPhone more important than iTunes? Was anything bigger than Google finding a great business model? CNET offers its list of the 10 most important stories of the '00s.

About The Open Road

Matt Asay brings a decade of in-the-trenches open-source business and legal experience to the Open Road, with an emphasis on emerging open-source business strategies and opportunities. Matt is general manager of the Americas division and vice president of business development at Alfresco, a company that develops open-source software for content management. He is a member of the CNET Blog Network and is not an employee of CNET. Disclosure.

Add this feed to your online news reader

The Open Road topics

advertisement
advertisement

Inside CNET News

Scroll Left Scroll Right