Ruby On Rails 1.2 Released
Scooter[AMMO] writes "David Heinemeier Hansson sent a post to the Rails 1.2. This new version adds a slew of buff and polish to the rest of the system, as well several new features like RESTful interfaces, response formats, improved multi-byte support, and more. If you haven't checked out the web application framework that aims to renew joy within its users, give it a look. You may be amazed at how easy it makes things without sacrificing power or functionality."
I would think that improved multi-byte support would need to be in Ruby, not in Rails.
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
I code web apps in rails for work. I come home and play in Django. There is my renewed joy...
It's too bad Rails 1.2 wasn't released with mongrel (a very nice app server designed to run Rails apps, among other things). Currently deploying a production-ready server capable of running Rails is a uncomfortably unrails-like experience. Mongrel makes things a bit nicer, but even with that running under virtual hosts and/or with SSL requires some seriously heavy lifting (think Mongrel running behind Apache acting as a reverse proxy).
Until we get a quick and easy way of deploying Rails apps -- especially at the shared hosting level for ISPs (along the lines of PHP hosting, which is now standard), Rails will continue to have a difficult time finding a niche. The only place where Rails really belongs right now, and the only place where I'm using it (and loving it) is the corporate intranet, where putting up dedicated mongrel servers for internal web-based apps is not an issue.
For all guys currently using engines, you might want a look at this:
a re-dead-long-live-engines/
http://rails-engines.org/news/2007/01/03/engines-
And after looking at some presentations on their site, I still don't.
All it seems to do is offer a way to do very similar and simplistic web apps without any real-world functionality. I also wonder about the performance and memory profile; seems that the way it handles databases is exactly what DBA's hate to see. Sure, I understand Rails offers you the ability to create websites at high speed, but none of the websites it can create is worthwhile.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
http://jesusphreak.infogami.com/blog/why_django
It's getting installed at a furious rate... we're doing around a gem a second now.
The Army reading list
Now that we've just calmed down the Rails bunch they'll be all over us again with foam aroung their mouths. "RAILS! RUBY! RAAAAH!". ...
Here's a list of very good/better alternatives:
Zope - What Rails want's to be when it grows up. Ancient but still ahead of anything else with classic persistance. (www.zope.org)
django - Drinking buddies of the rails people. And they have unicode support. (www.djangoproject.com)
cakephp - YaWebframework. In PHP. Largest community out there. Impressive piece of code (www.cakephp.org). Some De-Normalisation and Relational Trails built in. Very neat.
symfony - PHP 5 Framework. Very good. (www.symfony-project.com)
The biggest suprise for me was reading right here that Rails, as of version 1.2, doesn't have unicode support - and apparently never had. Now that's showstopper imo.
We suffer more in our imagination than in reality. - Seneca
WHOOPS!
Attention deficit disorder is a complicated issue, spanning several major... HEY LET'S GO RIDE BIKES!
I'm only sort of kidding here - I think frameworks are great for people who don't have strong OO design background and/or don't fully understand the MVC pattern, or for people who work on a team where some people meet these criteria. A framework forces everyone to "stay in bounds." But if you (and everyone on your team) do understand these things, then I'm personally an advocate for just using an OO language (PHP, Java, whatever) and making sure your class design follows the MVC pattern. ActiveRecord (and other stuff like it) are nice to get a prototype page up, but it's not hard to write classes that can update/insert themselves into a database (assuming you use a solid OO design). By the time the pages and objects get more complicated, the amount of control you'll have by doing it yourself will make up for the time lost that an ORM tool saved you in the beginning. Adding complex business logic to the queries, optimizing the queries, and just general maintenance will be easier if you've done it yourself (again, assuming it was done with a solid OO design). I'm not trying to make a blanket statement here, different projects will have different needs. I have decided against using a framework in one project I'm working on right now, and these are some of the main reasons. In other projects, I've been a big advocate for a framework.
Django doesn't use SQLObject. You can, as a programmer, use it of course, since everything in Django is nicely decoupled, but Django uses it's own ORM. The main advantage of using this ORM is of course the production ready administration interface that you get for free, but if you don't need that, there is nothing stoping you from using SQLObject or even better, SQLAlchemy. In fact, there is even a branch in Django to have SQLAlchemy support in the framework.
Using a different ORM, template engine, etc in Django is just a import statement away.
According to the release notes, Rails 1.2 works with Unicode.
One of the great things with Rails is that it is so easy to update. There's three easy steps: Step 1: gem update rails --include-dependencies Step 2: Press return Step 3: There's no step 3
All of frameworks I've used allow you to drop down to straight SQL for database work, ignore their models and templating (or substitute others), and completely mess up the MVC pattern, if you want. Django goes the farthest towards restricting your options in the latter respect, but it's still possible.
I know you're somewhat kidding, but I just wanted to note that the reason for a framework is above all to have a starting point. Some frameworks do a much better job at that than others, but that's the purpose. If the only purpose was to restrict, they'd be more annoying than not, and people wouldn't use them by choice at all.
I [may] disapprove of what you say, but I will defend to the death your right to say it.
Thanks to the Rails developers!
Ruby on Rails is certainly a giant step forward in increasing programmer productivity. The new REST support is great, but I must say that the web based SOAP debugging interface made using SOAP with Rails painless.
A little off topic, but for my customer I integrate Rails with back end Common Lisp code - so far just using home grown REST support at both ends. Eventually, I would like to get the time to generate compiled Lisp libraries directly linked to Ruby when everything is runnng on a single server.
BTW, I created a simply Ruby and Ruby Rails news clipping web site, mostly for my own use, but it might be useful for you: http://rubyplanet.net/
Comment removed based on user account deletion
I have switched from Mongrel (behind Apache) to Litespeed. Mongrel was using too much memory and a mongrel process can only be used for one application. So if you want to set up a cluster of Mongrels for each application, it can quickly eat up a lot of memory. And if you are serious about deploying a Rails application, you should look at a VPS or a dedicated server to do it. For some good Rails hosting companies visit Railshostinginfo.com, which gives you the ability to compare Rails hosting companies.
Just come up with a PHP version of Rails and acceptance and support will improve. Done.
Table-ized A.I.