One of the keys to a successful open source community is appropriate transparency. A community with strong values around transparency will also be likely to respect its participants privacy. Such a community will also be unlikely to have a copyright assignment benefiting a commercial party. Here's why.
An open source community arises from the synchronization of the individual interest of many parties. Each person:
- comes to the community at their own (or their employer's) expense,
- seeks to derive from the commons at its heart software that fulfils their individual interest and
- freely brings with them their own abilities and contributions.
No-one is owed a living by anyone else - communities do not have business models, only the participants gathering in them do. Participants with a business interest in the code express that interest elsewhere, if it's a truly open community.
To create an environment where people are willing to synchronize their individual interests and collaborate over code, there has to be transparency. But that doesn't have to extend to the lives of the participants themselves. Your motivations for being involved in the community are of no relevance to my life because our relationship in the community depends on code. The code, the community and how they interact are transparent, but motivations for participating in it are opaque. My reasons are up to me alone and your are you. They're private and irrelevant because the code speaks for itself.
Thus in a healthy open source community, I'm free to maintain my privacy around my motivations and how I'm funding my involvement if I wish. On the other hand, I'm able to work in an environment of transparency where all the code is known, all its origins are known, all its defects are potentially known.
That combination of transparency with privacy is, in my opinion, a primary characteristic of an open-by-rule open source community. Communities without the rule "if it didn't happen as a matter of open record, it didn't happen" are closed, regardless of the software license. Open source is about transparency at the community level but also about the privacy of the individuals involved.
The interface between the two is where a formal community/contribution agreement is relevant. To maintain trust, enable development transparency and permit individual privacy, it's reasonable to ask every participant to sign an agreement promising to stick to community norms, especially with respect to the originality of contributions and the possibility that they are associated with parallel-filed patents.
But it's not reasonable to give any one participant the exclusive advantage of aggregated copyright for them to use privately. Doing so breaches the transparency-privacy boundary, damages trust by enabling opaque behaviour with the community commons and introduces private business-model reasoning into the community where it doesn't belong.
I've heard arguments such as "we have to be able to make a profit" or "we contributed the original code" to justify copyright assignments, but these are personal not community arguments. Your need for profit is yours, not the community's, and if you didn't have it nailed before you started the community and irreversibly licensed the code under an OSI-approved license, that's your problem. Your business need is no reason for me to surrender my copyright to you, so please don't demand it.
That's why, as a participant in Project Harmony, I'm only interested in the variants that grant equal rights to everyone. There will be more news about this soon - watch out for it.
[Expanded from a comment I made in FLOSS Weekly 39]