Article:
  What Is Ruby on Rails
Subject:   Ruby on Rails is only one option
Date:   2005-10-26 11:45:47
From:   curth
Response to: Ruby on Rails is only one option

A agree that Ruby on Rails is jusrt one of many options. But I must a couple of corrections to your statements.


First, Ruby has an analog of Perl's DBI called Ruby::DBI. Rails' ORM is build on top of Ruby::DBI and operates at a much higher level of abstraction. Class::DBI is in no way a match for Rails' ActiveRecord.


Second, unless you need two-phase commits or distributed transactions, its Java that is not competitive with Ruby on Rails (unless you are competing for which needs to hire the largest number of developers).

Full Threads Oldest First

Showing messages 1 through 8 of 8.

  • Ruby on Rails is only one option
    2005-10-27 01:33:34  teejay [View]

    I'll call your bluff on this. I know Class::DBI pretty well, I use it heavily because I am Lead Developer and Maintainer of the Maypole MVC Framework :)

    Class::DBI not only matches but betters ActiveRecord, the availability of plugins and subclasses offer far more than ActiveRecord can, and it offers significantly more flexibility. Not once I have I seen some Rails, catalyst or other project using an ORM feature and thought 'that is neat, I wish CDBI could do that', it is far more likely to be the otherway around.

    Hibernate is also more than competitive with ActiveRecord, if very different.

    Furthermore Rails templating system simply cannot match Template Toolkit. Template Toolkit has been around for years longer, has dozens of plugins and even books about it.

    Rails doesn't deliver best-of-breed anything, or break new ground other than in marketing and killer apps.

    Once the hype of the type in this article dies down, Rails will have to compete on it's merits and is likely to be found wanting by users who have tried the alternatives.
    • Curt Hibbs photo Ruby on Rails is only one option
      2005-10-27 04:07:09  Curt Hibbs | O'Reilly AuthorO'Reilly Blogger [View]

      > Class::DBI not only matches but betters
      > ActiveRecord, the availability of plugins and
      > subclasses offer far more than ActiveRecord can,
      > and it offers significantly more flexibility.

      Fair enough.

      > Hibernate is also more than competitive with
      > ActiveRecord, if very different.

      Hibernate is more flexible than ActiveRecord. This is both its blessing (when you need it) and its curse (when you don't).

      > Furthermore Rails templating system simply
      > cannot match Template Toolkit. Template Toolkit
      > has been around for years longer, has dozens of
      > plugins and even books about it.

      The point is not being best-of-breed. The point is being focused on its target and avoiding feature feature creep.

      > Rails doesn't deliver best-of-breed anything,
      > or break new ground other than in marketing and
      > killer apps.

      Yes and no. I clearly stated in this article that Rails doesn't do anything new, in and of itself. What is new is its targeted, focused approach with all layers provided in a seamlessly matched set. It may not sound like much, but the synergy this achieves has a tremendous effect on productivity.

      > Once the hype of the type in this article dies
      > down, Rails will have to compete on it's merits
      > and is likely to be found wanting by users who
      > have tried the alternatives.

      The first part has aready happenned. It has been tried by many who have used the alternatives. For type type of web app Rails targets, it has not not been found wanting -- to the contrary, it has been found to be a competitive advantage.
      • Ruby on Rails is only one option
        2005-10-27 05:32:20  teejay [View]

        I think you confused Class::DBI for DBI earlier in the thread. For the sake of clarity - Ruby's DBI is a clone of Perl's DBI. ActiveRecord is a fairly run of the mill ORM which clones Class::DBI.

        I think all of the MVC frameworks written in dynamic languages offer a clean and well integrated set with varying levels of polish. Maypole certainly provides seamless working in it's default combination of Maypole/CDBI/TT and also Maypole/CDBI/Mason.

        I think the synergy you describe is certainly available in any decent MVC framework.

        The biggest deal for me about Rails is it's highly polished marketing, documentation and evangelism, combined with a handful of well designed and good looking applications.

        People moving from Java and PHP backgrounds will certainly see a productivity gain for smaller projects (I think for larger more complex applications Java would be equally productive for different reasons), but that isn't the case for those comparing Maypole or Catalyst to Rails.

        In fact as far as I know, nobody has even mentioned switching to Rails from Maypole or even compared them, the only defectors we have had have been to Catalyst.

        Right now, there simply isn't much of a reason to move from any MVC to another - they all provide their own advantages and I don't think we'll see much of the switching you seem to think is happening.
        • Curt Hibbs photo Ruby on Rails is only one option
          2005-10-27 06:18:36  Curt Hibbs | O'Reilly AuthorO'Reilly Blogger [View]

          Yeah, I did mistake Class::DBI for DBI.

          You make good points and are being entirely reasonable. Kudos for that!

          The synergies that I talk about are not available in all MVC frameworks, well at least not the ones where you have to cobble together an MVC solution from multiple libraries (which is typical in Java).

          I'm mostly see switching from Java and PHP, and some from Python. There might be some Perl switching (obviously not from Maypole :-), but I'm not personally aware of any particular instances.

          Even though it may not seem like it, I'm not religious about Ruby or Rails. I am, however, very strong on productivity. I think Rails has this nailed at the moment, but that won't last forever.

          I'm happy to see viable alternatives. Django looks promising, and I'll keep my eye on Maypole, too.
          • Ruby on Rails is only one option
            2005-10-27 07:51:08  teejay [View]

            I haven't really had time to look at the python and PHP MVC's yet.. maintaining 1 MVC leaves little time to look at the others..

            I'd love to be able to play with them all though. Maybe we need an OSS MVC workshop :)

            Rails certainly leads on Killer Apps and many developers find ruby particularly productive - I think those you like python love ruby.

            I'd love to see a good bakeoff or comparison between Rails, Maypole and Catalyst or others - would be very useful to show up weaknesses and strengths and hopefully find which are better suited to different applications.

            I think the one to watch regarding breaking ground will be catalyst, which Leo and Leon built their competition winning mightyv on (http://use.perl.org/~acme/journal/27321).

            I'm glad you managed to at least tone down the evangelism but I'm fed up with people talking up RoR as if there are no alternatives, the article only compares against Java or PHP entirely forgetting you get the same productivity with Perl and Maypole or Catalyst, falsely giving the impression that features are new and unavailable elsewhere.

            At least it is far better than Bruce Tate's obvious zealousness .. at http://www.webservicessummit.com/Articles/MovingPastJava_2.htm,

            The point is that Rails isn't very unique or innovative but your article and many others either accidentally or intentionally continue to give this impression.

            Sorry for the whinge, I have a nasty flu, and am feeling old and grumpy as I'll be 30 on saturday :(

            p.s. Evangelism aside, that is a very good article and gave a great intro to starting with ruby.
            • Curt Hibbs photo Ruby on Rails is only one option
              2005-10-27 08:14:53  Curt Hibbs | O'Reilly AuthorO'Reilly Blogger [View]

              > Sorry for the whinge, I have a nasty flu, and am
              > feeling old and grumpy as I'll be 30 on saturday :(

              You're still a young guy! I remember that I didn't really feel like I was an adult until I was 33 (if I had kids I'm sure I would have felt like an adult earlier). As evidence, I no longer wince when someone calls me "sir".

              > p.s. Evangelism aside, that is a very good
              > article and gave a great intro to starting with
              > ruby.

              Thanks!
    • Ruby on Rails is only one option
      2005-10-27 01:47:20  teejay [View]

      A useful for for comparing Rails and Hibernate is at http://theserverside.com/articles/article.tss?l=RailsHibernate
      comparing Class::DBI at the same time shows AR offers nothing C::DBI doesn't do, and that CDBI options bring it closer to matching some of Hibernates features than AR.
  • Curt Hibbs photo Ruby on Rails is only one option
    2005-10-26 11:48:11  Curt Hibbs | O'Reilly AuthorO'Reilly Blogger [View]

    I don't know how my words got scramble! This first line above should have read:

    I agree that Ruby on Rails is just one of many options. But I must make a couple of corrections to your statements.