Many contributors say the challenge of developing good code provides all the recognition and satisfaction they need. "I love the fact that I have to post the reasons I think I'm correct in a public place," says Max Spevack, chairman of Red Hat's Fedora Project. "It forces me to defend my opinions."
Open source programmers are scattered geographically and usually do all their communicating online--E-mail, instant messaging, discussion forums--with only the occasional phone call. Their critiques of one another's work come in straightforward and often blunt fashion. Performance is a constant concern, so contributed code that consumes too many CPU cycles will get shredded. "Suddenly, 10 people you've never met are telling you what's wrong with your code," says Garrett Rooney, a coordinator of contributions to the Subversion project.
Such no-holds-barred peer reviews are rare inside companies. McCallister, who contributes to several Apache Software Foundation projects, says those kinds of challenges were critical to his education. He started out as an English teacher and became a systems administrator by teaching himself scripting languages like Perl. He continued his "sideways transition" by becoming a Java programmer and participating in the Object/Relational Bridge, Jakarta, and ActiveMQ projects at Apache.
"Working on the projects was instrumental in turning me from a hobbyist into a professional programmer," he says. He learned by following Apache project discussion groups, studying what were deemed the best practices in submitted code, and offering up his own code for peer review.
The Profit Motive
As open source software becomes more popular, the idealistic community of programmers faces a new challenge: the potential for a monetary wind- fall. There's a growing divide between noncom- mercial open source projects--where the whole trend started--and commercial projects done under the auspices of public companies. JBoss, MySQL AB, and Sleepycat Software, for example, keep tight control over code and hire core contributors, and the payoff can be substantial if these companies go public or are acquired by giants such as Oracle.
True believers have mixed feelings about the rise of a wealthy class within their ranks. "I've worked in academia for 10 years," Dieter says. "I haven't ever envisioned myself in a position like that."
The two models will have to co-exist. Out of 100,000- plus projects, only a handful will ever be acquired for large sums of money. Few open source projects are organized with the idea of making millions for the developers, Dieter says. Joining an open source team with the idea of financial rewards "is like going out for the high school football team with the idea of making it in the NFL," he says.
Open source programmers make their mark "with thoroughness, tenacity, a desire to solve interesting problems, an ability to take criticism, and they communicate well," Momjian says. While such attributes are common in the business world, they don't necessarily exist in the right blend to survive the rigors of an open source project. "Eighty percent of corporate developers won't have the skills," he asserts. Hard criticism, for sure. But the onus is on corporate America to prove him wrong.
The key ingredient is passion. Open source contributors have to become "emotionally involved, committed," Momjian says, but they can't expect much in return. The goals of the project are more important than the goals of individuals or companies.
In business environments, competitive concerns may win out. "I'm aware how difficult it can be to change the mind-set of the establishment to allow intellectual property to flow back out into the community," says Firefox contributor Phillips. "Most large organizations have teams of lawyers that are vigilant when it comes to copyright assignment and licenses. I've seen it take years for such a team to approve just one open source license for exporting code."
It's hard to believe open source wouldn't be better off without more involvement from the big companies that are such enthusiastic consumers. For now, however, conflicting interests mean the coding will be left to others.