I’ve written before about the genuine renaissance open source software represents and the vast implications that openness provides. I’ve admitted that computer science, based on its relative unwillingness to share great ideas, has lagged behind other hard sciences in its understanding of how and where value is created.
I’ve also written about the principles of open source software and how the mere gifting of source code, while important, does not actually generate the majority of value for the community. Instead, the real value comes from adhering to the principles of open source–transparency, participation and collaboration–and I’ve tried to evangelize this is the real method upon which commercial open source companies help create success.
In the past year and up until my most recent trip to Europe (spring 2011), I’ve been talking less and less about open source software–both the conceptual model and Jaspersoft’s position as a commercial open source software company. I believe I’ve had less to talk about precisely because my predictions have been realized; the open source model is much better understood and open source software is now more mature and acknowledged as sufficiently capable to run even in the most mission-critical environments.
For years, the conversation around open source technologies was about "is it really as reliable, as safe, as powerful and as cheap as they claim?" By and large, these conversations have become a thing of the past, and not only are those in the open source community happy about this, it’s also given many COSS (commercial open source) companies the time and attention to address more of their key competitive advantages beyond being open source.
Recently I’ve been spending more time with open source communities. Through global travels, I’ve met with a wide number of those participating in Jaspersoft’s community as well as community members affiliated with Talend, Acquia, Red Hat (Linux and JBoss), R (the statistical analysis language/tool) and a variety of "Big Data" communities, especially Hadoop. In all of these cases, I was delighted to witness growth and vibrancy, with community members talking proudly of what they’ve done and intend to do with these great open source products.
What I was surprised by was the amount of improvement that open source communities could reap if there was a stronger understanding of the shared responsibility in open source software.
Open source communities thrive based on the community members donating either their time and/or money. Donating money typically comes in the form of buying or subscribing to the commercial versions of open source products. Donating time can come in almost any variety or form and can be much easier than you might think. A few ways include providing technical support for one another in forums, posting reviews and comments on projects, helping to QA a release candidate, assisting in localization efforts, even just helping to promote the open source project/product by representing it publicly (including allowing your organization’s logo or name to be associated with the OS product), voting for features and enhancements so the community voice is heard, responding to community surveys so better alignment and value results, and of course contributing code improvements (features, bug fixes and the like). In this sense, my broad definition of “time” allows any community member to contribute back in some form and provides a valuable currency all by itself.
Some of the community members with whom I recently spoke admitted to using only the open source (Community Edition) versions of the software and not contributing back in any recent or relevant way to the community and its projects. If you are receiving big value through the use of a valuable open source project, remember that contributing back to the community, in any of the various ways I’ve outlined, is the most responsible step you can take to help ensure that your community and open source project continue to thrive and succeed. Doing so voluntarily or when asked is a great form of participation and collaboration.
Equally, the open source project leaders (e.g., the COSS company or OS Foundation) have an on-going responsibility to make it easier for community members to contribute. At Jaspersoft, for instance, we’ve implemented a number of key features within our community web site designed to foster easy participation and collaboration, including:
Feature voting to help calibrate priorities among the community;
Regular community surveys to uncover longer-term needs;
JasperBabylon, a project area specifically designed to make localizing our software easier and more collaborative.
Also, we’ve recently instituted a Community Advisory Board, which provides us with more in-depth feedback on a number of strategic topics. The great participation rates we sustain only reinforce our sense of responsibility to help build a growing, vibrant community.
So I offer this encouragement to both those leading open source projects and the community members who are involved with any substantial OS product/project: Contribute. Participate. Collaborate. Act transparently. The goal should be that each member of an open source community embodies the principles of open source. That’s what makes this a renaissance.