Java technology is so frustrating: I'd like to get deeper into it mainly because of projects like Mirth, but the whole developer experience feels so excruciatingly awful when compared to Visual Studio and C#. I decided to give NetBeans another go because there's a new developer release (6.0) and I found the 5.5 release reasonably good. After waiting over two and a half minutes for the damn thing to start, I remembered just how ugly it was. Even with a bit of fiddling (make the icons smaller, change the editor font, etc. etc), it still looks and feels clunky, ugly and slow. Then I did the usual smoke test - create a new standard project, build it and run it, just to be sure all the bits are in the right place. Clunk, ... grind ... whirr ... splat. What's taking so long? This is a trivial project. Eventually, it did build and it did run. And it looked awful. The UI editor (frankly, one of the better Java UI editors out there) is still nowhere near as good as Visual Studio. NetBeans is free, it has a lot of features, it can create a lot of different project types, it has UML and BPEL built-in and it has Sun behind it, but it just doesn't encourage me to persevere with it.
What about Eclipse (and Europa)? Well, the initial install is quite quick but then you have to download the Europa packages. After about 30 minutes or so, I've got the whole enchilada (easier just to get everything rather than fret about the dependencies) and I can start the thing. The startup time is less than NetBeans but still rather slow compared to VS. Now to create the 'hello world' Swing or SWT application (I don't really care which toolkit). So, File, New Project. My, but there are a lot of project types. Go for Java (there is no finer-grained optionality here). Now, how do I add a dialog class? Can't see dialog class in File/New, so I choose File / New / Other. Gulp. There are 37 groups of project item! (I counted them). Thirty seven GROUPS! This is not use-case driven; this is madness. So I choose the Java category, and only 'Class' seems appropriate.
My patience has run out (again). Both tools, for different reasons, turn me right off Java development.