Pádraic Brady

PHP, Zend Framework and Other Crazy Stuff

The Art Of Deception Or Publishing PHP6 Books

Jun 24th

Posted by Pádraic Brady in PHP General

View Comments

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
cd php-6.0.0

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
available.

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.

irishisms, php general, php security

Volunteer Translators For Zend Framework: Surviving The Deep End Wanted

Jun 22nd

Posted by Pádraic Brady in PHP General

View Comments

On the back of accepting three Technical Reviewers and Proofreaders (to keep me looking brilliant if a bit brainless over deadlines :P ), 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 ;) .

php general, php security, surviving the deep end, zend framework
« First...1020«2930313233»405060...Last »
  • Recent Activity

    • Publishing Security Disclosures In Consumable Formats For Simpler Aggregation and Security Checking
    • 20 Point List For Preventing Cross-Site Scripting In PHP
    • Mockery 0.8.0 Has Been Unleashed!
    • Predicting Random Numbers In PHP – It’s Easier Than You Think!
    • Getting Ahead In Security By Watching The Neighbours
  • My latest tweets

    Loading tweets...
    Follow me on Twitter!
  • Recent Comments

    • fotki.com on Doing that thing called PEAR: Packaging Source Code for PEAR Distribution
    • Highly recommended Internet page on To PEAR or not to PEAR? And how to PEAR anyway?
    • watch free movies online on Publishing Security Disclosures In Consumable Formats For Simpler Aggregation and Security Checking
    • Jacquelyn on Publishing Security Disclosures In Consumable Formats For Simpler Aggregation and Security Checking
    • Priya on 20 Point List For Preventing Cross-Site Scripting In PHP
  • Calender

    May 2013
    M T W T F S S
    « Apr    
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported
    This work by Pádraic Brady is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported.
  • Tags

    application security article astrum futura atom bdd behavior-driven development behaviour-driven development book Cross-Site Scripting dependency injection design patterns htmlpurifier irishisms maugrim mockery mock objects mutation testing mvc oauth openid openid and yadis pc gaming pear php php game development php general phpmock php security phpspec phpunit qgl quantum star se rantings rss surviving the deep end tdd tutorial unit testing xp programming xss yadis yaml zend framework zf proposal zfstde
  • Categories

    • Astrum Futura
    • Irishisms
    • Openid and Yadis
    • PC Gaming
    • PHP Game Development
    • PHP General
    • PHP Security
    • Quantum Star SE
    • Zend Framework
  • Archives

    • May 2013
    • April 2013
    • March 2013
    • January 2013
    • October 2012
    • September 2012
    • August 2012
    • June 2012
    • April 2012
    • March 2012
    • January 2012
    • October 2011
    • August 2011
    • July 2011
    • June 2011
    • May 2011
    • April 2011
    • March 2011
    • February 2011
    • October 2010
    • September 2010
    • August 2010
    • July 2010
    • June 2010
    • May 2010
    • February 2010
    • October 2009
    • September 2009
    • August 2009
    • July 2009
    • June 2009
    • April 2009
    • March 2009
    • February 2009
    • January 2009
    • December 2008
    • November 2008
    • October 2008
    • May 2008
    • April 2008
    • March 2008
    • February 2008
    • January 2008
    • December 2007
    • November 2007
    • October 2007
    • September 2007
    • July 2007
    • June 2007
    • May 2007
    • April 2007
    • March 2007
    • February 2007
    • January 2007
    • December 2006
    • November 2006
    • October 2006
    • September 2006
    • August 2006
    • July 2006
    • June 2006
    • May 2006
    • April 2006
    • March 2006
    • February 2006
    • January 2006
    • December 2005
    • November 2005
    • October 2005
    • September 2005
    • August 2005
    • June 2005
    • May 2005
    • April 2005
    • March 2005
    • February 2005
    • January 2005
    • November 2004
    • October 2004
    • September 2004
    • July 2004
    • June 2004
    • May 2004
  • Meta

    • Log in
    • Entries RSS
    • Comments RSS
    • WordPress.org
Mystique theme by digitalnature | Powered by WordPress
RSS Feeds XHTML 1.1 Top
Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported
This work by Pádraic Brady is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported.