Friday, April 3, 2009

Eclipse is a Product and that’s a Good Thing (tm)

I know that Bjorn is just trying to stimulate the discussion and challenge the status quo with his recent blog posts. That’s a good thing. I do find myself disagreeing completely with his latest proposal to stop distribution of binaries from eclipse.org and instead shift the responsibility to various member companies. Basically, we would go from the FireFox model to the Linux model.

Here is a quote from Bjorn’s blog post responding to some of the negative comments about his proposal:

Changing Things Will Kill Eclipse. I just don't see this. For example, The Linux Foundation doesn't distribute a single binary and yet Linux is so popular that it is scaring Microsoft. Wayne also pointed this out.

The important question to ask here is could Linux have been much more successful if there was a single canonical distribution provided by the Linux Foundation. Yes, Linux is getting more popular, but not nearly as fast as people would have liked and its adoption curve against competition is not nearly as good as the adoption curve for other major open source projects that follow the product model. Why is that? The dozens of different Linux distros fragment the market, create confusion for new users (have to make a choice between distros that are potentially radically different when you don’t yet have a clue), create barriers to skill transition (just because you’ve learned how to use Linux on your machine doesn’t mean that you will be able to use Linux on friend’s machine), and make it significantly more expensive for vendors to deliver new software for the platform (what works on one distro may not work on another). Now compare that to FireFox. It is much younger project than Linux, but has already managed to make significantly more progress against competition than Linux. This is not an accident. You don’t have to take my word for it, a number of people have written about these problems with Linux and how they stand in the way of its growth. Why would we want to emulate the Linux model?

Platform alone is not a good strategy. No matter how good the platform is, companies and individuals will only use the platform if it enables them to reach a significant user base. It takes a product to do that. Not dozens of different products that confuse the users and make it more difficult to build on the platform, but a single trusted canonical product. Eclipse as a Product helps ensure success of Eclipse as a Platform.

Ultimately, what is the problem that we would be trying to solve by stopping distribution of binaries at eclipse.org? Bjorn makes the argument that Eclipse community delivers such a poor quality product and that users are having such a hard time receiving adequate support on the forums that we need to do something drastic to address the problem. How do we evaluate this argument? You cannot look at forum posts alone. The voices of a few disgruntled individuals drown out the opinions of thousands of satisfied users. After all, people only go to forums when they have problems. I would look at Eclipse adoption curves instead as a true measure of user satisfaction. A product that has significant quality problems would not keep growing. The growth would stall and we should see adoption numbers going down. We are not seeing that with Eclipse. The evidence just does not backup Bjorn’s argument.

I do happen to agree that there is more that we could do to help users get better support through paid channels, but we do not need to resort to drastic measures like what Bjorn is proposing. The harm from going forward with this proposal would be far greater than potential benefits.

Konstantin, thanks for your reasoned response. I might be tempted to reply "you cannot look at blog/twitter posts alone. The voices of a few disgruntled individuals..." but that would be too easy :-)

Seriously, though, if someone else has a financial viable proposal that is a better solution to the problems, I'm sure that people would listen.

And, no, I'm not saying that the Eclipse community delivers a poor quality product - what I'm saying is that eclipse.org delivers an *unsupported* product and that as the market changes, the users expect a supported product. The Foundation and the volunteer committers do not have the resources to create a supported product.

"Product" is exactly the wrong term to use for Eclipse. Its a term that technical people seem to throw around without thinking. A "product" is regarded by most of the world as a commercial entity. I understand the concept that Konstantin is getting at, but our commercial ecosystem would be VERY upset if we all started refering to Eclipse as a product.