I am off to the Open Source Think Tank conference in Napa this week (along with Matt Asay, Marten Mickos and Gianugo Rabellino) with one burning question on my mind: how do you leverage open source "goodness" into vibrant community "greatness."
To torture a metaphor, making a product open source in an emerging market is like making water free in a land where the horses don't know they're thirsty. Going open source is not enough, the challenge is to also educate the developer market about a problem they don't know exists.
Where open source has been most successful in the enterprise has been in allowing a new entrant to gain a toehold in an existing commercial market. Open source "goodness" allowed MySQL to get traction in the crowded SQL database space and allowed JBoss to sneak past IBM and BEA in the app server space.
An open source strategy has clear value when the market is well established. In the case of WaveMaker, however, we are evangelizing a new category. Because the last ten years of web development has been code-centric, Java and C# developers don't wake up in the morning looking for visual tools to help them build their Web 2.0 applications.
A sign of how far the market has gotten away from the good old days of PowerBuilder and visual programming is that people think the Ruby on Rails is a good high productivity alternative to Java and Spring. Substituting one complex code framework for another is not exactly a dramatic step forward in democratizing web development.
Larry Augustin helped me think about this over breakfast last month. He pointed out that the traditional way to evangelize a new market is to pour lots of money into analyst relations and PR. The open source way to do this is to make a better mousetrap available to an open source community and stand back while the world beats a path to your door.
This is probably overly optimistic. Making a product open source lowers the barriers to adoption but doesn't actually drive adoption, particularly as enterprise IT remembers both the promises and shortfalls of Rapid Application Development in its previous incarnations.
Creating a community means finding a way to make developers aware of a problem they don't always know they have. Making WaveMaker available under open source is a first step, but the real work will come in creating a community around WaveMaker that evangelizes the need for more productive web tools.
Got ideas about how we can build the WaveMaker community - let me know!