Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Ruby on Rails 1.0 Released 332

Simon (S2) writes "Ruby on Rails 1.0 has been released. From the announcement: 'Rails 1.0 is mostly about making all the work we've been doing solid. So it's not packed with new features over 0.14.x, but has spit, polish, and long nights applied to iron out kinks and ensure that it works mostly right, most of the time, for most of the people.' " The Ruby on Rails website has also been given a new look.
This discussion has been archived. No new comments can be posted.

Ruby on Rails 1.0 Released

Comments Filter:
  • by Tyler Eaves ( 344284 ) on Tuesday December 13, 2005 @10:30PM (#14252861)
    I'd prefer to look at it as honesty.
  • by sterwill ( 972 ) on Tuesday December 13, 2005 @10:37PM (#14252904) Homepage
    How would you describe the software you write?
  • by IAmTheDave ( 746256 ) <basenamedave-sd@yah[ ]com ['oo.' in gap]> on Tuesday December 13, 2005 @10:37PM (#14252905) Homepage Journal
    "mostly right, most of the time, for most of the people."??? Is this the standard by which the Ruby community judges software goodness? I'm speechless.

    Yeah, it's not great, but at least it's honest. Go on any developer site - MSDN, java.sun.com, whatever, and you'll see a nice long list of submitted bugs. Fact is, no software is perfect, so don't go crazy when they admit there might be uncaught bugs.

  • by CyricZ ( 887944 ) on Tuesday December 13, 2005 @10:46PM (#14252943)
    That's a far higher standard than you'll find used by most commercial developers.

    Remember, Ruby is at the forefront of the agile development community. Many developments in unit testing, for instance, directly involve Ruby. Ruby developers are often the most experienced at effectively employing such development techniques.

    And you know what? It shows. Ruby software is often of extremely high quality. It's not perfect, but there is much effort taken to ensure correctly-functioning code.

  • by Tyler Eaves ( 344284 ) on Tuesday December 13, 2005 @10:47PM (#14252947)
    ANYONE who claims everything works perfectly is a lying sack of shit. It's as simple as that. The only way to come anywhere close to being able to make that claim would be to heavily qualify it, e.g., With Database X on OS Y, version Z, and library versions A, B, C, on hardware platform D. Anything more broad than that is just not a valid claim.
  • by porkThreeWays ( 895269 ) on Tuesday December 13, 2005 @10:58PM (#14253008)
    The point of rails is to have sensible defaults that work most of the time. Web apps share A LOT of commonality. The idea is to take out repitiveness as much as possible. This is done with sensible defaults. If these aren't good for you, they can be changed. But it's meant to have reasonable defaults for most, unlike certain web languages that make you start from scratch every time.
  • by CyricZ ( 887944 ) on Tuesday December 13, 2005 @11:17PM (#14253090)
    Only an individual new to the computing industry would put much faith in "momentum".

    I've been around it for decades. I remember when Honeywell and Data General had "momentum". I'd be surprised if you've ever even seen a picture of their hardware.

    A bit later there was CP/M. And Apple. Apple had much "momentum" in the 1980s, only to almost hit rock bottom. At least they've been able to pick themselves up again.

    There was even talk this morning about Java losing its "momentum".

    Ruby on Rails could very well overtake PHP quite quickly.

    While some onus does rest on developers to develop quality code, that does not mean that the language and any implementations should not take steps to limit the ability of the programmer to write faulty code.

    That holds especially true for languages that are used in hostile environments, such as the WWW. Considering that Web development is touted as PHP's strong point, one would think it would have excellent security. Of course, we know from experience that that is not the case.

    Ruby won't necessarily make your code perfect. But Ruby, along with sound development techniques (unit testing, for example), will result in very secure applications. The use of PHP, on the other hand, is basically an invitation for security issues. It is not a well designed language, and it is not well implemented.

  • Ahem... (Score:3, Insightful)

    by mcrbids ( 148650 ) on Tuesday December 13, 2005 @11:45PM (#14253207) Journal
    Well, I'm always curious. So, I watched the video "Evolving your database schema without sweat". I watched for 10-15 minutes where the guy types furiously for 15 minutes to avoid typing "alter table add author varchar".

    I guess I just don't get it. What's the excitement?

    You can't abstract too far away from the database when you get into big, complex tables and want to keep performance up. I've seen a 30-second query reduced to 50 milliseconds merely by changing the order of join in a large, complex, 12-table join on PostgreSQL.

    Yet, it seems that Ruby on Rails goes to great lengths to avoid (gasp!) SQL. See Joel's great article on leaky abstractions [joelonsoftware.com].

    I don't mind SQL statements - prepared statements make it so much more manageable - but what about code changes dependent on changes to the database schema? That's something I might be interested in!
  • by tjr ( 908724 ) on Wednesday December 14, 2005 @12:07AM (#14253298) Homepage
    Mostly harmless.
  • by Anonymous Coward on Wednesday December 14, 2005 @12:26AM (#14253376)
    Oh yeah? Well I did the same thing...and it only took me one month...and it comprised 20 different websites...and I did it all with vi...with one hand tied behind my back.

    Note that since neither of us provided anything that would in any way support our claims they're equally valid. The GP did request substantiation after all.

  • by Matt Perry ( 793115 ) <perry DOT matt54 AT yahoo DOT com> on Wednesday December 14, 2005 @12:28AM (#14253384)
    I heartily suggest that the curious among you check out http://tryruby.hobix.com/ [hobix.com]
    That web page is neat but it's a perfect example of why I'm starting to dislike all this "AJAX" stuff. Nowhere in that tutorial is there any navigation to help me go back if I want to review something again. I hit the back button and it brought me back to your comment, not where I expected to be. I don't know how other people feel but in my opinion breaking the user's back button is the worst web UI mistake that you can make. The URL also never changes. I can't bookmark the tutorial and pick it up later from where I left off.

    AJAX is nice for doing things like google suggest or scrolling around google maps, but the moment I submit something, like hitting return on that site, my history should update and I should be on a new page. When I hit the back button I should be back where I just was. That's my expectation.

    I'm afraid of what's going to happen to web pages in the next few years. AJAX is something shiny and new that everyone wants to start using for the sake of using it without considering the expectations of usability that have been established by over a decade of browser use.

    Anyway, just my two cents, FWIW.

  • by DeafByBeheading ( 881815 ) on Wednesday December 14, 2005 @12:28AM (#14253388) Journal
    Nice, but it's definitely geared to someone who's never written more than a couple dozen lines. This seems to be true of programming languages in general--no decent language overview available unless you're *really* starting from scratch... I learned Scheme and Java this way, and that was fine, but a few languages later now, it's getting old... I want more than a language reference but less than a thousand-page primer.
  • by Tiberius_Fel ( 770739 ) <fel@emp[ ]reborn.net ['ire' in gap]> on Wednesday December 14, 2005 @01:01AM (#14253585)
    PHP appears to be designed for simplicity and ease of use above all else. One thing that gets me is that its types are completely fluid... And you can set a variable to whatever you want, as the user, even, by something like file.php?id=20. But PHP isn't meant to be secure. That's why PHP isn't a good choice for things where security matters.

    I'm a believer in "the right tool for the right job", and PHP isn't the right tool for the security job. But if you're just developing something for your personal amusement, or maybe for your club website, then PHP's good. So I don't think of it as design flaws so much as conscious choices to make it easier rather than more secure. :-)
  • by Anonymous Coward on Wednesday December 14, 2005 @01:19AM (#14253673)
    ...the moment I submit something, like hitting return on that site, my history should update and I should be on a new page.

    There's no back button on a command line. Why should there be on a web page that emulates one?
  • by Anonymous Coward on Wednesday December 14, 2005 @01:55AM (#14253829)
    That's not exactly a flattering list for something that has been available for a year or longer and has been constantly thrown in the faces of developers for that long.

    The funny thing is, all those applications look *exactly the same*, and have no functionality what-so-ever (with the exception of Odeo.)

    Wow, a bunch of <li>'s on a page. That's never been done before.

    You've posted about 50 times in this topic, all with an anti-PHP slant.

    Please, stop posting crap.

    You're not convincing anybody and you sound like an on-going advertisement.

    If Ruby on Rails was that great anyone who would have wanted to switch would have done so by now. It's been advertised enough. It doesn't need a cult-like following -- "use Ruby on Rails and you get to be one of the cool kids."

    Having used Ruby on Rails, I can tell you that it's really not worth the hype. It brings nothing new to the table, it doesn't really improve development times at all (if you, you know, actually try to implement something full-featured), and it's 50-100x+ slower than a comparable PHP or Java Servlet implementation.

    The reason Ruby on Rails is somewhat popular within the blogosphere is this: it allows designers with no programming knowledge to create something with relative ease. That's about it. This used to be the role of PHP, and outside the blogosphere, it still is.

    Oh, that, and (once again) the constant, tired, shameless promotion.
  • by lux55 ( 532736 ) on Wednesday December 14, 2005 @02:11AM (#14253916) Homepage Journal
    Technically, variables in most scripting languages are just as "fluid" in their types as PHP is, Ruby included. This is only seen as a drawback by people coming from the Java/C world (because they haven't seen the light just yet). It's actually one of the main reasons Ruby, PHP, Perl, etc. are so much more efficient to program in than Java.

    PHP's security in version 3 was "that's the job of the programmer" which is fine in itself (Perl's the same way), but it's the complete wrong approach for a language originally designed to be beginner-friendly, which PHP was. But PHP's goals and direction have changed quite a bit over the years, and it took some time to iron out the security changes in PHP 4, but by 4.3 which has been out for years now, they did make the transition from insecure defaults to secure ones. PHP is now at 5.1 and they're working on 6, and security is definitely a much higher priority. Espcially with folks like IBM, Oracle, and Yahoo! backing it now, they've put a lot more thought into security (finally). There are also many articles and blogs these days about secure coding practices in PHP. The PHP developers are growing up, I guess you could say.

    To be honest, Ruby is ten times the language PHP is in terms of sheer elegance of design (I fell in love with it at first sight, looong before Rails), and I can't defend PHP in that respect except to say that it does achieve its original design goals. But to be fair as well, you really can't compare the PHP of today to the PHP most people describe. It's just like someone right now saying "MySQL doesn't even have support for transactions, it's a kid's toy!" when it's had that for several years already.
  • by j1ggl3x ( 701715 ) on Wednesday December 14, 2005 @03:03AM (#14254151)
    Ruby is a scripting language.
    PHP is a scripting language.

    Rails is a MVC framework built on Ruby.
    PHP is NOT a framework.

    If you feel like comparing/extolling the virtues of RoR compared to PHP, then try to at least be logical enough to compare RoR to a MVC framework built on PHP. There are several [phpwact.org] (though none as popular as RoR at the moment). Some are trying to imitate Struts and others trying to mimic [cakephp.org]RoR [phpontrax.com].

    In fact, Zend is quite aware of RoR's popularity is in the process of creating its own framework to compete: the Zend Framework [shiflett.org].

  • One word (Score:5, Insightful)

    by hey! ( 33014 ) on Wednesday December 14, 2005 @07:41AM (#14254975) Homepage Journal
    Prototype.

    Next time there is a project to X, do a prototype of some of the functions in RoR, ostensibly so you can get it done in a couple of days and you can use it to figure out requirements. After playing with a couple of days, sit back and watch as the app dev group spends a month laying the keel for their "enterprise" class implementation. Continue to use your prototype to demonstrate new requirements (they always come up). If, after three or four months, the app dev group doesn't appear close to being able to deliever any business value, then one question that management should raise is what, exactly, is the property of "enterprise" that justifies the difference in effort between rails and whatever they're using. Then determine if it could indeed be put in the RoR prototype. If so, you're in. If not, you've contributed to requirements understanding and live to fight another day.
  • by jaques ( 686452 ) on Wednesday December 14, 2005 @08:51AM (#14255194) Homepage
    But it's unfortunate that the preferred Ruby AJAX design pattern still includes prototype.js, because that library as written is fundamentally dangerous. It's written in a fashion which demonstrates that the author is very adept with JavaScript and functional programming in general; but it also does some unpardonably cute tricks in extending core objects, thereby changing the overall JavaScript environment and making the core AJAX library not play nicely with others. (And if ever there was an environment where you need to have good manners and not piss in the pool, it's the browser + JavaScript environment.)
    Agreed. So do others: check out http://www.mochikit.com/ [mochikit.com] for a js library that doesn't piss in the pool.
  • by lambdahead ( 938778 ) on Wednesday December 14, 2005 @11:04AM (#14255984)
    i've NEVER experienced this. never never never. and i have no idea what you're talking about. one of the real clinchers of rails for me is its use of ActionRecord to interface with the database. i modify my database constantly without breaking any code. the only case i can think of when what you describe could happen is if i were to rename a column in the database, then my row.name object wouldn't match. but i would consider a broken website due to this the fault of a stupid developer.
    But what if you are working with 4 developers and 4 DBAs? And all data is accessed through stored procedures? Anytime I bring this up, I am usually met with "oh, well you know RoR isn't a perfect fit for *every* project."

    So what is it a fit for? Folks push it as a J2EE killer but under pressure start saying it's more suitable for things like "Name a Star for your Pet" website.

    to be able to connect to my database, retrieve a record and update it, in 1 line in some cases, becomes rather neccessary for a developer once they've tried it.

    Mydb.update(id, :name => 'John')

    will do all of these. i take a wee dance on the grave of large-scale php development everytime i use that.
    And any coder of any talent would have already created the routine as part of their toolbox for their language of choice. It is one of the first things I write for any new language that I use in a datacentric project.

    large scale use of rails is very easy to find if you visit the rails site . It's also very easy to find a larger list, and a list of interesting apps to boot. granted, not moving pictures, but .. oh go away.
    When I see a company with > 50 million USD in revenue using it for mission critical apps, I'll sit up and pay attention. Until then, it seems best suited for "10 Things To Do Before I Die" type websites.
  • Re:Ahem... (Score:2, Insightful)

    by jaydonnell ( 648194 ) on Wednesday December 14, 2005 @01:21PM (#14257167) Homepage
    Did you pay attnetion to the video? Do you know the purpose of what is in the video? It's not to change a column in a table. The purpose of migrations is to have an automated way to apply changes across all your servers and roll them back if something isn't right. It's a very nice feature. Of course, you can log in to each server and manually type "alter table add author varchar", but I promise you won't be working at a serious shop if that's how you deploy database changes

    "Yet, it seems that Ruby on Rails goes to great lengths to avoid (gasp!) SQL"
    From your two posts it's clear you've never used rails before so why do you feel you have the knowledge to make such an assertion? Both of your posts are you arguing against what you think rails is when it's clear you have no idea what it does and how it does it. sad.
  • by lambdahead ( 938778 ) on Wednesday December 14, 2005 @03:04PM (#14258014)
    Which, as I mentioned elsewhere, is the response I always get.

    What bright-eyed, dewy-fresh CompSci grads don't seem to get is that the real world doesn't care about elegance and purity. Real world data stores care about things like optimizing and caching stored procedures, compliance with SarbOx security issues, and data safety.

    No, I don't consider websites that help you organize your class reunion or camping trip to be the real world.

"I've seen it. It's rubbish." -- Marvin the Paranoid Android

Working...