Thursday, December 20, 2007

Loving RoR with NetBeans 6

I've switched to NetBeans 6 for Ruby coding, and I'll never go back to those bogus text editors.

Some time ago, I wrote about IDEs for Ruby. I'm not sure I did a great job pointing out out that for Ruby (like JavaScript and other dynamic languages) some of the basic features we'd like from an IDE (code completion, refactoring) are non-trivial problems. The Sapphire in Steel blog has some great articles on working those problems.

The milestones for NetBeans were promising; the other free contender, the Eclipse bits formerly known as RadRails, are now part of the "Aptana IDE." Aptana is a reasonable tool for JavaScript, but last time I checked, Aptana was in "1.0" and the Ruby support still crashed and failed in interesting ways. The fine print points out that Ruby/Aptana/RadRails isn't 1.0. Bummer.

I'm very excited about this NetBeans release. For a detailed discussion of features, check out Roman Strobl's review (part 1 and part 2). Once the app starts and gets warmed up (which admittedly takes longer than booting the OS on my Windows server box), it does a pretty good job of the hard stuff, like refactoring. And it's rock-solid on the rest, like interactive debugging.

Unfortunately, Rails 2.0 became official at about the same time NetBeans 6 did. And Rails 2 changes a few things, like filenames/extensions on erb templates, that NetBeans doesn't know about. But it's easy to work around those things, and I'm sure an update will be forthcoming.


tor said...

Hi Adam,
yes, the current 6.1 builds already support the latest Rails 2.0 stuff - the new scaffold generator parameter meanings, the new migration shorthand syntax and proper hyperlinking of all filetypes in the generator output window. (Unfortunately being bleading edge there may be other issues with it :-)

-- Tor

Christopher said...

Just to let you know, I'm working hard on a 1.0 RadRails release candidate for Aptana pro users which we're hoping to get out very soon (before New Year's), and a 0.9.2 bugfix release for everyone.

We already support many of the changes in Rails 2.0 in our existing release (like erb). And the 1.0 RC will include a number of small tweaks for minor changes to Rails and Rubygems, in addition to a lot of new features.