Richard Conroy
1/8/2008 3:59:00 PM
On Jan 4, 2008 9:09 AM, Ben Turner <ridder.ben@gmail.com> wrote:
> I believe that tooling is one of the important factors in what makes a
> language "popular" with the code-writing masses. I can only speak with
> authority from a Java perspective, so bear with me. Java has a huge
> community of frameworks, tools, building environments, IDEs and
> anything else you can imagine.
Often to a point of fault. Look at the huge number of Java Web Frameworks.
> On a daily basis, I rely on tools such
> as:
>
> * continuous integration engines such as Hudson or Cruise Control
> provide an up-to-the-minute overview of the status of the code
> repository
Neither CruiseControl nor Hudson are java-specific, they will happily
invoke a shell command as well as their built-in maven and ant support.
Those shell commands could be make, nant, gant, or any of the Ruby build
systems.
> * build systems such as maven to provide out-of-the-box automated
> building, testing, test coverage, code quality checks etc.
All of this exists in Ruby too, frankly the Ruby build tools are considerably
better than those in Java (Rake), to the point that Ruby is better at building
Java than Java is. Witness projects such as Raven and Buildr.
Certainly, testing in Ruby is easier than java and considerably more evolved
(RSpec, autotest, fuzz testing, hoe, zentest).
Building in Ruby is also considerably more evolved. Its not uncommon to hear of
builds taking single digit seconds in Ruby (update & tests & coverage)
> * IDEs with strong refactoring tools, debuggers and direct version
> control integration
> * etc.
Just be wary of 'strong refactoring tools' aka 'push-button
refactoring'. Go read
Steve Yegge's article about this
> > If you want a guaranteed living from Ruby, get good at Rails. (It gets
> > boring, though.)
>
> I'm not really into web development (more backend server
> applications), so I think I will be looking at plain ruby first :-)
>
> Best regards,
>
> Ben
>
>