As commercial open source software continues to expand its reach and maturity, with companies like Alfresco, Funambol, Red Hat and many others setting the tone, some of the common character traits each company shares with others like it are becoming increasingly evident. While it's obvious that each of the aforementioned do a credible job of balancing community with business interests, doing so happens to entail quite a bit of effort and additional pieces to the puzzle. In order to truly find this happy medium, commercial open source operations must, among other things:
- Choose the proper time to commercialize: Too much commercial influence from the onset can potentially stunt the growth of a surrounding community/user base.
- Encourage strong growth + expansion: The beauty of open source is its ability foster distributed innovation and growth in relatively short periods of time. Look at some examples of how quickly commercial open source companies have gained acceptance and demonstrated some impressive numbers in the process.
- Integrate centralized control without stunting organic growth: Despite not being a 'commercial operation,' the Linux kernel is a perfect example. Only a small core team of committers actually work hands-on with Linus Torvalds still handling the technical management. All without cramping the explosive innovation being accomplished around it.
- Meets the needs of non-commercial users: Products which leave open source versions woefully lacking in an attempt to force the purchase of commercial versions/licenses just can't cut it over the long haul. Open source isn't tease-ware for proprietary code, even if a commercial version is available separately from a community cut.
- Actively encourage ecosystem: An ecosystem is what springs up around a useful and trustworthy product. Red Hat has been able to do what it takes to cultivate a self-sustaining ecosystem surrounding its Linux suite by building out a partner network fit with multiple support channels.
- Continually leverage community: Finding creative ways to enable a participating community to feed value back into a product and even the commercial operation(s) behind it remains key. Funambol can boast of a global Q&A team because they found ways to stimulate its growth and development.
- Provide some sort of IP indemnification a.k.a. CYA: Will Price might have put it best.
- Strong open source foundation: Whether code is developed primarily through community (i.e. PostgreSQL) or company (i.e. ActiveGrid) driven efforts, the basic principles of an open source development model should be at the core of such efforts. Transparency at every appropriate level of community governance can provide an assurance of commitment to open approaches.
- Integrate efforts from the open source community at large: GroundWork has demonstrated how it's very much possible to pull together quality open source components into an integrated product suite that competes with larger proprietary offerings. However, most products will benefit most from remaining capable of adding a piece here and there where it makes sense to avoid re-inventing the wheel.
- Communicate and maintain a clear vision: Make it clear where things are going and then follow-up accordingly.
There are, of course, a great deal more plus a whole other set of variables which determine the success of any company, in or out of the business of open source. These are just a few of those which jump out when analyzing what it takes to cut it as a commercial open source outfit nowadays.