I've been using NetBeans for a while now, starting with version 4.2 in beta. One of NetBeans' key selling points (in my not-so-humble-opinion) is Java GUI building with Matisse. That feature continues to be quite powerful and unrivaled, especially for a free-as-in-beer IDE. I even wrote a lovely paean to the wonders of NetBeans and why I moved away away from Eclipse to NetBeans. Now, it looks like I may have to eat some of those tastefully written words.
What you're looking at above is a complete Ruby on Rails project hosted and running within Eclipse 3.3 Milestone 5 on Windows XP. Milestone 5 was released this past Friday, February 9th. I installed it Saturday, and then went on a plugin hunt to fill out additional features and capabilities. Why did I decide to re-install Eclipse, especially a milestone? So that I could get a complete integrated development and test capability in one convenient package for Ruby on Rails.
Like a lot of other folks I've been playing first with Ruby, then Ruby on Rails. Everything had been command-line based for the most part, with no support for this effort from within NetBeans. I thought that was a bit silly; here I was developing Java and J2EE apps with NetBeans, but dropping back to a couple of shells and emacs (and eventually emacs running those shells) to work with Ruby and Rails. So I went looking for NetBeans modules that would help create an integrated development environment for Rails within NetBeans. Couldn't find anything useful.
So I installed NetBeans 6 Milestone 6 to see if there was support for Ruby in there. Not in the milestones, but I had read on some of the blogs that there was a start towards Ruby development support in the daily builds. I find daily builds too bleeding edge, so that wasn't a solution for me. After disappointment with NB 6 M6, I uninstalled it and continued to follow leads with regards to RadRails and Eclipse. That's when I hit paydirt.
I spent some time reading web pages and installing Eclipse plugins via Feature Updates. Eclipse has improved it's update features since the last time I worked with it, and the plugins themselves have improved quite a bit as well. Bottom line is by the time I was finished installing RadRails and Ruby support, I had a tidy little environment capable of adding organization and efficiency to the whole Rails development process.
In the single image above, I've got my Rails project created and the WEBrick server running in Eclipse. I even have a browser instance (of Firefox!) running in a view. Everything right there at my fingertips. There are minor quirks about the Ruby editor, and you have to be careful how you configure the Ruby plugins, but for a bleeding-edge release of a development tool, it looks pretty slick. The only bizarre problem I still find annoying is that you can't easily integrate Tomcat into Eclipse, and SQL database integration still leaves something to be desired. If I want to do the kind of J2EE and SQL database integrated development that NetBeans provides, then I still use NetBeans.
One other new thing I've discovered about Eclipse (at least for me): it seems a lot of folks are working hard to make dynamic language development (Python, Perl, and Groovy (with Grails), for example) a first class activity within Eclipse. NetBeans 6 Milestone 6 is just beginning to provide that capability as well, but only via additional plugins from the beta site after installing Milestone 6. Even after installation the NetBeans 6 beta plugins don't quite compare in completeness or quality to what can be found for Eclipse 3.3M5.
To me the competition between NetBeans and Eclipse has developed into a genuine two-horse race between Eclipse (3.3) and NetBeans (6). I'm once again both interested in and excited by Eclipse. And I'm very curious to see what will happen in NetBeans.