As mentioned, JetBrains RubyMine and Aptana RadRails (eclipse with Ruby/RoR plugins) are great IDEs. However, I'd recommend trying Ruby (or Rails for that matter) in a text-editor like TextMate instead. Here is a *dated* article describing the pros/cons of using a text-editor vs an IDE.
During my working day, I use eclipse (corporate standard) - though my clear preference would be TextMate, which is what I use exclusively outside of work.
TextMate, or it's twin-sibling e are both "text-editors", and therefore quite different than a full featured IDE. It's a personal choice at best. I use IDEs all day at work, but greatly prefer the speed and simplicity of a text editor. JMHO
I come late to the party, just to confirm that RubyMine is really good. I still tend to be a TextMate freak, though. For a number of reasons, IDEs for Ruby are not as essential nor as powerful as IDEs for Java.
Paolo Perrotta, Europe
Author of Metaprogramming Ruby
David Newton wrote:Ruby is Ruby, whether or not it's JRuby: the same meta-programming techniques apply.
Any IDE that supports Ruby can be used to develop in JRuby; IDEs that also have strong Java support are better for JRuby.
It is nice to see such confidence. Mr. Newton has never tried to get Aptana Studio (a powerful and good standalone IDE or a plug-in for eclipse which supports ruby development) to use jruby. The web has reports of several such tries, including my recent one, with no success so far. Others have reported failure in creating .bat or .cmd files, aliasing or renaming jruby.exe. (I retried renaming with no better success) Those have reported success in creating a c++ bridge, but although I have tried the c++ bridge, it is not working for me. Specifically, the bridge seems to work on the Windows 7 command line, but not in Aptana Studio 3. The error message supplied by Studio 3 is completely non-illuminating, much like IE's "Error Loading Webpage". Any useful information would be welcome.
As to the necessity of IDEs, which is discussed elsewhere in this topic: I agree that they are not essential, but whether one is developing a large system, or just learning, they do save time. The number of things which can be tried in 30 minutes using the right IDE dwarfs that same count using the command line. By accelerating things, sometimes there can be a qualitative change in one's understanding, and that change can fuel a beneficial rearrangement of ideas which are not as easy to arrive at if the same tries are spread over 3 days.