Thursday, October 9, 2008

The problems with Eclipse and why Netbeans will win in the long run

In the world of free (and open source) Java IDEs only 2 names come to mind, Eclipse and Netbeans. Eclipse was open sourced by IBM back in 2002 and spread like wild fire throughout the Java developer community. Thousands of plugins have been created for it and applications created using it as a base. Netbeans on the other hand is still relatively new and has a very small number of plugins compared to Eclipse.

But even with the thousands of plugins available, Eclipse has always been a very difficult environment to set up. A lot of the plugins have long been deserted by their developers and given the way Eclipse is designed, the old plugins do not work on the new versions of Eclipse. In the past I would find a plugin that I really thought could help me improve my coding. I would try to install it and then eclipse would attempt to install all dependencies for it only to fail. Most of the times the dependencies have not been updated for the Eclipse version I was using.

This is not to put down the commercial versions of Eclipse like MyEclipse or Websphere. They are very well built and work great out of the box.

The problem is that going through all the Java websites, journals, magazines, RSS feeds, blogs etc. the Java Developer community feels that they are not able to keep up with the speed with which Java is progressing. A couple of years ago when JSP and Servlets were new, we all spent time and learnt it only to find out that EJBs were the new thing. EJB was then replaced by Struts and Hibernate and all new jobs required that the developer should know them. Now there is a lot of noise about Spring and JSF. (I think I have gone off on a tangent here but I will end this trail by saying that the Java folk should upgrade current in-use frameworks rather than creating something new every 2 years; Its driving us developers crazy).

Coming back to my Eclipse plugins problem. So there is a hell of a lot that we need to learn and fast. Paying money for something I am not sure I will make any money out of is not what Developers normally do. We look for the freeware or the open source stuff. Eclipse has really depressed developers from using open source plugins.

I came across the EasyEclipse distro that has multiple bundles based on Eclipse available for free download for Web Dev, Desktop Dev etc. It does take out the headache of installing plugins yourself.

Yoxos is also a good service but to use it you will need to be familiar with the plugins you need to perform your task.

But if you want to learn to develop like a real PRO using the Eclipse platform, your best bet is to go for MyEclipse. At $30 this is the cheapest you can go.

Coming back to Netbeans, its good right out of the box and has awesome editors and does most of what you actually need to do in the real world. But when that new framework comes out which you really need to use, don't expect a plugin for Netbeans to be ready anytime soon. But hey things are changing.

For now, I plan to create my next app using Netbeans as I need a good GUI designer, Hibernate support, some database tools and UML designer. And all these come built right into Netbeans by default. I do wish there was some support for GCJ but not found that yet.

1 comment:

jeckels said...

Good, thoughtful post.

Just a quick note, MyEclipse also comes with native Hibernate and Spring support, but you may not know it also includes the Mattise Swing GUI designer. We partnered with Sun to incorporate this popular tool for folks just like yourself.

I would be interested to hear your thoughts.

Best,
Jens
MyEclipse