One way or another, everyone needs to eat -- and that includes all of you open source people too. Fortunately, there are as many ways to make money in the world of open source as there are people who try it. Here's a run down of the top models.
Support Contracts and Licenses
There are many different ways to approach making a living, or at least covering your costs, with open source. Still, there are some common business models that you'll see throughout the open source marketplace.
Often the pay offerings are focused on the enterprise and other large institutions.
For example, many corporations have policies stating that they can't use software for their infrastructure unless they have paid support -- in case something goes terribly wrong. Since in the open source world, anyone can offer paid support for a particular project, the key is differentiation. You have to make sure that your offering stands out in a crowd.
One way of standing out is to offer support for your own project. If you're the lead developer (or at least a core developer), people know that you know the software inside and out, making you an excellent choice to diagnose their problems.
Customers also know that if you're part of the core team you can advocate for their particular needs when it comes to project priorities.
There are plenty of individual developers or small teams making a living through paid support, often as an afterthought after a project becomes popular and clients come knocking. In some cases, however, companies are formed to back open source projects with services like this in mind from the beginning.
Bill Robinson, VP of the Americas for Alfresco Software (news, site) says being a commercial company behind an open source project, "gives us the ability to deliver enterprise standard service level agreements -- a must for companies and organizations deploying enterprise content management solutions."
Commercial "Enterprise" Upgrades
There's occasionally controversy about offering a free version of an open source project to the masses and a fancier version for those willing to pay for it.
At times this controversy comes from the fact that the free versions offered by some open source vendors have so few features, or are so poorly supported, that they're nearly useless. In these situations more cynical voices will assert that vendor following this approach are simply using open source as an inexpensive marketing ploy. At other times the arguments revolve more around philosophical issues.
Commercial upgrades can come in a number of different forms:
Paid Add-On Modules
For example, there's the idea of purchasing specific add-on modules for specific tasks. Many open source projects such as Joomla! (news, site), Drupal (news, site) and Plone (news, site) have huge ecosystems where small companies evolved to deliver and support single pay modules, while others grew into more sophisticated shops offering multiple modules, support and other value-added services.
Different Subscription Editions
One example of a company that offers different levels of products is DotNetNuke (news, site). According to Shaun Walker, Chief Architect and Co-Founder of DotNetNuke Corp, the open source DotNetNuke project was founded in 2002, and the company was founded later in 2006.
In 2009, he says, they "launched a series of paid subscription products (our Professional, Elite and Elite Premier Editions) which have been very successful, garnering nearly 500 customers during 2009. These Editions are built on the same open source core as the free DotNetNuke Community Edition."
DNN subscription customers get additional features designed for the enterprise, such as, "advanced content workflows, granular user permissions to control access rights for content editors, enhanced content editing tools, enhanced web farm support, web page caching, and online security and performance monitoring tools."
Commercial open source vendor DM Web Corp offers the dotCMS (news, site) web content management system -- a Java-based framework geared towards extensibility and e-commerce. Their community edition is free while their enterprise edition lists for US$ 4,750 per CPU.
Their paying customers get the same features, but in a more robust (lots more QA testing) package. They also get fast access to patches and fast turn around times on support tickets, among other "enterprise" benefits.
Paid Support + Services
But not every company making money with open source takes this route. For example, Cheryl McKinnon, Chief Marketing Officer with Nuxeo (news, site), points out that, "Unlike a growing number of commercial open source vendors, we do not have two separate software packages or licenses." Instead, she says that, "Our Enterprise CMS platform and related applications, Nuxeo DM and Nuxeo DAM are available under LGPL, with no license cost."
Their model instead revolves around paid support when customers need to deploy the application, and on offering applications built on top of the free solutions. Nuxeo has also begun to bundle some SaaS tools with their enterprise support model, making it more of a hybrid services plus software offering. This is an approach we expect to see more of.
Commercially Packaged Knowledge and Training
The Umbraco CMS (news, site) project team have built a profitable model in part by monetizing the knowledge around their web content management platform. Umbraco.tv is a video-based training website that costs something like US$ 15-25 per person per month for access.
Remaining a Good Citizen in the Ecosystem
Open source projects, developers and companies aren't islands. They exist in an ecosystem. Maintaining the right balance so you can make money and yet remain a good citizen in that ecosystem is one of the keys to whether both a particular project or business thrives.
Not the Only One Trying to Make a Living
Acquia was founded in part by the founder of the Drupal project, Dries Buytaert. Lullabot, a partial competitor, employs Angie Byron, his co-maintainer for the massive release that is Drupal 7. Both companies are in the late stages of working on SaaS versions of Drupal, Drupal Gardens and Buzzr (news, site).
Participating in OSS and Standards Development
Many of those making money in open source also participate heavily in the process of making and implementing standards.
For example, McKinnon points out that Nuxeo spearheads the Apache Chemistry (news, site) incubator project, which she says is "developing a generic, open source Java reference implementation of the Content Management Interoperability Services (CMIS) standard." They also participate in the OASIS CMIS technical committee itself.
The Hippo CMS (news, site) team are also highly active in this regard. They participate heavily in the development of the Apache Jetspeed portal project. The Drupal team, advancing web standards work, is one of the first projects to build semantic web technologies directly into the Drupal 7 core.
As an aside, pure commercial CMS vendors have also played a big role in the development of both community open source projects and standards. For example, Day Software (news, site) stands out here as a big contributor to projects like Apache Server, Apache Sling, Apache Jackrabbit, CMIS and others.
Good citizenship makes sense on all sides of the software game.
Bumps in the Road
When asking about challenges to making a living through open source, you'll get many different answers depending on which bumps in the road the person you're talking to encountered:
Getting the Story Out
McKinnon says that with Nuxeo, through their 10 year history they learned that with Nuxeo CPS, "While a technologically advanced product with wide adoption, we weren't aggressive in our go-to-market efforts. As we launched Nuxeo EP as our next generation offering, we committed to making sure the market heard our story."
Walker with DotNetNuke says, "If I had to do it over again, I may have chosen a less controversial name for the open source project. In addition, I think it would have been useful to have done more research up front into the pros and cons of various open source licensing and business models. Once the foundation of an open source project is established and a community and culture begins to gel, it becomes difficult to make changes even if they are in the best interest of all stakeholders."
Managing Community Contributions
Community is an aspect that comes up quite a bit in both the challenges and advantages columns. Robinson with Alfresco pointed out that the strength of their over 100,000-member community brings in contributions across the spectrum from code to language packs and books.
On the other hand, he says, "it does take extra bandwidth and collaboration tools to effectively manage community contributions efficiently."
Balancing the Needs of the Community Against Making Money
Walker gets to the heart of it when he points out that DotNetNuke Corp. is "constantly balancing our commercial ambitions with the needs of the open source community to identify solutions that create value for both the DotNetNuke Corp. shareholders as well as the members of the open source ecosystem. In addition, because our subscription products are built on the same open source core as the free Community Edition, we are dependent upon the contributions of the open source development teams to improve our product platform."
Well Worth It
Yet with the additional complications of building a business around open source, most vendors in this space say it's well worth the advantages. Over and over the following benefits come up:
- Open source allows individuals and companies to offer low-cost yet robust solutions, often giving them an advantage over proprietary competitors.
- The size of many open source communities allows for fast, agile development which drives innovation at a pace that many proprietary companies just can't keep up with.
- As an open source community grows, and an open source solution is more widely adopted, your market grows with them.
These days, the question is becoming less and less, "How can you afford to go open source?" and becoming more and more, "How can you afford not to?"