-----Original Message-----
From: Xavier Noria [mailto:fxn / hashref.com] 
Sent: Thursday, June 02, 2011 12:19 AM
To: ruby-talk ML
Subject: Re: What editor or IDE do you use?

[snip]

> Your reaction is not: "Ruby is simple, I can type
> validates_presence_of myself no prob". Your reaction rather is "ah,
> albeit Ruby is simple, that's still helpful!". That "ah" moment
> happens a lot working with a Rails-aware editors like RubyMine. The
> first day I saw renaming a controller renamed all the folders, tests,
> etc. for you and updated the repo with the changes if you wanted, I
> was sold. The day you make a typo in the table name of add_index and
> gets underlined in red, you say "ah, Ruby is simple, but that's
> helpful". And same with a ton of Rails-specific features (have little
> experience with Ruby-only projects in RubyMine, there's support but
> have not used it).

[snip]

I totally agree that Rails is much more usable with a Rails-aware IDE as you say. 

My HO is that Rails is about as far from a programming language as it's possible to get (in its own good way). The structures of directories, helpers, rules in configuration and method naming conventions are so distributed that keeping them current is almost impossible without a very tightly integrated IDE. Especially if you don't live and breathe Rails in your dreams.  

I stopped using RoR completely when it became apparent that there was no way to pick a stable point (say 2.2) and build from there. Rails is so much of a moving target -- and it's guaranteed that somebody is always using a component that is newer than your stable point -- that it becomes impossible to use as less than a full-time occupation.

MHO is that I wish the Rails team would adopt a two-track model, where new packages are back-ported to -STABLE as well as -BLEED unless they only work with -BLEED features, but of course the FOSS answer is "if you want it, DIY" and I am grateful for the fact that it exists so folks who can devote full time to it can develop such amazing web systems.

Ruby itself is so intuitive that debugging with puts is sufficient, but I'll agree that refactoring (or renaming, such as you suggest) is an area where I'd like to have support. I've found that Ruby's built-ins -- especially its containers and iteration mechanisms -- are so powerful and elegant that very little code gets beyond a page.