Time and time again we read and hear about how successful open source is maintained by an army of volunteers, yet those who are at the core of successful open source know this is not what makes the project survive in the long term.
For example, Greg Kroah-Hartman reported, in a Google Talk, that of 2399 unique contributors active on the Linux Kernel project during a year and a half, roughly 75% of the work was done by people who are paid to do so. All of those people are considered volunteers within the project, but they are not there for the good of their health (although open source work is often fun). Furthermore, half of those contributors only contributed a single patch, whilst thirty people (1.25%) do nearly a third of the work.
My own anecdotal evidence, collected from over 8 years of working in projects at The Apache Software Foundation, leads me to assert that the popular “army of volunteers” myth is a result of the chatter of the masses (the other 98.75%). In surveys, interviews and snapshot observations the one patch contributors far outnumber the visionary leaders in a project and as a result it is their voices and opinions that are heard. At the same time, the leaders know that they need to play down their own importance in order to credit the community, since the contributions of the community are vital to the survival of the project, I’ll look at why later in this post.
Dan Woods, in “The Myth of Crowdsourcing” appears to agree that leadership and vision is what is needed in a successful project:
There is no crowd in crowdsourcing. There are only virtuosos, usually uniquely talented, highly trained people who have worked for decades in a field…What really happens in crowdsourcing as it is practiced in wide variety of contexts, from Wikipedia to open source to scientific research, is that a problem is broadcast to a large number of people with varying forms of expertise…There is no crowd of open-source developers ready to attack every problem. In fact, most open-source projects are the product of one obsessed individual who wrote the software to meet his own needs. Often this individual was joined by other programmers who shared the founder’s vision and, under his direction, created great software.
However, I believe Dan, at least partially, misunderstands the importance of the crowd in crowdsourcing.
The real importance of community
The community is vital to the sustainability of an open project, and, increasingly as I’ll discuss later, closed projects too.Note that Dan talks about the “broadcasting of ideas”, this is where the “army of volunteers” comes into its own. They validate what is happening in the project, they fix bugs, make suggestions for improvements and provide sounding boards for new ideas. Without these contributions a project is completely reliant on a handful of individuals in leadership roles. This dependency presents two main problems.
The first is that the project relies on the limited knowledge of the leadership. Even the best of the best don’t know everything, or as Mark Twain puts it “to succeed in life, you need two things: ignorance and confidence.” An effective and successful leader has the ability to step back and listen to those with different experiences, make the right (or best) call and ensure it is actioned. That is, the best leaders encourage, support and reward an army of contributors so that their project continues to excel.
The second problem of this dependence on a small group of leaders is that things change. Over time, one or more of those leaders will move on. Where will their replacement come from? If the leaders have already cultivated an “army of volunteers” in an open and transparent way there should be no shortage of people willing and able to step up and take on the role.
What about closed development?
To ignore your community is a mistake in almost every case. Community and the power of crowdsourcing is not, as Dan explains, the sole domain of open source software. Open innovation is becoming increasing popular in most industrial sectors, including closed source software. Microsoft, for example, has its Most Valuable Professional programme which is specifically designed to:
recognize the best and brightest from technology communities around the world…These exceptional community leaders come from a wide range of backgrounds. They are teachers, artists, doctors, engineers, as well as technologists, who actively share their high-quality, real-world technical expertise with the community and with Microsoft.
Is openness for me?
Most people starting new projects assume that either their project is too specialised to be of interest to third parties or that opening up to the community will result in them being swamped by well meaning contributors. As a result, they don’t engage, support and reward their community.
Popular communities do not grow from one member to hundreds overnight, there is little chance of you being swamped. They grow organically and, assuming the community is empowered to self-govern under strong leadership, they grow in self-sufficient way. As for niche projects, an “army” of just one person can still be extremely valuable, who knows what just one person can do – after all, you are just one person, right?
If you care about software sustainability you should never ignore your community.