As open source becomes more widely used, people have started exploring how and why its approach to developing software works so well. The pioneering analysis here is Eric Raymond's Cathedral and the Bazaar, but that was largely describing a prelapsarian world of free software with little commercialisation. An intriguing question is how the bazaar functions in the corrupting presence of serious dosh.
That, in part, is what a PhD thesis from Evangelia Berdou seeks to answer. Its full title is “Managing the Bazaar: Commercialization and peripheral participation in mature, community-led Free/Open source software projects.” The “mature” projects refer to GNOME and KDE, which is another reason to take a look: hitherto, people have tended to concentrate on GNU/Linux when analysing free software. Given that GNOME and KDE are both very different projects, and represent a later generation of free software, it's useful to have more data on them.
The thesis packed with lots of interesting figures, diagrams, tables and charts, mostly drawing on extensive interviews with people within the GNOME and KDE worlds. It turns out that many more coders in GNOME are paid to work on the project compared to KDE: I wonder whether that reflects a slight US/European split between them, parelleling the general “two cultures” division I wrote about recently.
If you can't face the thought of grappling with that curious dialect of English known as academese - and the rather frequent invocations to the dark god of Foucault – you might like to settle for this handy summary of the research, which comes from HP's open source expert Martin Michlmayr, a former leader of the Debian project, and thus well placed to comment:
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.