Skip to main content

In defense of Eclipse vs. NetBeans

There's a post over on EclipseZone titled "Too Many Cooks Spoil the IDE", wherein the author, Robert Thornton, takes Eclipse to task over his difficulties with the tool. In essence, his complaint is that the "incoherent complexity" of Eclipse makes it difficult to use efficiently and makes the tool fragile and unstable. As a former Eclipse user I can attest to some of the "incoherent complexity" if you stepped outside of the Java development environment. But I can also attest to the very high quality of the application as well.

My Eclipse experience began in earnest (starting with versions 2.x) when I used it on a large program I was a part of called WARSIM. The WARSIM team turned to Eclipse over two years ago in order to effectively handle the development of a very large Java-based application that we inherited from another development team. That team had used JBuilder version 5 for its IDE. When we were given all the existing application resources, we were also given the existing JBuilder licenses, but no funding to upgrade or maintain JBuilder. And that was a problem. We knew when we accepted the Java-based app that we were going to upgrade it from Java 1.2 to 1.4. JBuilder was locked into using JDK 1.2, and it was already a generation behind when we got it. With no money to upgrade the JBuilder licenses, I started to look at alternatives.

I first looked at NetBeans 3. I found it to be slow and I had issues with the interface. I had several other engineers evaluate NetBeans and they came back less than satisfied as well. I then looked at Eclipse. I was immediately impressed by the performance of the IDE. I found it snappier than JBuilder, and certainly snappier than NetBeans 3. There were other Eclipse features I found superior to NetBeans. In particular, the editor pane showed every error in a given file and the problem view showed every problem across all the files in the project. I could change my problem view filter and quickly search for (and fix) a given group of problems. And I certainly appreciated how I could open up my project, and see visually which packages had warnings (and errors). Eclipse was a great tool that helped us to continue to efficiently develop high-quality features and capabilities for the WARSIM UI.

Eclipse's built-in compiler was a great help as well. The IDEs ability to compile code as it was entered, line-by-line, without impacting overall performance was amazing at the time. It just made writing Java code that much more productive and enjoyable. And then there is the superb refactoring support. During one session I removed an older problematic library used extensively throughout the application in order to use equivalent functionality available in Java 1.4. Once again the Eclipse IDE's features helped manage the complexity of the changes involved such that my work didn't impact the work of others in the group. I was able to make my changes, integrate them back into the main branch, and not impact the schedule or the deliverable in any negative way.

If you use Eclipse for what it was originally intended, as a powerful Java IDE, Eclipse has stood, and continues to stand, as first among equals in the free Java IDE field. But if you stray from that primary capability, you begin to see some of what Thornton talks about. You'll find a boat-load of extensions, many of varied quality. While I've only sampled a small handful, I can see where someone would get pretty annoyed by the varied quality, especially when compared to the core capabilities of Eclipse. There's only one other Eclipse plugin that I've installed and use along with the core IDE, and that's Subclipse. Everything else I've ever installed has eventually come back out because it just wasn't as good.

Even though I think quite highly of Eclipse, there is one reason why I moved away from Eclipse and to NetBeans. It is, in a 'word', SWT. Thornton is right to call SWT "a wedge" being driven into the Java community. Sun correctly saw SWT as a challenge to JFC. At the time I started using Eclipse, SWT was considerably better in overall quality and performance when compared to JFC. And Sun was correct in its response to SWT. It fixed the issues in JFC that SWT was attempting to address, and it did so within the overall Java ecosystem so that everything benefited. The original reasons for using SWT over JFC I feel no longer exist.

