Ruby On Rails Goes 1.1 255
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."
Ruby Tutorials (Score:5, Informative)
Re:Ruby Tutorials (Score:2)
Javascript is insecure - AJAX is security hole (Score:3, Informative)
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.
Re:Javascript is insecure - AJAX is security hole (Score:5, Informative)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Mod parent up; for a small inconvenience (you have to add each site to your whitelist with 2 clicks), NoScript provides a lot of protection. It also shows you how much fricking code is pulled from other domains- scary. The page on which I type this pulls code from:
slashdot.org
google-analytics.com
2mdn.net
questionmarket.com
falkag.net
and good ol' doubleclick.net
NoScript lets you select which code to run, and which to ignore. Inconvenient but awesome.
And somewhat on-topic, check out siteadvisor.com
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:5, Funny)
No problem / Noscript (Score:5, Informative)
Re:Javascript is insecure - AJAX is security hole (Score:2)
If that's true, then the Ajax/JavaScript support in Rails is severely broken. Properly written JavaScript degrades gracefully, so that the people who have JavaScript enabled get the benefits of it, but the people who have JavaScript disabled can still use the application.
Can anybody who's used this new part of Rails comment on this? Does it really generate Ja
Re:Javascript is insecure - AJAX is security hole (Score:2, Informative)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
No, you're mistaking common practice for inherent flaw. There's nothing general to Ajax that precludes graceful degradation; Ajax is standard JavaScript, and the techniques used for graceful degradation are just the same for Ajax as they are for any other JavaScript.
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Still, there's a plugin for it [noscript.net]...
Re:Javascript is insecure - AJAX is security hole (Score:3, Insightful)
I disagree with the statement "JavaScript is insecure". Implementations may be insecure, but the specification itself has no such problem. There have certainly been security holes discovered in JavaScript implementations. There have been equally dangerous security holes discovered in other aspects of the browser.
My other question to the
Re:Javascript is insecure - AJAX is security hole (Score:2)
Despite that, I think it's time to get over it--scripting is a part of the World Wide Web. The whining about JavaScript reminds me of the whining about PDFs that always occurred on Slashdot a few years ago, which thankfully has mostly disappeared. Everyone stupidly assumed because Acrobat was slow, PDF was slow. Nope, Acrobat was slow because it loaded all its plugins on every startup, which Adobe stopped doing in the
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
Re:Javascript is insecure - AJAX is security hole (Score:2)
No, though I do sometimes wear a baseball hat. But I *do* close the car doors, hood, and trunk lid when I drive, with occasional rare exceptions when I'm hauling bulky objects, and occasionally a door doesn't get latched successfully and comes open by itself. .
Rails is Great (Score:5, Interesting)
Any other former Java programmers relate?
Re:Rails is Great (Score:2, Insightful)
I equate it to the java transition that happened some years back....i have to still do java until the industry starts to realize the power of rails, just as I had to do C until they started to use Java.
Re:Rails is Great (Score:2, Funny)
Re:Rails is Great (Score:3, Interesting)
However with Ruby + Rails + Ruby & Rails Eclipse plugins, I almost never need to sit around for more than 2 seconds to see my generated ou
Looking to get started in Rails? (Score:5, Insightful)
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/ [runfatboy.net] -- Exercise for Web 2.0.
Re:Looking to get started in Rails? (Score:2)
The thing I like especially is the unit testing, still getting m
Re:Looking to get started in Rails? (Score:2)
Re:Looking to get started in Rails? (Score:2)
Web an API junkyard (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!
Re:Web an API junkyard (Score:2)
Re:Web an API junkyard (Score:2)
I agree. I am a little surprised the applet hasn't come back into style. It certainly provides a rich interface and is nowhere near as contorted as some of these 'frameworks'. It would have been nice if several languages could have supported Java bytecode output. Kawa scheme does. I don't know of any others. Another thing I have been puzzled about is why Sun never freed the Hotjava browser. In the old days, I used to like it. It certainly ran applets cleanly.
Re:Web an API junkyard (Score:4, Interesting)
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.
Kudos to RoR... (Score:2, Funny)
Re:Kudos to RoR... (Score:3, Insightful)
Re:Kudos to RoR... (Score:2)
Re:Kudos to RoR... (Score:5, 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.
Re:Kudos to RoR... (Score:2, Informative)
I also question your use of the term "mainstream." One person's niche technology is the next person's mainstream one. There are different market segmen
Re:Kudos to RoR... (Score:3, Interesting)
Java is ubiquitous in the corporate market. It is the Jack-of-All-Trades. It's what CTOs look for on a resume because they think Mr. Java can do ANYTHING, and Mr. Ruby might be able to learn Java after a year or so, but would be limited in what he could do until then.
I still can't fathom why people think Ruby lacks transaction, security, and connectivity. My experience with it is that it's highly reliable and connects t
Re:Kudos to RoR... (Score:2)
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.
Bwuaah hah aha hahahaha. Let's see, we go from EJB's are evil [onjava.com] to a lot easier to code now. Sure, after getting burned and poked in the fires of hell by Sun's concept of a business layer, just getting slow roasted on a spit is prefered.
Re:Kudos to RoR... (Score:2)
My conclusion is that the compute-intensive performance of java versus ruby does not really make much difference for the vast majority web apps.
It is not about performance. It is about developer productivity.
Re:Kudos to RoR... (Score:2)
Re:Kudos to RoR... (Score:2)
My conclusion is that Rails apps are easier to program, easier to scale to multiple servers, easier to deploy, and they run slower than Java apps in some circumstances.
Re:Kudos to RoR... (Score:2)
Really. According to these articles [poocs.net] ROR was able to scale to more then a million hits per day spread out over 14 hours or so. That's around 20 dynamic pages per second and 85 gig of data PER DAY.
That's a real world application running today on ruby on rails, linux, mysql and fascgi.
How much of a developer productivity hit are you willing to take on the off chance that you will hit a limitation of Ruby or ROR?
The "java scales but fill-in-the-blank doesn't" cro
This seems good for layman understanding (Score:5, Informative)
Ruby Apps (Score:2)
Is it possible to make stand-alone, executable apps in Ruby? What about GUI?
Re:Ruby Apps (Score:2)
Re:Ruby Apps (Score:5, Informative)
Re:Ruby Apps (Score:2)
Zope - What RoR wants to be when it grows up. (Score:3, Informative)
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 [nasa.gov], 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 [rubyonrails.org] and Django [djangoproject.com]. Various Java technologies, Ruby on Rails, Django, TurboGears [turbogears.org] and Zope [zope.org] 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 [sun.com], Hibernate [hibernate.org] and various other Java [sun.com] 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 [softwarereality.com] or Hibernate for this kind of stuff. Very entertaining and informative indeed.
|||||
Re:Zope - What RoR wants to be when it grows up. (Score:2)
Re:Zope - What RoR wants to be when it grows up. (Score:3, Insightful)
Re:Zope - What RoR wants to be when it grows up. (Score:5, Informative)
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.
Ruby on Rails? (Score:5, Funny)
Re:Ruby on Rails? (Score:2)
Re:Ruby on Rails? (Score:2, Insightful)
Oracle support (Score:2)
Still missing: many to many support (Score:2)
Re:Still missing: many to many support (Score:2)
Many-to-many relationships? Rails may or may not have them (been a while since I last played with it), but Django [djangoproject.com] most certainly does [djangoproject.com]. We don't have "scaffolding" (though somebody's submitted a patch to do something similar), but we do give you a ready-to-go administrative interface built
Re:It may be a little basic... (Score:2)
If you compare this with what e.g. MSAccess (and to a certain extend even OpenOffice) can do out of the box with a few keystrokes, the support for this in Rails can easily be called non-exis
I'm having fun with this (Score:2)
The bottom line for me right now is that I'm having fun with it. I've been really looking forward to the little extra time I've put aside each day to work with Rails; although I think that a lot of the fun I'm having is just pleasure at using Ruby.
See it & Try it & You're a Star? (Score:4, Informative)
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 [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 [conio.net] and Scriptaculous [aculo.us] effects, and this developer is the new cool kid on the block.
Crazy
~JoeRails
Re:Getting started (Score:5, Informative)
Re:Getting started (Score:3, Informative)
This is an example of a more general syntax-vs-semantics
Re:Getting started (Score:2, Informative)
Re:Getting started (Score:5, Informative)
Or, if you're on the lazy side of things, you can try it right within your browser here: http://tryruby.hobix.com/ [hobix.com]
I hope this helps.
Re:Getting started (Score:5, Interesting)
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.
Re:Getting started (Score:2)
Re:Getting started (Score:2)
Re:Getting started (Score:2, Informative)
The first edition is available online [rubycentral.com]. You don't need to buy the second edition unless you are really serious about learning Ruby. The first will do for evaluating the language and playing around with Rails. And if you really want to learn Rails (after going through the tutorials [digitalmediaminute.com]), Agile Web Development with Rails [pragmaticprogrammer.com] is the book I recommend.
Re:Getting started (Score:2, Informative)
But if you do mean that you want to see Ruby executed, an online interpreter [hobix.com] is available.
If you're asking for examples of what Rails can do, it can do only what you can do using any other language on the server-side, only much faster and with cleaner code.
Re:Getting started (Score:2)
Ruby is a wonderful language that is very flexible. I came to it from Python. I enjoy using both languages, but Ruby has replaced Python as my 'home' language. I don't do web devel.... there's much more to Ruby than Rails
Re:I haven't heard much (Score:2)
Re:I haven't heard much (Score:2)
Yup, that's just a function of the Rails 1.1 effect - getindi.com [getindi.com] is currently sharing a DSL line with rubyforge.org, which is serving the RubyGem index that lets people install Rails with gem install rails. Yikes!
Re:I haven't heard much (Score:2)
Re:I haven't heard much (Score:2, Funny)
Re:I haven't heard much (Score:2, Funny)
Its the way geeks do things.
It reminds me back in the late 90s when everything was Java!!!
It reminds me of even further back in high school.
Back then, everybody was interested in sex, talked about sex, wanted sex, but nobody was doing sex.
Same thing with Java in the late 90s and Ruby today, and AJAX tomorrow.
Re:I haven't heard much (Score:5, Interesting)
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.
Re:I haven't heard much (Score:3, Interesting)
Re:I haven't heard much (Score:4, Insightful)
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.
Re:I haven't heard much (Score:4, Interesting)
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.
Re:I haven't heard much (Score:2, Informative)
Re:I haven't heard much (Score:2)
Re:I haven't heard much (Score:2)
Re:I haven't heard much (Score:2)
Re:I haven't heard much (Score:2)
Most banks over here and insurances use Java due to the connectivity into their RS6000 and AS4000 environments.
Also banks usually are very IBM centric and most people working in banks I have met in the last year were
Re:I haven't heard much (Score:3, Insightful)
Re:I haven't heard much (Score:2)
For starters, here's Steve Yegge of Amazon.com on languages, including Ruby.
Stevey Tours (and bashes) C, C++, Lisp, Perl, Ruby, Python. [cabochon.com]
Stevey on Languages: A Quick Tour of Ruby [cabochon.com]
And some more non-Ruby-specific, but interesting articles there, like this one [cabochon.com].
Re:Lets use Google as an example .... (Score:2)
Dear god I hope not. AJAX is awesome when the application logic is relatively minor and the feature requirements are low. Gmail is great except that it does not support a lot of the collaboration features that make outlook/groupwise essential for office environments. Writely may work well for high school homework papers but try using it for a college thesis, much less putting together busines
Re:Upgrading (Score:2)
Re:Upgrading (Score:2)
Re:Upgrading (Score:2)
You can also use Darwinports [opendarwin.org] to install ruby and ruby-gems and whatever DB you want. Caveats: you have to install swig if you're using sqlite [rubyonrails.org], you have to change a shebang or two to avoid conflicts with the installation of ruby that ships with OS X.
Re:Upgrading (Score:4, Informative)
http://developer.apple.com/tools/rubyonrails.html [apple.com]
Re:Upgrading (Score:3, Informative)
If you want Ruby on Rails 1.1:
Weaknesses of "prototype.js" (Score:2)
As someone who's evaluated various JavaScript frameworks, what do you think of "prototype.js", the AJAX library that Ruby uses?
Does the new version of Ruby continue to use "prototype.js" or has it switched to a better designed and documented JavaScript framework?
How is the documentation of "prototype.js"? Does it have a rigorous test suite? How does "prototype.js"'s documentation and test suite compare with, say, MochiKit [mochikit.com]?
Does "prototype.js" continue to define additional methods on Object.prototyp
Re:Weaknesses of "prototype.js" (Score:2)
I'm not asking you to fix the problem, I'm just pointing out that you should be aware of it, so you're not surprized when things start breaking for no obvious reason, when you try to do anything less than trivial with AJAX.
As the person evaluating frameworks, you should be aware of the limitations that the frameworks have. If you're using a framework that depends on "prototype.js", it should certainly concern you, because that means you're going to have trouble integrating other JavaScript code with it.
Re:Weaknesses of "prototype.js" (Score:2)
Then why not take advantage of features of the Internet? If you're using HTTP, then every one of your cont
Re:Weaknesses of "prototype.js" (Score:2)
The point is that there is very little reason WHY this change would be necessary instead of making a function that accepts these objects as arguments. What is really so different between push(item, array) and array.push(item)? What possible use could it have that is worth breaking looping ov
Re:Weaknesses of "prototype.js" (Score:2)
I place the blame squarely on Prototype. Application developers should never have to worry that someone else has snuck in and modified the core language's behavior without their knowledge, because down that path lie nightmares of couplin
Re:How about Catalyst? (Score:4, Interesting)
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.