Social Engineering in Open Source Projects

A prospective CodePlex project coordinator recently asked me an intriguing question, "Have you seen any good qualitative data or studies on weight of factors for building successful open source applications?"

By way of example, he enumerated a variety of possible factors including:

  • Passionate community leader
  • Expert community leader (either technically or in the application type)
  • Strong core of committers/developers
  • Popular app (or underserved app area)
  • Bundling with other apps

The way I see it, an OSS project is not unlike a fraternity (or a sorority). CodePlex projects are social organizations that aim to help their members achieve a set of shared objectives, be they hobby-related, acclaim, experience, knowledge, or financial gain. In the same way that ample space, loud stereo systems, big screen televisions, beer taps in multiple refrigerators, and easy to clean floors aid and abet the social objectives of a fraternity, so too do the social affordances (features) of an online collaboration venue like CodePlex support the needs of open and shared source development teams.

As we were designing and building CodePlex over the last year, I was and remain very, very interested in answering this nagging question.

If you are thinking about starting a project on CodePlex and you want to encourage collaboration, cooperation, the satisfaction of core contributors, and project longevity, I encourage you to read THE IMPACT OF IDEOLOGY ON EFFECTIVENESS IN OPEN SOURCE SOFTWARE DEVELOPMENT TEAMS (April 2005, Katherine J. Stewart, University of Maryland).

I was particularly taken by Ms. Stewart's research and conclusions about the effects of forking and naming “norms” on the effectiveness of OSS projects. This paper inclines me to believe that the success of an OSS project is as or more contingent upon the behaviors and actions of its contributing members as the raison d’etat or structure of the project itself.

As with most papers of this nature, its footnotes and references are of immense value. Thus, if this paper doesn't answer your questions, I encourage you to skip to the end of the paper, to the "References" section.

In your opinion, what factors are most important to the "success" of an OSS project? What have you read, online, that support your contentions? Inquiring minds wanna know...