So there’s been an ongoing discussion among Java bloggers over which IDE rules, IDEA or Eclipse. I became so curious that I downloaded Eclipse and used it as my development environment for about a week, then I installed IDEA 3.0 and have been using it for the past couple of days. I love Eclipse — it’s got awesome CVS integration and it’s an absolutely beautiful application. Indeed, SWT (the GUI library developed as part of the Eclipse project) is incredible and Eclipse is the best looking Java application ever. It has a lot of other nice features as well.

That said, IDEA is better. IDEA just has so many features that make your life a little bit easier as a programmer, and they all add up to it being an amazing product overall. I’d tried IDEA before, and I never got how cool it was, because I just opened it and started typing code. That’s not the way to go. If you want to know how good an IDE is, go and find the code that you have to work on every day that has the gnarliest classes you’ve ever written (or even better, that were written by the worst programmer that ever worked in your group). You know that guy who got laid off because all the code he wrote sucked? Go grab his code and load it up as an IDEA project. Then just start refactoring. The first thing you’ll notice is that IDEA is going to tell you a lot about what’s wrong with the code. The second thing is that it’s going to offer to fix many of the problems for you. Eclipse is good in this regard, but IDEA is great.

I’m a hardcore bash/ant/Emacs/JDEE user. Or, I was. I have to say that both Eclipse and IDEA are better than my old environment (although there are still some Emacs tricks that really should be incorporated into these IDEs). IDEA, though, is the best.