1. Experienced PHP developers are easier to find.

Why are experienced PHP developers more abundant than experienced Ruby developers? Perhaps PHP developers are more common because PHP is easy to get started with. With a simple text editor, basically anyone can write some PHP code and quickly see it in action. What’s more, PHP is error-tolerant; in other words, one typo does not kill all functionality. PHP was built bit by bit over time, organically, with no definitive master plan. This is often cited as one of its flaws, but it also means that PHP can be used in a more modular manner than, say, Ruby.

Clearly there is a long way to go between getting your feet wet and being an “experienced” programmer. While we can’t say precisely why there are more experienced PHP developers today, our experience tells us that it is so.

The greater availability of experienced PHP developers makes PHP development an advantageous decision for your business or startup for three reasons:

  1. The ability to quickly find additional PHP developers speeds up development time.
  2. It’s easier to find programmers who can take over or extend pre-existing projects.
  3. Perhaps most significant, ** **PHP development costs may be less, specifically because there are more PHP developers in the labor market.
  4. PHP 7 is faster than Ruby.

In terms of speed, PHP 6 was more or less in line with Ruby. Now, PHP 7 boasts a 30-40% performance boost compared to previous versions of PHP. In short, the latest version of PHP can offer the same functionality, but provide it faster than Ruby. These time savings may not be mission critical. And Ruby may get impressive performance improvements in future releases. Still, PHP performs well (and is light on server resources: see point 4), which makes it a solid contender for your next development project.

3.It’s easier to involve new developers in PHP + Symfony2 projects.

PHP and Ruby both have accompanying web development frameworks. With Ruby, the preeminent framework is called Rails (thus, “Ruby on Rails”). PHP has a number of popular development frameworks, including Zend, Yii, Laravel, and Symfony2. Here at Altumcore Technologies (when working in PHP) we’re partial to Symfony2.

Because Symfony2 lets you use just one component or a few components – but do not necessitate using the whole framework – it is easier for a new developer to get involved in a project. Instead of needing to learn an entire framework from day one, they can focus exclusively on one component at a time. Step by step, a developer may cover the features of Symfony2 faster than Rails.

On the other hand – assuming you already know the Rails framework – it is likely faster to develop in Rails; components are more tightly integrated. For this reason, Ruby on Rails is often used for prototyping projects, or for early versions of projects that may even eventually be re-written and deployed in the PHP programming language.

  1. Symfony2 requires fewer server-side resources.

Symfony2 is lighter than Rails on server resources. This is great for businesses, potentially meaning lower web hosting costs for the same performance. Perhaps more significantly, PHP (the language that powers Symfony2) is supported on virtually all web hosts, giving you plenty of hosting options to meet your exact business requirements. Symfony2 also scales well. If your site’s popularity booms, it’s pretty easy to add more server capacity to meet that demand.

  1. Symfony2 has better quality control, and offers LTS releases.

“Enterprise” editions and Long Term Support (LTS) releases are a big deal when software is business-critical. Symfony2 offers LTS releases. Rails do not.

Symfony2 is open source, though functionality is developed and tested primarily by SensioLabs, a French-based PHP development company. Many open source developers also contribute to the Symfony project, and SensioLabs performs a lot of testing and checks commits from open source contributors. All told, this means that Symfony has better quality control than Rails. Most features of Rails are open source contributions, and are not checked by any ‘higher’ authority.

Note: SensioLabs also offers valuable training and certification opportunities for Symfony2. No precise analogue is available for Rails.

“Starting from the principle that ‘an undocumented line is a line that does not exist,’ you will also find many works dedicated to Symfony2, which will help you throughout the development of your sites and applications.”

Symfony2 supports several versions of PHP; as of January 2016, it supports PHP version 5.5.9 or later (released February 2014). This means that the current version of Symfony2 supports any version of PHP that has been released in the last two years. Rails 4.25, the current stable release, ‘prefers’ Ruby version 2.0 or later (released February 2013). Thus, both Symfony2 and Rails offer support for language versions going back at least two years. However, it is worth noting that Ruby has seen fewer major updates over the past few years than PHP has.

Final Considerations

  • Rails is not optimal for fast growth, but is well-suited for prototyping.
  • Symfony2 is a stable and capable framework for long-term projects.
  • Symfony2 offers professional – and thorough – training and certification options.
  • Symfony2 has a components system, so you can use just one component in a project; you don’t have to use the entire framework.

Conclusion

Ruby on Rails and PHP plus Symfony2 offer approximately the same functionality. That said, PHP with Symfony2 may be a bit faster, easier to support, lighter on server resources, and more backwards compatible than Ruby on Rails. **Most significantly, at present it is likely cheaper to develop functionality in PHP with Symfony2 than it is to develop the same functionality in Ruby on Rails. **Ultimately, Ruby on Rails and PHP with Symfony2 are only tools. They both serve certain purposes well. Which you choose for your project will depend on your particular needs, your team’s expertise, and your budget.