It is for that reason, coupled with NetBean's remarkable evolution over the past 12 months, that I've switched from using Eclipse to using NetBeans. NetBeans 5 matches the set of Eclipse features I discovered I wanted for developing Java applications. Further, it allows me to add extensions to the platform using existing Java applications, especially applications based on JFC. NetBeans has changed such that I find it better fits with what I want to do today in Java development. But just because NetBeans is better suited for my needs today than it was two years ago does not mean that Eclipse has 'fallen' or somehow gotten worse. Everything that made Eclipse the right choice for me two years ago is still there, and has been enhanced over time. It's simply that my needs and goals have changed, and NetBeans better serves them. Eclipse will continue to be quite successful, as will NetBeans. I have never believed that for NetBeans to succeed Eclipse must fail. NetBeans and Eclipse need each other. The need to create a fierce, but healthy, competitive environment. We all need both for the simple reason we all need choices in open tools. I sincerely wish the best to both Eclipse and NetBeans.


  1. Do you think JFC would have been fixed without SWT´s appearance?

  2. hi
    I am using Eclipse and have started out using NetBeans ..for reasons not known to me NetBeans is quite slow compard to Eclipse.
    esp if you are working with a lot of projects.

    any similar experiences?

  3. My experiences to date have been with using NetBeans 5 and Eclipse 3.2M5a on Windows XP and SuSE 10. The hardware platform has been a notebook using an Intel Pentium M 2.13GHz with 1GB of RAM. It dual boots between the two. The JVM I've been using on both has been the latest Java 6 drops, in this case beta 2 build 77. I'm using Java 6 in order to take advantage of sub-pixel anti-aliasing on text for NetBeans. It works great on Windows XP, and works just as well if I log into SuSE using the Gnome desktop.

    Having said that, I do notice that NetBeans startup is somewhat slower than Eclipse. But in my case, I have all but two of my Eclipse projects closed, while I have four open in NetBeans. And when I say slower, I'm only talking a few seconds.

    Because I change the JVM out from underneath NetBeans a lot, I have noticed that every time I do NetBeans takes a long time to come up right after the change. But after that, subsequent restarts are just as snappy in NetBeans as Eclipse. I am assuming the initial slow start is due to NetBeans building up cached items related to the JVM it's running on, but I can't be sure.

    As a final note, I find the look of NetBeans on Windows to be a little better than Eclipse on Windows, while I find the look of Eclipse to be a little better than NetBeans on Gnome/SuSE 10. Otherwise they're both excellent tools.


Post a Comment

All comments are checked. Comment SPAM will be blocked and deleted.

Popular posts from this blog

A Decade Long Religious Con Job

I rarely write inflammatory (what some might call trolling) titles to a post, but this building you see before you deserves it. I've been seeing this building next to I-4 just east of Altamonte/436 and Crane's Roost for nearly 12 years, and never knew who owned it. Today on a trip up to Lake Mary with my wife I saw it yet again. That's when I told her I wanted to stop by on the way back and poke around the property, and photograph any parts of it if I could.

What I discovered was this still unfinished eighteen story (I counted) white elephant, overgrown with weeds and yet still under slow-motion construction. It looks impressive with its exterior glass curtain walls, but that impression is quickly lost when you see the unfinished lower stories and look inside to the unfinished interior spaces.

A quick check via Google leads to an article written in 2010 by the Orlando Sentinel about the Majesty Tower. Based on what I read in the article it's owned by SuperChannel 55 WA…

Be Careful of Capital One Mailings

Capitol One ("What's in your wallet?") sent me a bit of deceptive snail mail today. I felt sure it was a credit card offer, and sure enough, it was. I open all credit card offers and shred them before putting them in the trash. Normally I just scan the front to make sure I don't miss anything; the Capital One offer made me stop for a moment and strike a bit of fear into my heart.

The letter's opening sentence read:
Our records as of December 30, 2009 indicate your Capital One Platinum MasterCard offer is currently valid and active.Not paying close attention during the first reading, I quickly developed this irrational worry that I was actually on the hook for something important, but I wasn't quite sure what. The letter listed "three ways to reply" at the bottom; via phone, the internet, and regular snail mail. I elected to call.

Once I reached the automated phone response system, the first entry offered was '1', to "activate my Capital …

cat-in-a-box channels greta garbo

So I'm sitting at my computer, when I start to notice a racket in back. I ignore it for a while until I hear a load "thump!", as if something had been dropped on the floor, followed by a lot of loud rattling. I turn around and see Lucy in the box just having a grand old time, rolling around and rattling that box a good one. I grab the GX1 and snap a few shots before she notices me and the camera, then leaps out and back into her chair (which used to be my chair before she decided it was her chair).

Just like caring for Katie my black Lab taught me about dogs, caring for Lucy is teaching me about cats. She finds me fascinating, as I do her. And she expresses great affection and love toward me without coaxing. I try to return the affection and love, but she is a cat, and she takes a bat at me on occasion, although I think that's just her being playful. She always has her claws in when she does that.

She sits next to me during the evening in her chair while I sit in mi…