More on Eclipse
I just ran across Greg Klebus' tip for Dave on how to get CVS Label Decorations in the Navigation View. ( Window->Preferences->Workbench->Label Decorations->CVS). Very cool - though I already knew about that since at work after hard-selling Eclipse to my coworkers, I've become the defacto "How does this work" guy... Basically I've discovered that if you think a feature HAS to be in there somewhere, if it's not in Windows->Preferences somewhere, then it's on the right-click menu. You just got to keep searching until you find it.
Here's something I discovered by accident the other day and it's changed how I use Eclipse entirely. If you double click on an editor tab, it will expand the editor to take up the whole window. This works on any window bar, actually, so if you're really deep in a Navigator hierarchy and want to see it all without horizontal scrolling just double click the window bar to expand it.
So what I tried, and I like it a lot, is throwing ALL the views I use regularly - Navigator, Outline, CVS Log, External Tools Log (Ant), Synchronize, Compare Files, Debug, etc. - into a tabbed window at the bottom of my screen. Then I double click the editor tabs when I want to see it or not. It's worked for me a lot better than the Fast Views (you know about them, right? Every "view" can be made into an icon on the left tool-bar when it minimizes by selecting "Fast View" from the icon menu.) I think the reason is that I can now cleanly divide the actions I'm taking. I'm either editing/viewing code, or I'm trying to find/compile/check-in/ or otherwise manage the structure of it. It also keeps the windows from popping up at me from the side and not disapearing like I want them too, etc.
This obviously only really matters to you if you're working on a laptop like I am where the screen real-estate is a bit limited. I like to have the editor be as big as possible to grok everything I'm working on.
Dave also mentioned the responsiveness of Eclipse:
I do find that it gets sluggish at times, usually after I leave it alone for a while, but once it warms back up it is nice and snappy.
I can't vouch for this entirely, but I'm pretty sure this is due to Eclipses very good use of memory. What it doesn't need it doesn't use - which has been really key for me.
Try this: Open up a project in Eclipse and several windows and maybe some views. Okay, now check out the memory consumption - using the Task Manager on Windows if you're like me. It'll probably be up around 60 or 70 meg. Then minimize Eclipse and watch the memory usage. It'll drop down to around 2 megs instantly! I can't figure out if it's a trick or not, but it doesn't seem to be. At work we're using a monster-ass Java Server with all the bells and whistles and loading it up on my laptop with only 256 megs of RAM can be torturous. Using the Java based console for various tasks makes it even more so. Eclipse is the only IDE I've been able to productively use because of these restraints and I can tell you it's been a real lifesaver. Granted after you minimize or switch windows, sometimes it has to fight to get it's memory back and it'll bog down, but in general it's been really stable and quick for me.
I'm seriously in love with Eclipse ability to manage the constant changes to CVS in our project - people from different teams are always checking in XML schema changes which directly affect how the appserver will start, so being able to see the latest changes, compare, and back out changes easily is just awesome. Just like Greg, I'd say that Eclipse is the best CVS client I've ever seen. It's made my tiny O'Reilly CVS book I used to keep handy quite redundant.
I haven't had a chance to try out that UML plug-in for it that I saw on Brett's weblog yet... I'll have to put that on the list of things to do pronto.