A few months back Arthur Brooks, president of the American Enterprise Institute, delivered an address (audio here) at my alma mater, Brigham Young University, titled "Why Giving Matters." While focused on charitable giving and its multiplicative value on a nation's gross domestic product (GDP), it also tells us a lot about why developers contribute to open-source projects.
To get to the point as to why giving matters, Brooks first establishes that the more a people gives, the richer it becomes, though this may not be the reason we choose to give. Brooks takes former U.S. president Jimmy Carter to task for suggesting that "[Americans] don't really care what happens [to the poor of the world]," instead finding that:
Americans give a lot. In 2006 they gave about $300 billion to charity....Seventy-five percent of America's families give every year. Fifty percent volunteer their time....
...[T]he average American citizen gives away three-and-a-half times as much money each year as the average French citizen, seven times as much as the average German, and 14 times as much as the average Italian....[W]hen you correct for income differences and tax differences, and all the things that make the United States a different country, you find that the gap doesn't close.
OK, great. So the U.S. gives a lot in charity. But why? What is the benefit, and how does this relate to open source?
This will sound hokey, but we give because it makes us happy. Incidentally, it also makes us rich, but you'll have to read the full article to see why that is.
Brooks relates his confusion at discovering that "people who volunteer do better financially," whether that volunteer service is donating blood, cash, time, or whatever. He finally went to see a friend that specialized in the psychology of charitable giving, who told him:
We've known this for 30 years in the psychology profession. You economists--you worry about money all the time, and money is boring. We worry about something that people really care about--the currency by which we really spend our days--and that's happiness. We've known for 30 years that people who give get happier as a result.
Eric Raymond has said that developers contribute for the "egoboo" or reputation rush that comes from contributing open-source software. I'm sure there's plenty of code written for that reason, and perhaps some contribute .
But I suspect that most people contribute to open-source software for the same reason many people give to charity: it feels good. It makes them happy,.
If you're a project lead, this suggests that the best way to encourage contributions to your project is to foster an environment in which you maximize contributor's happiness. For example, I suspect it's much more personally rewarding to contribute to a community project like Adium than to a commercial open-source project. Contributors need to feel like they're making a difference, that their voice is heard, etc.
For enterprise software vendors, this might mean it would be best to separate sponsorship of open-source projects into foundations, as much of the industry clamored for Sun to do with Java.
Back to Brooks. He makes the point repeatedly that we give more the richer we become, according to various studies. I think it's telling that much of the world's best open-source software is contributed by Google, Yahoo, Red Hat, and other rich organizations.
Perhaps it's all, but it's also likely a matter of big companies with employees that have time and interest in contributing back to the open-source projects that have enriched their corporate products.
Ultimately, corporations are different from individuals, in that corporations have a fiduciary duty to shareholders that trumps happiness. But if Google, Red Hat, and others are indicative, perhaps the happiness that comes from open-source contributions is also good business.
Follow me on Twitter @mjasay. By the way, in case you were wondering, "The most charitable state in the United States is Utah, where people give approximately twice as much as the second leading state." So come on over! We're really happy here. Oh, wait..