« Open Source program manager wanted | Main | An honor »
January 27, 2005
SourceLabs talks about customer concerns
SourceLabs have listened to my rant and now you can find their weblogs here and through other links on the website. In his weblog, Cornelius Willis (VP Sales and Marketing) writes about the concerns customers have about Open Source. Interesting remarks and I have a couple of comments.
Today most open source software testing is limited to functional unit testing, i.e. does the component do what it was intended to do. There is no stress testing (throwing millions of transactions at the software for periods of weeks and months), there is no failover testing to determine how the software fails and recovers, no system regression testing to determine the effect of changes on other components, no scalability testing to understand how the software scales in different configurations. At SouceLabs we are building out an integrated testing regime we refer to as CERT7 to ensure the dependability of the open source software stacks we support. These certication tests and their results will be freely available so that anyone can reproduce or recalibrate them as needed.
But this doesn't help in actually testing the system dependability of the end-product. As long as Open Source is still only at the infrastructure level (i.e. frameworks, database, app-server) then the actual solution will be comprised of additional components or integration modules built on top of any Open Source solution. Any industry-specific solution will still require dedicated testing.
This is the very reason I'm so sceptical about complete stacks of Open Source projects being that interesting to corporations - at the moment. Today, they still go out and "mix and match" the bits they need to glue their own solutions together. I say "at the moment" because I do think there is a way around this and we'll see it happen in the next 12 months or so.
Lack of mission critical support Customers who bet their business on their computer systems need to know that someone is on call to fix problems without question. Even if a system fails at 3 AM on Saturday, a team needs to be available to start working around the clock until the problem is fixed. While many companies sell support for individual open source components, no one provides support for integrated, tested systems of components, providing the proverbial "one throat to choke" when something fails.
This point is obviously true. Any company wanting to use Open Source in mission critical applications will need a form of SLA that allows them to sleep at night. As I've said before, it's no good posting to the community mailiing-list at 4 in the morning and hoping you'll get a response or a fix within minutes. Cornelius is also correct about there not currently being a single company that provides this type of support for a complete stack of products (I guess this is something JBoss will offer for JEMS). However this is also tremendously hard to actually do. Given the amount of experience you need in an Open Source project to be able to "fix anything" at a 24x7 level and I think it will be very hard to apply that level of knowledge to several projects at once. A company wanting to do that would - in effect - need to buy at least one lead developer from each project. Which of course can be done.
My personal view is however that you also need to do more than just "have that developer". Customers will expect to find you inside the community, speaking and writing about the Open Source project and in general being a good community member. Something very hard to maintain for one project - let alone several.
Posted by Matthew at January 27, 2005 12:02 PM