Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

perrin (4270)

  (email not shown publicly)

Perrin is a contributor to various Perl-related projects like mod_perl, Template Toolkit, and Class::DBI. He is a frequent speaker at OSCON, YAPC, and ApacheCon, and a contributor to several perl-related books.

Journal of perrin (4270)

Wednesday October 19, 2005
11:59 AM

Rails cheerleaders: go easy on the hyperbole

[ #27245 ]

This is from the first page of the latest Ruby on Rails article on the O'Reilly website:

"In this short time, Rails has progressed from an already impressive version 0.5 to an awe-inspiring, soon-to-be-released version 1.0 that managed to retain its ease of use and high productivity while adding a mind-boggling array of new features."

Come on! I don't know Curt Hibbs, and I have nothing against him, but this intro is positively ludicrous. How is this supposed to be "awe-inspiring?" Does he think that before Rails we had no object/relational mappers, no code generation, no MVC, no test scripts, no dynamic languages? You'd have to ignore an awful lot of web development tools (that pre-date Rails) to think that.

But he does seem to think that. A little further down the page he says this:

"The typical development cycle for testing a change to a web app has steps such as configure, compile, deploy, reset, and test."

In what world is that "typical"? The only web development tool in use these days with a compile step is Java, and if you look at web development as a whole, there are more people NOT using Java than using it.

It's also not a very accurate list. Even Java apps don't require reconfiguration every time you change your code! And Rails doesn't remove the "test" step.

Most of the writing about Rails that I've seen seems to have blinders on when it comes to anything other than Java. It would be nice to see some acknowledgment that other dynamic languages already have this stuff, and a little more touch of reality in general. The current tone smacks of ego and arrogance. I don't see anything wrong with trying to draw in Java converts, but if the plan is to just ignore PHP, Perl, and Python, they're losing out on an awful lot of potential allies.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I've found the whole Rails thing pretty silly myself. It looks like a very nice tool for certain apps, but I really don't think it'd help much at all for apps with complex, large databases, for the same reason I don't think Class::DBI works well for in those cases.

    My guess as to why Rails is so hot is several-fold:

    - The folks using it make very pretty products. Basecamp looks great, as does the Ruby on Rails site. I wish Perl sites and apps looked that good, and I really wish mine did!

    - If you've been us
    • I think Maypole actually came well before Rails. Before Maypole, there was OpenInteract and Apache::PageKit, and of course all the others (like Mason) that aren't quite so squarely aimed at MVC apps.

      It doesn't bother me that Rails is doing well. What does bother me is when these guys make it sound like they invented this stuff, and no one else has it. And, as you say, people who have never worked on large web apps seem totally willing to believe that Rails is the only thing that ever had had this stuff.

      • Before I start I should declare my vested interests - I use and maintain Maypole :)

        Looking at the actual releases - Maypole 1.0 was released in Febuary 2004 and Rails wasn't released until April 2004, although development on what would become Rails was probably started 3 to 6 months before Maypole development was started.

        I think Maypole is already more flexible in it's vanilla setup than Rails in it's vanilla setup.

        The maypole developers need to keep an eye on Hibernate and Catalyst, as they are breaking ne

        @JAPH = qw(Hacker Perl Another Just);
        print reverse @JAPH;