Hello NetBeans, good bye Eclipse!
After using Eclipse almost exclusively for Java programming in the last 7 years, and put up with its different problems, which seem to pile up over the years, I finally took a jump and installed NetBeans 6.8 to see how it’s doing recently.
The event that triggered the switch was an upgrade from Ubuntu 9.10 to 10.4 over the weekend, which resulted in Eclipse crash every time code completion is activated. Startup was desperately slow, and interface responsiveness was sluggish. Not the first time Eclipse caused me problems after a system upgrade. As a matter of fact, I had to put up with its problem with every major system upgrade, and wasted days fixing it.
It was time to take a different approach. Having heard a lot of good things about NetBeans in the last two years, I thought I should give it a try.
After two hours of digging around in NetBeans, I was impressed. Here are the major features I really like:
- Installation was really smooth, no plugin dependency mess. To be fair, Eclipse installation is as easy as unzipping the compressed package too.
- Startup was fast. When I tried it many years ago, the startup process made my system crawl like a snail, and my hard disk spin like a headless fly. Now, it starts up even faster than Eclipse, if you have installed all the equivalent Eclipse plugins, especially the ones for web development.
- UI is very responsive, which is impressive, given the all-Java code base. It is refreshing, after the sluggishness of Eclipse in the late. Quite ironic, you may say, as Eclipse’s SWT-based UI was the paragon of Java user interface.
- Programming C/C++ in NetBeans feels like you are in its element, unlike Eclipse CDT, which is an afterthought. And yes, it’s even much better than Code::Blocks, and don’t even mention Anjuta.
- Plugin integration makes you feel like you get a whole entity, and not a pile of components for which you have to track down the dependency mess.
- Code completion is smooth and responsive. There is no indexing and disk-spinning issues, even when you are programming in C or C++. It’s like a fresh air after all the frustration in the last few days with Eclipse.
- Debugging is great, especially in multi-threaded programs!
- SVN is supported out of the box, not to mention that it also support other SCM. Not that it is hard to install Eclipse SVN plugin, but sometimes, dependency issues can bite you in the behind. However, to be honest, I still prefer Eclipse’s perspective model, which makes it clear as you switch to the SVN repositories browsing perspective.
- Emacs key binding works better than in Eclipse too. Eclipse’s Emacs key binding could cause it to hang, if you type too fast or move the cursor around too fast with Emacs keys. Ok, I’ve been experimenting with NetBeans for only half a day, so we can’t be sure if it will have the same problem.
All in all, I’m very happy with it. So good bye Eclipse, for now.
Let’s just hope that Oracle will keep up with the good work.