Published by Fabian on 16 Apr 2008
I read your blog about symfony and that you now switched to Ruby on Rails. You claim to work with symfony, but I cannot understand how you then can come up with those 20 things that Ruby handles better than symfony. Perhaps you made some up to complete your list of 20? Or you just don’t know?
Yes I am biased to symfony, but I am not advocating the one or the other here.
So here my remarks to each of your points:
- If you think that Propel is inferior to AR, thats fine with me. Btw there is a doctrine replacement for symfony available.
- Also matter of taste, I think both do a good job here, and neither is perfect
- You miss to mention that symfony also has an integrated test system and fixtures. I wonder how you could miss the entire chapter about testing in the symfony book.
- Propel has Behaviours, and there are tons of readymade plugins out there for that purpose.
- the built in webserver is unique to RubyOnRails. In my personal opinion thats unneded but helps with prototyping.
- Well thats php not symfony. If ruby is better thats fine.
- Yeah big big minus for symfony. Luckily there are a few guys that started working on this in plugins.
- It sounds like that you think symfony has got no environments? it has.
- PHP hasn’t, but symfony has a database session store, cool eh?
- Symfony hasn’t too much support for webservices built in. sad but true.
- Thats a nice feature. I think thats on the roadmap for sf1.1.
- You can do custom tasks in symfony. 1.1 has even the same syntax.
- Deployment is cool? symfony also has something there. I never used it because I think that deployment is a more controlled process rather than a developer executing a task. What I saw from the symfony one it also was not too powerful.
- I thought RoR has an own server
- Well you can write easy filters in symfony 1.0. Fabien changed the filter system for 1.1. I am not sure if i will like it.
- No interactive debugging in symfony. I think its a PHP issue but actually it is an issue.
- Cron isn’t supported in symfony. But you can designate some scripts as batch scripts.
- Profiling is nice. I have to have a look at it!
- Again a whole chapter that you seem to have missed in symfony. I personally find caching a very good part in symfony. It is fast and very easy to use.
Wrapping it up, I can notice that you missed your target of listing what is better in Ruby on Rails than in symfony:
there are some things that make it less than perfect when compared with something like Rails
In 8 out of 20 of your points you were just unaware of the features of symfony. I cannot believe that you claim to develop in symfony but haven’t read the great documentation. The whole book is online and free.
Other aspects of both, symfony and Ruby on Rails, I personally dislike: developer and process tools, such as crons, deployment, servers etc do not belong into a web application framework. It should be inside the development process. Perhaps even bundled with an IDE, bug tracker, or SCM tool. But not in the “language” itself.
But since you are so happy about RoR, I am very excited, because I will try it also myself.
In essence I think that symfony and Ruby on Rails are very similar. The major difference is the language. I think.