When comparing Ruby on Rails vs Symfony, the Slant community recommends Ruby on Rails for most people. In the question“What are the best backend web frameworks?”Ruby on Rails is ranked 4th while Symfony is ranked 20th. The most important reason people chose Ruby on Rails is:

The large number of documentation, tutorials, videos and guides which help new developers who are just starting with Rails make it seem very easy to create a small and simple application by relying on code generation and components that come out of the box with Rails.

Pros

Pro

Small projects are very easy and it's possible to finish one in very little time

The large number of documentation, tutorials, videos and guides which help new developers who are just starting with Rails make it seem very easy to create a small and simple application by relying on code generation and components that come out of the box with Rails.

Pro

Massive community with lots of tutorials and guides

The sheer scale and massive number of developers using Rails has produced a large number of guides, tutorials, plugins, documentation, videos and anything that can help new and old Rails developers.

Pro

Many plugins (gems) available

There are many third-party plugins (Ruby gems) available for Rails development. The larger ones and those that have a lot of downloads and users are very well documented and easy to use.

Pro

Ruby is a nice readable language

Ruby has a very clean syntax that makes code easier to both read and write than more traditional Object Oriented languages, such as Java. For beginning programmers, this means the focus is on the meaning of the program, where it should be, rather than trying to figure out the meaning of obscure characters.

Pro

Good conventions

MVC is a great starting point, and perfect for APIs. You'll rarely if ever have to wonder "where should I put this code?"

Pro

Supported on every major cloud or VPS hosting service

Rails is supported on every major Cloud hosting service nowadays. There are also countless tutorials that help developers deploy their Rails apps if there are any problems on the way.

Pro

Cool language

Pro

Meta-programming capabilities

Pro

Open Source

Symfony is open source and released under the MIT license.

Pro

Highly active community

Symfony has one of the most active communities out of all the PHP frameworks. This is shown by the high number of commits made every day in the GitHub repo.

Pro

Easy debugging with a built-in debug toolbar

Symfony comes with a built-in toolbar that helps developers debug their applications during the development phase.

The toolbar is also extendable and new components, called panels can be added if needed to help with the debugging process.

Pro

Great plugin ecosystem

One of the greatest strengths of Symfony is it's amazing and large plugin ecosystem, which comes as a result of it's large and dedicated community. Having a large number of plugins means less development time and more productivity.

Pro

Powerful event system

Symfony has a powerful built-in event system that allows you to add flexibility to applications and makes it easier to maintain the codebase down the road.

Pro

Teaches you good practices

Symfony makes you be a better programmer. You have to deal with the latest object-oriented design patterns such as service-oriented architecture, dependency injection, interface abstraction, and so on.

Pro

Uses Doctrine ORM

Symfony makes use of the Doctrine ORM to add an abstraction layer over the database in order to maintain flexibility without having unnecessary code duplication.

Pro

Uses YAML/XML/PHP/Annotation

Symfony makes use of XML, YAML or PHP annotations to create configurations in order to tell Doctrine on how properties of a certain class should be.

Pro

Great templating engine

Uses Twig, which is a simple and easy to learn templating language that can also be used as a standalone engine, outside the framework.

Ad

Cons

Con

Too much magic

So much behavior is implemented with dynamic behind-the-scenes changes to existing classes that obscure bugs are way too common. Conflicting interactions between multiple plugins that both try to change the same objects are a particularly pernicious example.

Con

Learning curve seems low at first, but starts becoming steeper

Rails' simplicity is deceptive. It's learning curve is really low at first, and the huge number of tutorials and guides out there for starting with Rails make it even easier. But it starts getting harder and harder as apps become more complicated. If good code conventions and OO design are not followed, then the codebase will be all over the place and it becomes impossible to maintain it.

Con

Too much convention

Con

Not a very popular language outside of web development

Con

Bad performance

Among the slowest frameworks. If you want to scale, you will have to migrate to another land.

Con

Settings

Too many configurations.

Con

Very hard to install

Setting it up on webhost without a console is difficult.

Con

Promotes bad development practices

Such as annotations via comments.

Con

Doctrine ORM

Symfony Standard Edition, which is the most widely used distribution, comes integrated with Doctrine, the most resource hogging ORM library.

Con

You need a lot of files to display a single page

For a simple hello world page you need about 5 files.

Alternative Products

Each month, over 2.8 million people use Slant to find the best products and share their knowledge. Pick the tags you’re passionate about to get a personalized feed and begin contributing your knowledge.