Last Sunday I decided it was time to organize a little bit my bookshelf. And there it was, a book I’ve completely forgotten about (I can’t remember why I bought it!): PHP 6 – Fast and easy web development.
The book was published in January, 2008. More than six years later, the latest PHP version is still 5.5 5.6 (it was 5.5 at the moment of writing the post but PHP 5.6 has just been released, which, in fact, makes the situation even worse). Apart from the fact that, clearly, the book authors are marketing genius (many people, not familiar enough with the evolution of PHP, would still buy the book today believing it had just been written), this also says something about the evolution of PHP.
According to Wikipedia, PHP 5.0 was released in 2005. PHP 6 was supposed to add quite a few nice features to PHP 5, specially the integration of Unicode support but this later part failed and it was decided to port back some of the other “PHP 6” features to PHP 5. And 9 years later we’re still there (I mean, with PHP 5). Yes, things seem to have speeded up as of the late with the PHPNG (PHP Next Generation) performance improvements supposed to become the foundation (together with other syntax improvements) of PHP 7 (they are skipping PHP 6 to avoid confusion with, for instance, my book) and other initiatives like HHVM (just in time compilation for PHP).
Still, given the huge importance of PHP (remember that WordPress, which itself powers 23% of all Internet sites, is mostly written in PHP), I think we should have seen a much more continuous progress of the language. I’m not knowledgeable enough about the PHP community to explain why is that but my feeling does not seem to be shared by most hosting companies that, to avoid compatiblity problems, prefer to stick to old versions of PHP (including versions which are, or going to be soon, not supported anymore).
This, in turn, forces software like WordPress to not update their minimum requirements (currently PHP 5.2.4) in a kind of chicken and egg problem. The result, more than 20M of people (only counting WordPress users) running their sites on outdated, and potentially insecure PHP versions. If you have some time, take a look at the two discussions around these tweets (note the date difference between the two), helps to get more context on the complexity of the situation.
PHP is dropping support for 5.3 in March. Meanwhile, 65% of WordPress sites still run 5.2 [sic]. Hate to say it, but feels so out of touch.
— Andrew Nacin (@nacin) December 20, 2012
Sad state of PHP: my guess from nearly two years ago wasn't close. 5.2 is still at 39% and falling very slowly. https://t.co/c4ffOZyx7D
— Andrew Nacin (@nacin) August 6, 2014
And, in the meantime, anyone interested in buying my PHP 6 book? It’s in pristine condition!
UPDATE: You may want to take a look as well to the reddit discussion on this post (>650 comments)
FNR Pearl Chair. Head of the Software Engineering RDI Unit at LIST. Affiliate Professor at University of Luxembourg. More about me.
The timing is a bit unfortunate. PHP 5.6 has now been released. http://php.net/archive/2014.php#id2014-08-28-1 It makes the points toward the end of the article about PHP 5.2 even sadder.
Yes, as you say, it makes things even worse for all the SW still running with PHP 5.2 !
Here some details about the naming and the history: https://wiki.php.net/rfc/php6
This is why Django is a thing…
People need to give up on PHP and write more python is my opinion.
So your gripe is that the version number hasn’t been changed in the way someone who wrote a book about PHP in 2008 imagined it might change? Or that a bunch of nice-to-have-features did not materialize in the real world.
Come on, the language has progressed wonderfully since 2008 but, perhaps, not the way one author or even the language authors envisaged. Are you doing in 2014 what you imagined you might be doing in 2008? If you are, that’s either a testimony to your excellent foresight or an indictment of you life.
Sadly for the PHP crew they provided a tool to get the job well before the 5.x series so it’s hard for many to justify the commitment and expense of testing just to change PHP. Geeks who love to tinker will always be up to date but most have better things to do and if it ain’t demonstrably broke…
sigh, in 2003, I read a book titled “Perl 6 essentials”. Eleven years later, Perl version is still 5.20.
I am not sure I understand whether the industry at large wants their favourite target platform to freeze and stand still, or to fast-forward rapidly.
In any case, I’d strongly suggest we all take control on such velocity concerns, and just Model-Drive towards each own’s favorite target version, at each own’s business’ and organization’s speed. Because we are reading this in Modeling-Languages.com I’d like to believe we are not ill prepared for the endeavor.