Regarding NetBeans, Milinkovich said Sun does a good job of marketing the things NetBeans does better than Eclipse, such as Java profiling and GUI building with the Matisse technology.
“I think the thing they oversell themselves on is the platform; Eclipse is clearly superior,” Milinkovich said. That said, “It’s not Eclipse versus NetBeans. That’s an apples and oranges comparison because NetBeans is a Sun product, not an open community. It is a Sun product that they sell support for.”
Overally, I don’t really think talking about “clearly superior” platforms is not the whole point (even though possibly one might spend some interesting discussions on some basic things, in example the almost total lack of concise, complete, up-to-date Eclipse RCP documentation, the fact that, looking at “core” technologies, some bugs take aeons to be fixed if they’re adressed at all [X11 printing finally made it to Eclipse in 3.3 …], the use of SWT and the implications of losing portability by making use of JNI for GUI display). To me, the “company-vs.-community” aspect indeed is more interesting: Yes, Eclipse does have a strong community so far, a community which adds a lot of functionality and features to the IDE. Yes, so far most of the NetBeans development is being done by Sun engineers and developers (possibly also due to the fact that the “community” itself still is rather limited). Initially, most if not all the Eclipse code base has been contributed by IBM (indeed, a company, not “just” a humble developer community), and still IBM folks of course do make use of Eclipse for their very own commercial / proprietary products like WebSphere Studio. By now, there is Eclipse Foundation being in charge of maintaining, coordinating and pushing forth Eclipse technology development, a foundation consisting of a large set of companies and individuals sharing a common interest in the very platform and “ecosystem”. This way, Eclipse has obviously made its way from merely being “an IBM product” to being an open development community around the Eclipse platform.
I am not sure however what the “community-vs.-company” thing does mean to me being a “mere user” of either platform:
- Given both projects do make use of an open-source license (EPL in case of Eclipse, CDDL and GPL+classpath-exception in case of NetBeans), I can have access to the source files possibly modify parts of the application for my very own needs (if I ever feel like doing so…) in both cases. Same way, both licensing schemes do provide a sufficient legal environment for building and redistributing applications of my own using either one of both platforms for rich client development (although EPL might be a little more “liberal” here – IANAL).
- Given I’d feel like becoming an active part in developing either platform, no one is likely to keep me from building NetBeans modules same as no one keeps me from building an Eclipse plugin and providing it using an appropriate distribution mechanism, like the remote update site feature provided by both IDEs.
- Given I wanted to modify part of the core functionality and/or submit patches to any part of the application maintained by anyone else (the project team in charge in case of Eclipse, or the responsible Sun engineer in case of NetBeans), in both situations I would have to submit my modification to someone and wait for it to be (or not to be) included into the “regular” code base.
- Same way, I assume no one keeps me from providing support, writing tutorials, or offering other kinds of services for either of these platforms.
So, overally, I don’t really get the point. Maybe I am overlooking something essential, but so far I don’t see where there’s the difference between an open-source platform being maintained as a company product and an open-source platform being maintained by some kind of foundation. Ideas and/ or thoughts on that, anyone?