I was strolling around a bookstore today, Easons on O’Connell Street here in Dublin, when I found myself staring at a bookshelf in near shock. Kid, I thought, you’ve been out of the loop for only two months and somehow those crazy people have managed to release PHP 6 right under your nose! I took several deep breaths not quite sure how to react. I moved closer and pulled out the shiny red book published by Wrox titled “Professional PHP 6″ and prepared to kick myself silly for the next week learning PHP6 (not from the book, which while shiny is of little use to someone using PHP so often it’s hardwired into your brain).
The more I stared at the three youthful faces grinning at me from the cover, the more I convinced myself this was a publishing error. No way was PHP6 going to be released without me noticing. Google Reader would have been on fire with that news. So what the hell was I looking at?
I was apparently looking at a big fat lie.
PHP6 has been the long standing grail for PHP developers who whisper in corners about its major feature: Unicode! Unicode makes the planet revolve, well its literary parts anyhow… Out on the edges were numerous other features, but most of those have been rolled into PHP 5.3 – which should be released next Tuesday. PHP 5.3…next Tuesday. And here we have books titled PHP6…what a joke. PHP6 won’t see so much as an alpha release for months…could even be years for all I know. It will be ready when it’s ready.
My biggest question of course was how can publishers escape punishment for such obvious silliness? Maybe someone can explain it in the comments because I’m at a loss. I figured there was some justification in that PHP6 would undoubtedly support some backwards compatibility with PHP 5, and therefore you could learn a great deal of PHP 6, simply by learning PHP 5. After all, both are PHP. Or perhaps it’s all the disclaimers technical books can include to escape responsibility if the information in the book is wrong. This might be sufficient to get around the laws of any number of countries, like Ireland, but I don’t consider it honesty. In my opinion it’s blatantly obvious that the PHP6 references used in book titles are little more than an attempt to differentiate these books from their competitors and earlier editions. Enough to fool a lot of consumers that buying the PHP6 book must be better than buying the perfectly up to date PHP5 book sitting in the bargain bin or available secondhand from Amazon. We are in a recession afterall and who banked on PHP 5.3 dropping a bombshell on plans for PHP6 books to spark a buying spree from developers?
Now, even I admit my outrage can be exaggerated. So I did go and pick up a few sample books using PHP6 in their title out of curiousity. Flicking through the pages I quickly noted how many of them avoided the PHP6 topic like the plague by omitting obvious things you’d expect to see. Unfortunately I also found a few notable slips which had me in stitches. Installation instructions and version listings are the most telling
The Wrox Programmer To Programmer series includes the far fetched title “Beginning PHP6, Apache, MySQL Web Development” (Timothy Boronczyk, Elizabeth Naramore, Jason Gerner, Yann Le Scouarnec, Jeremy Stolz, Michael K. Glass). The installation instructions for Linux state:
6. Extract the tarball, and change to the directory it creates:
tar -vxzf php-6.0.0.tar.gz
Number 3 earlier on the same list states:
3. Scroll down to the Complete Source Code section, and click on the appropriate link to download
the latest tar.gz package.
Perhaps someone didn’t notice that the download here (as of today) according to php.net is PHP 5.2.10? Not PHP 6.0.0.
Earlier the same book states:
The most recent stable versions that were in effect at the time of this book’s writing were:
PHP: Version 6.0.0
Apache: Version 2.2.9
MySQL: Version 5.0.67
Future editions of this book will address changes and improvements in these programs as they become
Again, the non-existent PHP 6.0.0 makes an appearance clearly noted as being a “stable version”. Of course, this is complete bollocks. The rest of the book seems pretty clearcut. It doesn’t mention PHP 6 anywhere else except in two Chapter titles according to its index. PHP 5.3 is mentioned once in a brief description of namespaces. Everything else is PHP…drumroll…5. This book teaches you PHP5 and only PHP5. Look on the bright side – the Wrox website and Amazon page suggests the title should have included MySQL 6… All they needed was the equally mystical appearance of Apache 6 to get the conspiracy theorists worked up into a fever pouring through the Book Of Revelations. Anyone want the movie rights to that idea?
After flipping through other PHP6 titled books (it’s not like Wrox and Wiley Publishing are alone), I arrive at the same conclusion – they are PHP 5.2 books. It’s laughable to even think they cover PHP 5.3 let alone PHP 6! All they have are a few obvious references to PHP 6.0.0 which at best are a mistake (maybe the titles are a mistake too?), and at worst a deliberate misleading lie. A few statements I noted might escape stupidity if the author could prove they ran a PHP 6 snapshot from CVS. To be honest I feel sorry for all the authors involved – it’s their name hanging on the front cover too and this might speak an awful lot as to the power a publisher can exert over an author’s work depending on their contract.
Shame on all publishers guilty of this silliness. To anyone in the market for a PHP book, stick to the bargain bins and second hand stores until a genuine PHP 5.3 book is released (that actually covers PHP 5.3′s new features mind!). The real PHP6 books are probably years away but PHP 5.3 looks to be a great release with plenty of new features..next Tuesday!
In the meantime I’ll be feeling pity for the poor sods who will buy these fake PHP 6 books second hand when PHP 6.0.0 sees a stable release.
On the back of accepting three Technical Reviewers and Proofreaders (to keep me looking brilliant if a bit brainless over deadlines ), I am also putting out a request for volunteer translators. If are up to the task of translating a free online book in the process of writing (this will be a long term commitment), please drop me a line by email (padraic dot brady at yahoo dot com) or twitter (padraicb).
Applicants should be reasonably familiar with the base language of the book – English. While the book is formatted as Docbook XML, no experience with Docbook is necessary and I have absolutely no problem with using a visual editor (I always use one myself).
Prior experience with technical translations is an advantage but not a requirement. So is being able to follow my convoluted writing style . The translator team will be notified of their successful addition to the Survive The Deep End Team on Wednesday.
On a more cautious note, since my return I have been pointed to several places where “Zend Framework: Surviving The Deep End” has been either published in whole in English or another language. Redistribution in English is entirely legal and permissable (knock yourself out) once you attribute the work back to me, and do not use it for a commercial purpose and, most importantly, don’t alter it, however redistribution in another language is illegal and counter to the Creative Commons license I selected for the book which clearly states “You may not alter, transform, or build upon this work.” While I am aware people can get carried away in trying to help out their non-English speaking countrymen, I would suggest existing external translators consider bringing their translations into the fold where it can be hosted here (and where it ultimately validates your own distribution under the license). From next week I will be extremely proactive in tracking down license violations and seeking their immediate removal. Either that or I send someone who knows how to use a hurley .