To Use or Not to Use an IDE?
"IDE's are not essential for Java development and should not be used for learning it". I've heard this opinion many times and I disagree with it. To some extent I can see the wisdom of learning Java on its own without the extra features of an IDE. But then again there is much to be learned while debugging a program, stepping through code and observing runtime information.
As for long-term productivity I don't even know where to begin. Take a software-intensive system with tens, hundreds, perhaps thousands of classes. How long does it take to navigate to the class you want? An IDE understands the structure of a project and indexes Java types so can get you there in a few key strokes.
I once sat next to a developer who was using a powerful Unix text editor to correct what started out as 50 compilation issues and ended up taking two days. A single refactoring in an IDE can address a large number of issues across many classes instead of dealing with them one at a time.
What IDE one uses doesn't matter, most are quite capable. I like Eclipse - it's free, rich in features, and with plenty of industry momentum behind it. Learning to use it wasn't as straight forward as I would have liked it to be but I do appreciate what it has to offer.
Here you will find a few articles aimed at users of Eclipse based on my own experience with it. New users or those switching over from another IDE can probably benefit the most although those who have used it for a while can hopefully learn something new as well.