Slashdot Mirror


Ruby On Rails Goes 1.1

MrByte420 writes "The Ruby On Rails team today released version 1.1 of the web framework. From the announcement: 'Rails 1.1 boasts more than 500 fixes, tweaks, and features from more than 100 contributors. Most of the updates just make everyday life a little smoother, a little rounder, and a little more joyful.' New features were examined back in February at Scottraymond.net and include Javascript/AJAX integration, enhancements to active record, and enhanced testing suites. Not to mention upgrading this time promises to be a piece of cake."

26 of 255 comments (clear)

  1. Re:Getting started by Noer · · Score: 4, Informative

    First, despite what some people say, I think you really have to learn the Ruby language first. Yes, you can get by coding 'by rote' but a deep understanding of this really elegant language will help a lot. Second, there are some great tutorials at the Ruby on Rails site but I think the best is the Agile Web Development with Rails book, though it hasn't yet been updated with the new Rails 1.1 features.

    --
    -- "Those who cast the votes decide nothing. Those who count the votes decide everything." -Joseph Stalin
  2. Re:Getting started by BioCS.Nerd · · Score: 5, Informative

    This is a good place to start: http://poignantguide.net/ruby/ and then perhaps this: http://www.pragmaticprogrammer.com/titles/ruby/ (Either one is good -- I used the latter)

    Or, if you're on the lazy side of things, you can try it right within your browser here: http://tryruby.hobix.com/

    I hope this helps.

  3. Javascript is insecure - AJAX is security hole by billstewart · · Score: 3, Informative
    Sigh. Rails is joining the list of things that encourage people to use Javascript applications, just as all the AJAX stuff does. So anybody who's using those applications has to toast their security.

    The problem isn't that you can't write secure Javascript code - you can. The problem is that if anybody wants to *use* your nice secure AJAX/RAILS/etc. application, they need to turn Javascript ON in their browser, which means they're vulnerable to maliciously-written Javascript on any other web pages they visit.

    There's no easy way around the problem if you want to run the new cool AJAX applications, and there's a lot you can do with a programming model that makes it easy to distribute functions between the client and the server. For Mozilla users, it's probably possible for somebody to implement per-site permissions for Javascript the way they do for cookies, images, etc. For IE, though, you're just toast.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
    1. Re:Javascript is insecure - AJAX is security hole by gregarican · · Score: 5, Informative

      Ever heard of using the Trusted Sites list in Internet Explorer? seems to work for me for per-site permissions.

    2. Re:Javascript is insecure - AJAX is security hole by ceejayoz · · Score: 4, Funny

      And images expose you to things like the WMF exploit, so let's just go back to the 1980s of web design.

  4. Rails is Great by nashjobs · · Score: 5, Interesting
    It allowed me to develop this job website in 2 1/2 months spare time with 400 unit/functional tests. I was a Java programmer, and now there's no going back ;-)

    Any other former Java programmers relate?

  5. Looking to get started in Rails? by RunFatBoy.net · · Score: 4, Insightful

    Along with the API documentation, I found the book "Agile Web Development with Rails" highly beneficial. For a while there, it was the only definitive, concise source of Rails examples.

    Even if you're skeptical of the Rails hype, I encourage any developer worth their salt to sit down with it for a weekend. The whole concept of convention over configuration can be a bit mind bending, especially if you're use to Java's XML hell. It's always beneficial to force your brain to adapt to new languages; it encourage contrarian thinking when considering new solutions.

    Jim http://www.runfatboy.net/ -- Exercise for Web 2.0.

  6. Web an API junkyard by amightywind · · Score: 3, Interesting

    This posting only serves to remind me what an API junkyard web programming has become. Let's see, we need server side Ruby to transmit and execute Javascript that manipulates a DOM to emit HTMP, gracefully degrading features for anachronistic browers. Zowie!

    --
    an ill wind that blows no good
    1. Re:Web an API junkyard by Overly+Critical+Guy · · Score: 3, Interesting

      Aaaaaand how is that different from desktop development? Actually, how is that different from any other development?

      Yeah, shocker, APIs call other APIs to call other APIs. That's how software works.

      All you did was describe the basic model of server code delivering client code. Which is the future.

      --
      "Sufferin' succotash."
  7. Re:Upgrading by metamatic · · Score: 3, Informative

    The OS X problem is that Apple shipped an old and somewhat broken version of Ruby. I'm sure that now that Rails is getting more attention, that will be fixed in the next release of OS X... Ocelot or Liger or whatever it is.

    http://developer.apple.com/tools/rubyonrails.html

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  8. This seems good for layman understanding by AgNO3 · · Score: 5, Informative

    http://developer.apple.com/tools/rubyonrails.html Found that link on the ruby on rails site and it was the best description for a non techie like me that I could find in fast.

    --
    OMG Ponies!!! with Glitter!!!! I miss Pink :-(
  9. No problem / Noscript by fforw · · Score: 4, Informative

    The noscript firefox extension lets you forbid execution of javascript/java/flash by default and only enable it again for some sites (whitelist). Internet Explorer has "Trusted Sites" or something.. So all in all that is not that much of a problem..

    --
    while (!asleep()) sheep++
  10. Re:I haven't heard much by digidave · · Score: 4, Interesting

    I'm coding a large-scale site in RoR right now. It'll be deployed across three Lighttpd servers with two MySQL servers. I'm about three weeks into the site and I've probably saved a month of work already over how long it'd take me to do the same work in Java or PHP.

    Rails' efficiency won't continue to be that high as I get more into the business logic and smaller details, but for the data layers that I'm doing now Rails blows away anything else. I'll still be at least 50% ahead of where I'd be using Java and PHP when it's finished. The code will be way cleaner because Ruby is a better designed language than either Java or PHP. It'll be a snap to add features later, which is the problem we're currently having with our site and its 20,000+ lines of PHP code.

    I've coded and managed Java and PHP sites. PHP is easier to work with than Java for most small to medium sites and Java can be easier on large sites. Neither of them are better than Rails for any size site.

    I predict that Ruby on Rails will become the big third competitor in the market for building web apps. Java will still be bigger on the very high end because of EJBs and the need to interface with legacy systems and PHP will still be bigger on the low end because it's easier to learn since you don't need to know OOP to get started. Ruby on Rails will be the language/framework that finally fits into that middle market where most medium to large businesses are. PHP's code is too messy to work there without a lot of coder discipline and either a custom or well-done Open Source framework and Java is just too complicated.

    --
    The global economy is a great thing until you feel it locally.
  11. Re:Getting started by XaXXon · · Score: 4, Interesting

    Everyone raves about the poignant guide, but I found that after reading it for 20 minutes, I hadn't done much except read stories and comic strips. I really didn't have much of an appreciation for the language.

    There's something to be said for making a potentially dry subject interesting, but it seems to go too far with it and actually spread the actual information too thin.

    Just my opinion, of course.

  12. Re:Kudos to RoR... by ievans · · Score: 3, Insightful

    If you're using J2EE/Java EE for simple data-driven web sites a la RoR, then you're probably not the target developer for the Java EE platform. I have nothing against these web frameworks and the people who love them, I should add. It's just that the average /.er doesn't see the need for the features that are at the core of enterprise Java, and therefore they dismiss the platform as being too heavyweight. Sure, for small-scale development. The same mentality pops up in discussions on whether, e.g. MySQL needs transactions. It's kind of like hearing somebody who once built a dog house talk about the design requirements of a skyscraper.

    With that being said, Java EE 5 will make enterprise Java developer's lives much easier. EJBs, everyone's favorite whipping boy, are a lot easier to code now.

  13. Re:Ruby Apps by gregarican · · Score: 5, Informative

    There are tools for making Ruby into self-extracting executables --> http://www.erikveen.dds.nl/rubyscript2exe/index.ht ml. But for a true compiled solution that will likely be bundled with Ruby 2.0. It should include a VM --> http://www.atdot.net/yarv/. As for GUI apps there are extension libraries for Tk, Qt, Fox, WxWindows, GTK, etc.

  14. Re:Kudos to RoR... by helix_r · · Score: 4, Insightful


    The fact of the matter is that the vast majority of web-apps are actually in-house apps that have a fairly small number of concurrent users.

    Sadly, thousands of dev groups all over the world are slaving away very hard at j2ee simply because, well, its a good thing to have on one's resume or because consultants can bill mega-hours by building a "scalable enterprise application".

    If people were honest about their motivations and real scalability requirements, it would be clear that j2ee fits a niche market and that more rapid, easier-to-use dev frameworks like RoR fill mainstream needs.

  15. Zope - What RoR wants to be when it grows up. by Qbertino · · Score: 3, Informative

    You know a thing is superhyped when v1.1 is mentioned on slashdot.
    Mind you RoR is cool compared to j2EE. Then again, it's allmost as if C is cool when compared to J2EE. J2EE sucks big time for server side web - even the Java Gurus agree on that. End of discussion, no news here.
    But RoR isn't the end all of ssi frameworks. Django is at least as good (I'd say better and cleaner than RoR) and Zope has been around since the ninties and still is years ahead of the rest. People with an overview over the technologies generally agree on that. I had a story submission (rejected) on that the other week. Check out the linked webcast, it's a very interessting analysis of a set of technologies and solutions:

    |||||
    Nasa/JPL Web Framework Shootout

    In an educative and entertaining webcast, Sean Kelly, a Nasa/JPL software engineer, goes into the details of a project based comparsion between a set of web application frameworks and servers. Including the much hyped Ruby on Rails and Django. Various Java technologies, Ruby on Rails, Django, TurboGears and Zope are covered. Details and traits of each are mentioned. For people involved with web developement there are not to many suprises though, yet the presentation and Kellys commenting are fun to watch.
    In a nutshell: EJB, Hibernate and various other Java flavours fail spectacularly, Zope scores a clear victory with Django, RoR and TurboGears relatively close behind. Development speed, error-gotchas, the need for hand-tweaking and the requirement of handwritten SQL and available documentation go into the measuring. As does an overall tongue-in-check "fun-factor". The details are interessting though. TurboGears 'error-driven' developement gets a positive review, RoRs automated controller generation aswell and Zope gets a complete rundown on it's astounding set of features. In the end long-time Java developer Kelly convinces us that - no matter what we do - we really, positively, don't want to use EJB or Hibernate for this kind of stuff. Very entertaining and informative indeed.
    |||||

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Zope - What RoR wants to be when it grows up. by ubernostrum · · Score: 4, Informative

      In an educative and entertaining webcast, Sean Kelly, a Nasa/JPL software engineer, goes into the details of a project based comparsion between a set of web application frameworks and servers. Including the much hyped Ruby on Rails and Django. Various Java technologies, Ruby on Rails, Django, TurboGears and Zope are covered.

      Except he got more than a few things wrong. To pick one example, he seems to be under the impression that Django doesn't support i18n/l10n when, in fact, we ship all the core Django applications with support for twenty-odd languages, and Django uses an extensible gettext-based system to make it easy to translate third-party apps and add new languages. We even include an i18n JavaScript library to make translation strings available to JS code. Our admin app even has a setting that chooses which language to render a page with based on the incoming Accept-Language header.

      Moral of the story: nice video, but the guy hasn't necessarily done his homework.

  16. Re:I haven't heard much by Sokie · · Score: 3, Insightful

    I think an important thing to note here is that Rails is an web application framework for the Ruby programming language whereas PHP is just a programming language (with a few framework-ish features like session management).

    You could see similar productivity benefits by using a good PHP framework. The difference is that Rails is a fantasic framework and most of PHP's frameworks are mediocre. Part of this has to do with some of the language features that Ruby offers enabling Rails to be simpler to use and yet more powerful at the same time.

    Personally, I love Rails and I really hope that one of the recent PHP5 frameworks gets up to the point where it is comparable. If it doesn't though, I won't feel too bad leaving PHP (mostly) behind me.

    --
    ------
    Where are the slash-groupies? I distinctly remember being promised slash-groupies!
  17. Re:I haven't heard much by digidave · · Score: 3, Interesting

    First, scaffolding helps getting started because the programmer can work on code rather than building forms that connect to the database. The trick there is to use the 'generate' script to create the scaffolding in real code rather than use the run-time scaffolding. The generated code is pretty clean and does the bare minimum required, which is a great platform for building on.

    Second, with ActiveRecord the code feels very close to the data. When working within Rails' naming conventions it's very simple to do stuff like track back and forth in a data record and figure out what belongs to it (foreign keys referring to your data) and what it belongs to (foreign keys in your data referring to other data). Honestly, it seems heavy, but it works so well you forget about that. There have been a few times where I needed some data and found it already in my model object because the database relationship was there. This stuff has been made even better in Rails 1.1 because it stretches the relationship even more (relationships through other tables).

    Everything also gets done with a lot less code both because Rails makes things easy and because Ruby is designed really well.

    --
    The global economy is a great thing until you feel it locally.
  18. Re:Getting started by CptPicard · · Score: 3, Informative

    Hear hear, this is so true. Although I have been writing small Ruby scripts for a few years now, when I first took a look at RoR, I often had to pause to understand what exactly was happening in those very terse lines of code. You really need to understand Ruby's syntax and a lot of the philosophy quite deeply before you can grasp what is going on in RoR code. Without that understanding, you will never advance further in RoR than copying the tutorials.

    This is an example of a more general syntax-vs-semantics tradeoff in programming languages. Sure it's impressive how little code you have to write, but the other side of this is that the required understanding per line of code density is higher.

    --
    I want to play Free Market with a drowning Libertarian.
  19. Ruby on Rails? by grimsweep · · Score: 4, Funny

    I'm still waiting for C# on Cinderblocks.

  20. See it & Try it & You're a Star? by JoeRails · · Score: 4, Informative

    Who's using Rails? Check out the Rails wiki site for hundreds of example sites

    And if you want a free cPanel/SSH account to download the new Rails version in to see what the craziness is all about - check out www.HostingRails.com

    I think its safe to say that Ruby on Rails is the fastest growing Web 2.0-friendly framework - and for good reason. I mean c'mon - the average developer can pick up a few Rails tutorials and have a working demo app (w/ CRUD scaffold action and such) on their local box in a few minutes. Throw in some easily-incorporated Prototype and Scriptaculous effects, and this developer is the new cool kid on the block.

    Crazy

    ~JoeRails

  21. Re:How about Catalyst? by it0 · · Score: 3, Interesting

    I'm a c/perl guy and don't know catalyst but wrote some sites in perl using html::template and I just read http://www.perl.com/pub/a/2005/06/02/catalyst.html ?page=2 for a short tutorial.
    I also just made my first rails website in 10 days, this includes a cms and also an elobarate scheduling app as well as some other stuff like user manager etc. This also includes the time to learn the language and get my head around concepts. The major problem with rails is documentation, there is just to much of it scattered around and should be organised more. But with the rails api website, the ruby docs and some tutorials you will get there.

    The last 2 days was just finetuning what the customer wanted. From the tutorial I would say rails is easier to read. I think perl has more power over ruby, just as C has more power over Perl as you can go more low level with it. But ruby/rails is much easier to read and even less to type.
    I will still remain to use C and Perl for a lot of stuff. But when it comes to websites / web applications I will stick with rails. I can't see myself turning back. Maintaining and extending code is dead easy also the ajax integration is great.