On Sep 3, 2010, at 7:27 PM, Philip H. wrote:
On Sep 3, 2010, at 3:44 PM, Cuz I. wrote:
On Sep 3, 2010, at 6:00 AM, ä¾¯å¥ wrote:
Our team decided to use rails to develop our new web application
project. Some of our team members think we should ues rails 3 for
our new application, beacuse they have many great new features.
But the others doesn’t agree with that, they said: “There has been
many applications based on rails2. Rails 3 are too new to use for
a real project. It may have unknown bugs, and we can not get
support as easy/quickly as rails 2”.
All of us agree that we should be based on ruby 1.9, because it is
much better than the old versions.
Please help up make a desition, rails 2 or ralis 3, which is
better for a new project in real life?
It all depends on what the app is going to do/use…
You are definitely right thinking you will have faster more stable
success using rails2. That is not a rails thing but anyone in
long enough knows this tradeoff no matter the platform. (java, .net,
python, drupal, etc…)
The bigger slow downs/bugs/time lags tend to be around the plugins/
It takes time to get those all working properly.
Everyone wants to be on the newest version but think about servers
If you keep upgrading your servers a lot of software will break. You
can’t go install redhat 6 as soon as it is released and think your
going to run into issues. Also think about how many bug fixes and
service packs come out after new things arrive. You need to be
in your decision.
What I have learned in all my experience is don’t be bleeding edge
unless you got it like that and/or want it like that. It seldom is
‘logically smarter’ choice for the majority of scenarios.
One thing that might change this thinking (for me anyway) is the
launch date for the project. If it’s in a month or two, I’d stick
with 2.x because I don’t have the time to deal with plugin/gem
issues. If it’s 6 months or a year from now, I’d be much more
likely to deal with those issues because come launch time 3.x will
have had all those things worked out.
A timeline of that duration would also give me the time (or let me
plan for it) to help fix those plugin/gem issues and contribute
I’m going to tell you to go with Rails3 and Ruby1.9.2 and explain my
Rails3 went beta the first week of February 2010. I was just starting
a project with a new client and we figured that going with Rails3.beta
was the way to go because it would be final before the project was
delivered. At that time, we were wrong. After less than a week, we
retreated to 2.3.5 because there were so many little problems with
rails and with bundler (and actually more with bundler than rails).
(We were using ruby1.8.7)
That was 6 months ago.
In July 2010, another client started a project. Rails was now
3.0.0.beta4 and starting was much smoother. There were still places
where changes from 2.x and documentation that was playing a bit of
catch-up to the code gave us fits, but those were manageable. Have
there been problems? Yes, but relatively minor (although we did submit
a patch for a bug in ruby’s CSV standard library). Rails3 forced a
decision between ruby-1.8.7 and ruby-1.9.2-something (because it
wasn’t stable with 1.9.1) and we were at 1.9.2-r23238 (yes, a
particular revision in ruby’s SVN repository). Now we have an official
Rails-3.0.0 release, Ruby-1.9.2-p0 release and gems that are quickly
catching up. Seriously, the biggest issue with gems has simply been
deprecation warnings – they have worked fine.
There are significant differences in ActiveRecord between 2.x and
3.0 and routing has been completely overhauled, too. If you don’t
already have Rails2 projects, then you’ll have to learn how Rails2
does things and then have to re-learn how Rails3 does the same things
(because you will want to upgrade).
The documentation will catch up. The Rails guides are good and there
has been over 6 months of beta/rc time for a lot of issues to be baked
out of the final release. Any gem maintainers who may have been
waiting for an official release no longer has to wait to put the final
polish on their gems to make them ready for ruby-1.9.2 or to work
seamlessly with rails-3.0.0.
Anyone starting a new project right now should definitely be using
Rails-3 and Ruby-1.9.2 (or perhaps 1.8.7 if you’re limited by your
hosting environment, but if you don’t have either 1.8.7 or 1.9.2
available then you maybe you need to find a new hosting provider).
[email protected] http://AgileConsultingLLC.com/
[email protected] http://GaslightSoftware.com/