Here is some problems I have had in trying to advocate why Rails
should be used over PHP or hacking some other open source code:
I realized I didn’t give a good argument for why Rails is much
faster and I don’t know exactly how to present that. I could have said
something like “I built a website for my band in less than 2 weeks and
it had advanced administrative capability”. It seems hard to
convince people who haven’t been either convinced by others, articles
and so on or who have not done anything with Rails.
I am not an expert on scalability and was able to say with
certainty what can scale, how it would scale etc. I’ll I know is that
there are numerous scaleabilty solutuions and that I have only read
about memcahced and have never done any of that. Most of my experience
has been in C++ and I only started web development in the last year.
I feel apprehensive about advocating a technology to a team of
developers that they are not at all familiar with, on a project where
there are numerous uncertainties. In fact I had to advocate PHP
symfony or cakePHP which are Rails based frameworks done in PHP
because we had other open source PHP codebases and it seemed there was
a push for a PHP codebase. Using PHP frameworks I am not familiar with
introduces more uncertainties even though these frameworks should be
very similar to Rails. I perhaps fear that if something goes wrong or
something unexpected comes up, I could get blamed for it if I
advocated using a framework and there was some issue surrounding that
or associated with that. This particular underlying anxiety of mine
perhaps translated into me not strongly pushing an MVC solution as
much as I would otherwise.
Here is some problems I have had in trying to advocate why Rails
should be used over PHP or hacking some other open source code:
I realized I didn’t give a good argument for why Rails is much
faster and I don’t know exactly how to present that. I could have said
something like “I built a website for my band in less than 2 weeks and
it had advanced administrative capability”. It seems hard to
convince people who haven’t been either convinced by others, articles
and so on or who have not done anything with Rails.
This is a classic sales problem and really falls outside the
technology to a large extent.
Of course, insofar as Rails is the new kid on the block, people with
middling level technical knowledge will need external convincing as
evidence.
I’ve found this article to be amazingly useful against this mindset:
I am not an expert on scalability and was able to say with
certainty what can scale, how it would scale etc. I’ll I know is that
there are numerous scaleabilty solutuions and that I have only read
about memcahced and have never done any of that. Most of my experience
has been in C++ and I only started web development in the last year.
Fortunately, there are many Rails specific solutions to this problem
that fall under technology 4 in the above article.
I’m entirely too biased to provide a list of those companies myself.
or associated with that. This particular underlying anxiety of mine
perhaps translated into me not strongly pushing an MVC solution as
much as I would otherwise.
Cannot help you here. “Fortune Favors the Bold” may be true, but many
bold folks have had their heads removed too.
–
– Tom M., CTO
– Engine Y., Ruby on Rails Hosting
– Reliability, Ease of Use, Scalability
– (866) 518-YARD (9273)
I don’t think you will get too much more than compelling anecdotal
evidence that Rails is a faster framework on which to create Web apps.
Build
a demo app one morning and see whether you agree.
Scaleability is a huge bugaboo and the implicit assertion is that
because
people have scaled solutions using other technologies, those
technologies
are inherently more scaleable. My observation is that because
scaleability
is on so many Rails people’s radar, it is being taken more seriously
than
perhaps it is in some other framework communities. That said, Rails
does,
to-date- require that concurrency be handled in a multi-process rather
than
multi-thread manner. If you’re getting enough traffic to warrant this,
you’re probably pocketing enough money to afford this kind of scaline.
This is a big question. If you have lots of dedicated PHP developers,
some will want to continue with their level of comfort. Most top-notch
developers are eager to learn new skills and will be happy to give Ruby
and
Rails a test drive. Part two of the question is more difficult. No
matter
what framework you recommend, you’re making a choice. If you decide that
PHP-works-just-fine-thank-you-very-much, then you are making one kind of
decision. If you pick Cake or Symfony, be aware that they are frameworks
too
and you are building on top of someone else’s work.
Without casting aspersions, I have watched Rails, Rails core, and the
Rails
community grow since before 1.0 and the level of commitment, best
development practices, and testing is way better than I’ve seen from
most.
If you roll your own, casting aside frameworks because you are anxious
about
making a mistake, you’re walking away from the combined expertise of
everyone who has contributed to these frameworks, be they Rails, Cake,
or
whatever.
You say you are a C++er. Would you consider the C++ standard template
library optional? In its own way, that is a framework. That what the
whole
deal about C++ and its ilk: Really smart people could create really
useful
class libraries, making lots of other programmers more productive. NeXT
got
this with NeXTStep (now OpenStep) and Microsoft got it with MFC. Both of
these were written by corporations with (by definition) constrained
development teams, which IMO was a weakness. However, both were adopted
as
pretty much the de-facto way to solve programming problems for their
domains. I would suggest that a framework is something to be sought out,
not
avoided.
convince people who haven’t been either convinced by others, articles
developers that they are not at all familiar with, on a project where
much as I would otherwise.
This is a big question. If you have lots of dedicated PHP developers,
some will want to continue with their level of comfort. Most top-notch
Only those who refuse to give Ruby a chance I worked with PHP on a
daily basis for… dang… 10 years now. Just over a year ago I
switched
to Ruby/Rails as we decided to redo our site. I read everything I could
find… pickaxe, agile, _why’s guide, etc. The first oh, month was
hard.
After that it all came together and I can’t stand PHP anymore.
Now, I was lucky. When we switched we switched 100%. Which means 8+
hours a day of Rails… which is a good way to really learn it
-philip
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.