Why Facebook is making a PHP renaissance
I'm gonna be honest, I care about servers.
This might have something to do with my playing around with Linux when I was a kid.
Not only was I familiar with package managers, compiling downgrading, upgrading, and do on, but I also liked to tinker around with the components that make a server.
When NodeJS came out it challenged PHP in many ways, but maybe most importantly - in performance. When PHP is almost always running on Apache (a huge piece of well written OS software), NodeJS is incredibly light & fast.
PHP suffers from what every mature piece of software (or a compiler) suffers - decades of feature creep, making it one of the most complete out of the box web languages out there. The cost is obvious.
In a performance comparison checking WordPress (on Apache) vs Ghost (on NginX), Ghost outperformed WordPress by nearly 7 times! If that doesn't make you think twice when choosing LAMP stack on a project with a heavy load, I don't know what will.
Luckily for PHP, it has one of the most (maybe the most) bandwidth demanding websites in the world - Facebook.
With its team of PHP geniuses, Facebook has been developing some major improvements to the language, and to the compiler bundled up and named HipHop Virtual Machine (use to be HipHop for PHP).
HHVM provides a JIT (Just In Time, which basically means that compilation is done during the execution) to speed up PHP programs.
Continuing the steps that Facebook is taking to make sure PHP stays strong and relevant, Sara Golemon (a genius engineer at Facebook) did a pretty huge step for the PHP world as a whole: she provided a much needed specification to the language.
These recent developments with HHVM have exploded all over hacker news , reddit, and sitepoint.
The performance of HHVM has been reviewed in a few articles, and it seems to have pushed the core developers of PHP, as the last versions have been showing major performance & memory usage improvements, shown in these articles:
- Proof that PHP 5.4 is Twice as Fast as PHP 5.3
- PHP Roadmap & Performance
- PHP 5.3 vs 5.4 vs 5.5: Speed and memory usage
Back in 2010 it really seemed that Ruby on Rails is going to take over as the most popular Web Development language, with it, new technologies (Django, NodeJS, etc.) were becoming more and more relevant, making PHP look a bit outdated with its age old issues and lack of standardization.
These recent changes (in the past year or so) are starting to prove that not only is PHP here to stay, it’s making a lot of catch up with newer technologies, which is great news for PHP developers.