

Ask HN: Ruby on Rails or PHP ? - vineet7kumar

I am quite a newbie in web development world. My friends and myself are planning to write a new web-app (as a side-work). We have a little experience in PHP and heard and read a lot about Ruby on Rails. 
What do you gys suggest RoR or PHP(with a framework like symfony or cakePHP) ? 
Our priorities are :
1. Quick development time.
2. Hassle free development and deployment.
3. cool-looking UI.
4. lower learning curve.<p>Thanks,
Vineet
======
timmaah
Personally I've gone with RoR and haven't looked back.

That said, its your project and there are no right or wrong answers. RoR and
PHP would both fit your 4 priorities.

Let me know if you want to bounce so more questions off me. tiwatson at gmail

------
ErrantX
My personal preference is the KohanaPHP (kohanaphp.com) framework. It's a PHP5
dependant MVC framewor with lots of libraries / helpers and reasonably good
documentation.

When V3 comes out later this year it should compete easily with RoR in terms
of speed versatility and so forth (from what I have seen)

Ultimately it depends on what your doing: I have prototyped fairly complex
sites with ease in a day using Kohana. Im told RoR is pretty good at that too.

I usually recommend PHP for big projects - but I suspect that is because I
have barely touched RoR and so am biased :)

------
slater
May I ask you to expand on your questions?

1\. PHP & RoR both offer "quick" development time (timed to what, though?)

2\. Define hassle-free development? As for deployment, surely that's in your
hands as to where you want to deploy? PHP has wider deployment (usually
available with Apache-based server hosting)

3\. The UI has little to do with the underlying, server-side technology (if I
understand your question; besides, "cool-looking" is very subjective)

4\. Lower learning curve than what?

------
spooneybarger
Vineet,

ROR makes a certain class of application very easy. Others not so much. If you
are building an application with a limited number of data models where having
'user' vs 'admin' distinctions isn't very important, then you can get up and
running with ROR very quickly. If you are building a more traditional
application where there is a distinction between end users who consume and
administrators who create, then Djanjo would probably be a better fit.

For the types of applications that I create for my job, neither is very good
as the number of data models, large amount of business rules etc are beyond
what most frameworks are designed to make easy.

~~~
dpnewman
Having coded in both django and rails, I cannot figure out why you would make
that distinction. Every rails app I have ever coded has distinct user roles
such as these and it's ridiculously easy to implement. easy to role your own,
as well as many plugins which address these needs. \---- :admin_required =>
[:edit, :destroy] # eg, in controller

if has_role? "administrator" # eg, simple check

~~~
spooneybarger
because speed is of the essence for the op and djanjo gets you there quicker
for a full featured backend crud admin.

------
dpnewman
if it's just a one off and you have some experience already in php, then
sticking with that might be a good plan.

if you see this as an ongoing evolution and want to explore a framework and
language that has some incredibly elegant approaches to the distinct problems
and challenges faced in most web applications, then getting into rails could
be a game changer for you in the long run. what tends to happen in rails is
that the gruntwork goes away, and you're left focusing just on what is unique
to the tech you're building. additionally, rails imposes architecture that
helps an app over time actually become more and more focused, and accessible,
rather than more spaghetti-ish.

once i got into rails, and over the fairly mild initial learning curve, it has
been like working with a fine caligraphy pen vs a leaking ballpoint.

