Zenoss, a software developer based in Annapolis, Md., began operations in 2005 as an open source developer. The company released its Zenoss Core code to its community at customary open source pricing: free.
But before you dismiss this as a touchy-feely story with no relevance to the realities of the sales-centric business world, consider this:
In 2009, Zenoss revenues were $5.6 million, a 5,317% increase over its 2006 revenue of $103,000. That performance was good enough to earn the company the #42 spot on the Inc. 500 list of fastest-growing companies in the U.S.
More than 25,000 organizations in 180 countries around the world use Zenoss software to manage physical, virtual, and cloud-based infrastructure. Zenoss products monitor more than a million network and server devices daily. Commercial customers include Rackspace, WebMD, LinkedIn, and Deutsche Bank.
When we recently spoke with Olivier Thierry, Zenoss Chief Marketing Officer, he said that 2010 revenues will show another double-digit percentage increase over 2009, and the company plans to add to its current 64 employees, up from 50 in 2009.
Thierry, who goes by "OT" -- "When I got to Texas, people didn't know what to do with the extra "i" in my name" -- says the secret of making a success in open source is conversion: Knowing "when to pick the fruit," to use his metaphor.
Tip #1: Plan the commercial app well in advance.
"There are lot of folks in small companies thinking about open source," Thierry says. "The key is to truly understand what it will look like when you convert to a commercial application. You have to balance out growing the community to sufficient size -- the tree has to ripen -- but you need to really understand what the compelling things are that will drive the conversion.
"What are the forcing mechanisms that drive the conversion? That model needs to be thought through very carefully. It affects products decisions, everything. If you try to do that on the fly, or try to do it later -- it will be painful at best, and often impossible.
"We designed a product from scratch, for enterprise system managers. We open sourced that and built a community around that product. The design of the model was that we knew from the start that we would be converting them to a commercial model -- paid support plus extended features. If you don't think through that conversion process, you will be screwed."
Tip #2: Adhere to the three keys of commercial open source.
The three key questions you must answer, Thierry says, are:
- What's your product definition?
- What's your engagement model?
- What's your conversion model?
"We did the core development over a span of about one-and-a-half years, getting the community to experience the product," he says.
"We packaged Zenoss Enterprise -- which had the core, plus contributed development. Customers sign up for annual support, and we added functionality for larger enterprises to make it more appealing -- and that's available only on the commercial side."
Tip #3: Guide your community with "a big red pen."
To make sure the product ends up where you want it to, you must guide your community, Thierry says; you can't give them a blank canvas. "We call it the BRP approach -- for 'big red pen.' Give them a BRP to modify and enlarge what you've created.
"The community will give 'edge case' BRP -- they'll add to what you've got -- which is really what you want. We got of lot of contribution from the community.
"We have a community right now of 85,000 people; 10% of those are code contributors, and 10% of those are really active. It's incredibly valuable, to the tune of a 1:1 ratio: For every dollar we've spent internally, we've had a community contribution worth another dollar."
Tip #4: To convert your community to commercial, use a soft touch.
OK, 85,000 is a pretty respectable base; how do you move them from free open source to commercial open source? "You have to nurture them," Thierry says. "Rather than a hard sell, give them soft questions: 'Did you know that we have these exciting new features?' Put it into a multi-touch campaign to show them the advantages of conversion to that product.
"We touch the community through newsletters and other electronic mailers, then, if we get a response from that, invite them to weekly webinars, or our inside marketing reps contact them individually. Trade shows are also a great place to meet your community.
"For example, about a year ago a very large hosting company came up to us and said, 'We're a user of your core product.' I was having the dialogue with them, and they told me, 'We're managing 16,000 servers with your product right now.'
"In other words, they were running a huge enterprise all on open source. They looked to convert to our commercial product because they had a team of people doing support work -- which created a lot of risk -- and it made more sense for them to pay us for that."
Tip #5: Gather all the data you can -- carefully.
Your open source community can be an invaluable test bed to find out how people are using your software, but you have to be careful how you get your data, Thierry says.
"Because it's open source, we have what we call home statistics, but the users can turn it off. So, we know some of what they're doing, but you have to respect their privacy.
"If they've turned off home stats, we'll send them a webinar invitation: 'Would you like to tune in and find out more about this or that feature?' Our community webinars tend to be small, in the range of 10 to 20 attendees -- but you're always casting that net."
Tip #6: Respect current users when you make features commercial.
"It's very easy to **** off your community, and you have to be careful," Thierry says. "If you make something commercial, and you've taken something away -- and maybe the community really needs it.
"We did that recently with a search function that we took out, and quickly realized, Oops. We reversed ourselves on that and put it back in."
Remember, this is not just a matter of being nice guys who "do no evil," to borrow Google's mantra; it's part of you economic salvation. That free open source community is your sales prospect base, and you never, never want to give them a reason to distrust you.
In Zenoss's case, Thierry says, "There are about 10,000 deployments of the product that have not yet converted. If I look at only the top 500 of those, that represents about $30 million in recurring revenue opportunity -- and those are just the ones that we know of."
Tip #7: Make your community forums your company's core culture.
"Community online forums are huge," Thierry says. "That's where all the action is: peer support, contribution, edge development pieces we call ZenPacks."
"We have one forum administrator who culls all the contributions, but everybody at Zenoss participates in the forums. It's absolutely the best way to take the temperature of how your product is doing.
"When we release a product to be tested, it's now being tested in 3,000 implementations -- which is a really big and important and valuable deal for a small company like ours."
And what if a Zenoss employee doesn't participate in the community forums? "It isn't really an issue," Thierry says. "I don't have to incent that behavior, because it's part of the DNA of what we do. You can't get away with a release unless it's been vetted through the community."
We visited the Zenoss Community page, and strongly recommend our open-source-minded readers to do the same. Zenoss has built a masterpiece model, with just the right mix of education, soft sales pitches, and dialogue.
They've got downloads, documentation, discussions, videos, webinars, blogs, polls, and join links for Twitter, Facebook, and LinkedIn -- all on a single, stylish, easy-to-navigate page. (In fact, even if you're not in the open source space, it's worth a look.)
Tip #8: Treat your community stars like celebrities.
"A lot of guys [in the development community] are interested just for the peer recognition," Thierry says. "It's very, very important for them.
"You'll get some contributions that are rich and deep, that represent several weeks of work -- and for all of that, they're getting paid nothing. But the winner gains huge status with his peers."
However, Zenoss does reward its community development stars: In a recent ZenPack competition, Zenoss gave the winning entrant a Mac iPad. Still, that's small potatoes compared to putting someone on staff or hiring a contract coder. And the most frequent prize is a Zenoss T-shirt.
Tip #9: Let your community choose the best contributions.
Not every open source developer is a great developer; how do you separate the valuable from the not-so-useful contributions?
"We have the community stack rank them," says Thierry. "Then it's the community picking out the winners, rather than the corporation.
"As with any community, there are varying levels of contribution: Some that we are going to certify and support, and some that just will stay out there."
Tip #10: And for the really great contributions, buy the license.
Thierry says Zenoss has two basic routes to handle the licensing of code contributed by the community: "If we choose to support it, it remains in the open source community, and youíre turning over the license to Zenoss to provide support," he says.
"If it's something we want to sell, we will contact that developer individually for the rights to the code. We've done that quite a few times, and it has always worked out."
Tip #11: Wait, wait, wait to start the conversion to commercial.
Let's back up for a moment to Thierry's "ripe fruit" metaphor -- meaning, how do you gauge the right time to start converting from open source to commercial open source.
"The tendency is when you look at an orange tree is to say it's ripe, and pick it," Thierry says. "I know, because I have one in my yard. But then you go back three weeks later and realize it's even riper and tastier.
"The longer you can wait, and not strip mine your community too soon, the better you'll do on the commercial conversions. You need to look at the rate at which you're gaining community, because you don't want your build-up rate of your community engagement to be faster than what you can support.
"You really need to look at the math: the capture rates and cost of conversion. All of the work that youíre doing -- to build the core and the community -- is a cost you have to amortize over the the life of the commercial model.
Tip #12: If you want to follow this model, line up funding.
So, how long does it take to open source code to "ripen"? I.e., how long do you have to wait before the revenue starts rolling in?
"It depends on the hotness of the product and the slip of the community," says Thierry. "You probably can't do it in a year; my best guess is you're looking at about two years. The more you can slow-roll the community, the better. You never want to find yourself saying, Uh-oh, i don't have the funds to develop the commercial side."
Is it possible to do without funding?
"Yeah, but how much do you -- the individual entrepreneur -- want to spend on the core product that you put it into the community? The scale and scope of that product will depend on the individual.
"If you assume $1.5 million is a typical seed funding, plus the usual second round, it's probably going to cost you $2 to 3 million to get to the point of a decent product."
Tip #13: For opportunities, think a) disruption and b) need.
Thierry says you should ask yourself, where can you apply a disruptive community model someplace that's in need?
"We came in, looked at systems management tools, and saw that people were spending huge sums of money. They weren't satisfied, and cloud computing was gaining traction. That's an example of the kind of perfect intersection you need to find.
"Find a market that is dissatisfied with a legacy model and commercialization, and go in with a disruptive open source model.
"We've disrupted the big four guys in systems management, we're playing in a space that they're having a really hard time dealing with, and we're offering prices so low that they can't figure out how to compete."