Differences between paid and volunteer FOSS contributors

FOSSBazaar is no longer being updated. The information on this site is preserved for your convenience but may be out of date. Please visit Linux Foundation's Open Compliance Program for current information and activities.

tbm's picture

There's a lot of debate these days about the impact of the increasing number of paid developers in FOSS communities that started as volunteer efforts and still have significant numbers of volunteers. Evangelia Berdou's PhD thesis "Managing the Bazaar: Commercialization and peripheral participation in mature, community-led Free/Open source software projects" contains a contains a wealth of information and insights about this topic.

Berdou conducted interviews with members of the GNOME and KDE projects. She found that paid developers are often identified with the core developer group which is responsible for key infrastructure and often make a large number of commits. Furthermore, she suggested that the groups may have different priorities: "whereas [paid] developers focus on technical excellence, peripheral contributors are more interested in access and practical use".

Based on these interviews, she formulated the following hypotheses which she subsequently analyzed in more detail:

  1. Paid developers are more likely to contribute to critical parts of the code base.
  2. Paid developers are more likely to maintain critical parts of the code base.
  3. Volunteer contributors are more likely to participate in aspects of the project that are geared towards the end-user.
  4. Programmers and peripheral contributors are not likely to participate equally in major community events.

Berdou found all hypotheses to be true for GNOME but only hypothesis two and four were confirmed for KDE.

In the case of GNOME, Berdou found that hired developers contribute to the most critical parts of the project, that they maintained most modules in core areas and that they maintained a larger number modules than volunteers. Two important differences were found in KDE: paid developers attend more conferences and they maintain more modules.

Berdou's research contains a number of important insights:

  • Corporate contributions are important because paid developers contribute a lot of changes, and they maintain core modules and code.
  • While it's clear that the involvement of paid contributors is influenced by the strategy of their company, Berdou wonders whether another reason why they often contribute to core code is because they "develop their technical skills and their understanding of the code base to a greater extent than volunteers who usually contribute in their free time". It's therefore important that projects provide good documentation and other help so volunteers can get up to speed quickly.
  • Since many volunteers cannot afford to attend community events, projects should provide travel funds. This is something I see more and more: for example, Debian funds some developers to attend Debian conference and the Linux Foundation has a grant program to allow developers to attend events.
  • Paid developers often maintain modules they are not paid to directly contribute to. A reason for this is that they continue to maintain modules in their spare time when their company tells them to work on other parts of the code.

Personally, I'm also wondering why there are some significant differences between GNOME and KDE. For example, about 67% of contributors where paid to work on GNOME whereas only 38% were paid to work on KDE. Why do some projects attract more commercial involvement whereas other projects continue to be mostly volunteer based? [Update: it was pointed out that I made a mistake with these numbers. In reality, 37% of GNOME developers are paid to work on GNOME or GNOME and other FOSS according to the PhD thesis. The number for KDE was correct (38%). So according to this PhD there is not a lot of difference in the percentage of paid developers between GNOME and KDE. My original question still stands though because there are many projects that don't attract much commercial involvement at all.]

answering the Q

In the case of GNOME v. KDE, at least, the answer to "Why do some projects attract more commercial involvement whereas other projects continue to be mostly volunteer based?" has little to do with community structure, and a lot to do with geography, technical, and license choices. GNOME has historically been more popular for investment because: * LGPL libraries were more commercial friendly (investment by Sun and Fluendo is directly attributable to that choice; I assume that was also a factor for many of the mobile companies who now invest in GNOME but don't actually know that for a fact.) * GNOME was more US-centric, which helped venture-backed US companies get involved (Ximian, Eazel, and as a result Novell) There was (as far as I know) no similar European VC-backed investment in KDE. * GNOME chose to simplify and become more 'normal' end-user centric well before KDE grokked that, which helped stimulate investment by Red Hat and Ximian; similarly work on accessibility before KDE was interested in a11y stimulated investment by Sun. So I'm not sure you can draw any real inferences from the differences between GNOME and KDE here- at least, no inferences that would lead to you structuring your community one way or the other (with the possible exception of the LGPL-GPL choice, to the extent that is a community-structuring choice.)
tbm's picture

Excellent comment!  I agree

Excellent comment!  I agree that these factors play an important role.

Do not trust statistics that you did not manipulate yourself!

"For example, about 67% of contributors where paid to work on GNOME whereas only 38% were paid to work on KDE." How did you get those numbers? Looking at Berdou's thesis I get very different numbers. Figure 6-1 (p. 136) shows that of 199 GNOME foundation respondents 98 were volunteers (i.e. almost exactly 50 %) and 38+35 = 73 were employed to work full-time or part-time on GNOME (i.e. about 37 %). The remaining 28 GNOME foundation respondents were employed to work on other Free Software projects. Figure 6-8 (p. 152) shows that of 63 KDE e.V. respondents 34 were volunteers (i.e. about 54 %) and 19+5 = 24 are employed to work full-time or part-time on KDE (i.e. about 38 %). The remaining 5 KDE e.V. respondents are employed to work on other Free Software projects. So the relative numbers are almost identical for GNOME and KDE. If you only count the people employed to work full-time on GNOME/KDE you get 30 % of the KDE contributors being paid to work full-time on KDE while only 19 % of the GNOME contributors are paid to work full-time on GNOME. Of course, as always: Do not trust statistics that you did not manipulate yourself! ;-)
tbm's picture

Thanks a lot, obviously I

Thanks a lot, obviously I really shouldn't trust my own statistics. As it turns out, I made an error with GNOME. I wanted to take all people employed to work on GNOME or employed to work on GNOME and other FOSS. However, instead of taking the number of people employed to work on GNOME, I took the number of volunteers by mistake. Now that I take the right numbers, I come up with the same figures you do. Thanks again, I'll update the blog.

Do not trust statistics that you manipulate yourself!

The statistics relate to the proportion of RESPONDENTS who are paid to work on KDE/GNOME. Without knowing how the respondents were selected, this are pretty meaningless numbers. In KDE, as presumably is also the case in GNOME, there are thousands of contributors in total. So the real proportion of paid contributors is actually tiny. The only statistic I can think of that means anything is to measure the number of commits, or the number of lines of code committed, according to whether they are by paid or volunteer contributors. The figures quoted are very misleading in the context of the blog, even if they are strictly true.