Monday, August 28, 2006

Kawasaki Interviews MySQL CEO

Guy Kawasaki has an interesting interview with the CEO of MySQL where they touch on one of my pet theories regarding the value of open source development. From the article:

Question: How do you make money with an Open Source product?

Answer: We start by not making money at all— but by making users. The vast community of MySQL users and developers is what drives our business.

Then we sell an enterprise offering to those who need to scale and cannot afford to fail. The enterprise offering consists of certified binaries, updates and upgrades, automated DBA services, 7x24 error resolution, etc. You pay by service level and the number of servers. No nonsense, no special math. Enterprise software buyers are tired of complex pricing models (per core, per cpu, per power unit, per user, per whatever the vendor feels like that day)—models that are still in use by the incumbents.

At MySQL we LOVE users who never pay us money. They are our evangelists. No marketing could do for us what a passionate MySQL user does when he tells his friends and colleagues about MySQL. Our success is based on having millions of evangelists around the world. Of course, they also help us develop the product and fix bugs.

And the few times that they say that they hate MySQL, that helps us too because complaints usually contain some good suggestion for improvement.

Making money by creating users, some small percentage of which will eventually pay you money to solve the hard problems that they run into using your open source technology.

Back around the time that Nessus went to its new licensing model I got quite a few questions from people regarding the open source business model that Sourcefire operates under and whether they could expect us to follow suit and go to some non-OSI approved license. My response was always "No, we'd be crazy to do that".

The reason I say that is because I believe that the value of an open source technology is not the technology that it implements (beyond a certain point, it has to do something interesting and do it well). The value of an open source technology to the company that develops and supports it is the community that grows around it. It's pretty obvious that the community that grows around your project is your potential customer base, the thing that may not be obvious is that they are also a strong part of your marketing team. My observation is that open source users have a tendency to be evangelistic and that evangelism can go a long way towards getting your company in the door at their company, as well as at the companies of the friends that they have. Additionally, the guys who use open source tools when they're either young with no money (e.g. proverbial college students) or tasked with investigating a technology before getting into a formal deployment (e.g. proverbial IT security guys with hot tasking from on high) start with open source products and will stick with them if they have a good experience. Guys who learned Snort in college in 1999-2000 are IT directors/managers/VPs now and having them familiar with and (possibly) fond of the technology is a big deal for us at Sourcefire. Back in 2002 when Sourcefire was ~10 people and we'd lose a deal to open source Snort my philosophy was always that it was not a big deal, the customer would be back when the problems got sufficiently hard and they'd think of us first as the place to go for a solution if we continued to deal in an even handed fashion with the user community and continued to advance the product.

Advancing the product is a big deal too. Some have theorized that doing things like adding a new detection engine to Snort that could do gigabit speeds and then giving it away was a Bad Idea because it allowed our Snort-based competitors to have a more level playing field with which to compete against us. My opinion is that it keeps the ball moving forward and keeps people's eyes on what we're doing instead of letting them get bored and going off to check out some other more rapidly developing OSS technology or a commercial solution. Letting your technology get stagnant is almost as bad as closing the technology, once the community is bored they'll be looking elsewhere for something exciting. One important point to note in this regard (in a product company) is that just because you're releasing advances to the open source community at large doesn't mean that you are required to drive your differentiation from that technology to zero. If you want to be able to get people to want to pay for what you do, then having some sort of key differentiation is a must! At Sourcefire we did things like developing a complementary technology that allowed us to address one of the toughest problems in the intrusion detection world, false positives. If you can't maintain differentiation against your open source product or your competitors that use your open source technology, then you've got a problem that you need to get creative around, closing the technology isn't an acceptable answer in my opinion.

Once you've open sourced your technology then you have to approach its continued development as a community building exercise that works best by advancing the technology and trying to maintain community-friendly policies and programs. If you do this and try to be clueful about interacting with the open source users as the company grows (a whole different topic) then you have the foundation necessary to build a business of substance. That's the principle that I originally built Sourcefire on and so far it has worked pretty well.

Technorati Tags: , , ,


At 12:08 PM, Anonymous Anonymous said...

Marty - you rock. Thanks for Snort!


Post a Comment

<< Home