<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">

<channel>
	<title>Pádraic Brady &#187; Irishisms</title>
	<atom:link href="http://blog.astrumfutura.com/category/Irishisms/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.astrumfutura.com</link>
	<description>PHP, Zend Framework and Other Crazy Stuff</description>
	<lastBuildDate>Thu, 12 Apr 2012 17:33:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><creativeCommons:license>http://creativecommons.org/licenses/by-nc-nd/3.0/</creativeCommons:license>		<item>
		<title>PHP: Innocent Villagefolk or a Pillagin&#8217; Pirate?</title>
		<link>http://blog.astrumfutura.com/2012/04/php-innocent-villagefolk-or-a-pillagin-pirate/</link>
		<comments>http://blog.astrumfutura.com/2012/04/php-innocent-villagefolk-or-a-pillagin-pirate/#comments</comments>
		<pubDate>Thu, 12 Apr 2012 15:28:29 +0000</pubDate>
		<dc:creator>padraic</dc:creator>
				<category><![CDATA[Irishisms]]></category>
		<category><![CDATA[PHP General]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=738</guid>
		<description><![CDATA[This is a train of thought article (i.e. it may make sense…or not). You&#8217;ve been warned in advance. The CL;DR will be posted to Twitter when Hell freezes over, pigs fly, and Hollywood makes an ensemble casted DC Universe movie. This is what happens when you have a laptop, an editor, a train ride home,]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2012%2F04%2Fphp-innocent-villagefolk-or-a-pillagin-pirate%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2012%2F04%2Fphp-innocent-villagefolk-or-a-pillagin-pirate%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=php&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<div class="mceTemp">
<dl class="wp-caption alignright zemanta-img" style="width: 220px;">
<dt class="wp-caption-dt"><a href="http://commons.wikipedia.org/wiki/File:Piratey%2C_vector_version.svg" target="_blank"><img class="zemanta-img-inserted zemanta-img-configured " title="A stereotypical caricature of a pirate." src="http://upload.wikimedia.org/wikipedia/commons/thumb/7/71/Piratey%2C_vector_version.svg/300px-Piratey%2C_vector_version.svg.png" alt="A stereotypical caricature of a pirate." width="210" height="272" /></a></dt>
</dl>
</div>
<p>This is a train of thought article (i.e. it may make sense…or not). You&#8217;ve been warned in advance. The CL;DR will be posted to Twitter when Hell freezes over, pigs fly, and Hollywood makes an ensemble casted DC Universe movie. This is what happens when you have a laptop, an editor, a train ride home, and have just realised that the wifi connection is not working.</p>
<p>In PHP, we&#8217;re well insulated from what happens in other programming languages. This is not by accident &#8211; mentioning PHP while among a crowd of Java, Ruby, Python or Perl programmers is liable to result in a heated argument, several fistfights and one dead PHP programmer. Death by mobbing is not a pretty way to go. I&#8217;m sure a few of us have been there &#8211; at a web conference where people dismiss PHP out of hand as a kiddie toy for the weak minded and demented. When everyone around you starts nodding, remember to make yourself as inconspicuous as possible and request armed backup from the <a href="http://www.phpusergroups.org">local PUG</a>.</p>
<p>Of course, PHP programmers all know that the other programming languages are just jealous &#8211; PHP has no true OOP model, it&#8217;s ugly as sin, can&#8217;t figure out which parameter order is right, and is several years behind the curve in adopting best practices but the damn thing remains extremely popular, keeps getting faster, has the best reference manual ever invented, more frameworks than grains of sand on a beach, and in recent years has become a hotbed of innovative libraries now that PEAR and its messy aftermath have been displaced by Github. It&#8217;s sickening.</p>
<p>I often wonder why that is. I could go with the usual arguments &#8211; PHP is easy to learn, very effective, yada yada yada. Those are the boring reasons we try very hard to believe in. Ruby is easy to learn, very effective, and has even more yadas to go around. It&#8217;s still sitting at 11 on <a href="http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html">the Tiobe Index</a> to PHP&#8217;s 6.</p>
<p>What&#8217;s fascinating about some programming languages is their reaction to and life after maturity. PHP is an immature programming language which pretends to be mature (to earn Enterprise cookies) but otherwise couldn&#8217;t give a toss. I don&#8217;t mean that in a bad sense. PHP continues to exude a sense of adventure as it playfully steals ideas left, right and center from its peers. Most of our foremost advances are &#8220;borrowed&#8221; years after their adoption elsewhere. What PHP excels at is tireless consumption. Marathon races make one hungry and we can&#8217;t help but notice the feasts being exposed by Rubyland or Pythonville as they do their best to sprint past us. Without that thieving spirit, PHP would long since have entered obscurity as a quaint HTML oriented scripting language used by college students to build cheap websites with flashing text and under construction GIFs.</p>
<p>To me, PHP is a rogue. If we were playing an RPG, PHP would have pointy ears, a cloak, a couple of daggers and as many lockpicks as it could fit in its inventory (leaving sufficient room for liberated loot, of course). Ruby will never see us coming…our sneak skill is epic. PHP figured out how to keep the W key depressed while crouched in a corner in Elder Scrolls: Morrowind before the game was even designed.</p>
<p>I&#8217;m sure this comes across as being a bit humourous, but is it? Sometimes when I hear about PHP being innovative I almost crack up on the spot from disbelief. As PHP developers we&#8217;re not often (as in never) in the limelight generating new programming paradigms and practices &#8211; we&#8217;re most likely to be found connecting the dots between PHP and some novel idea we stumbled across elsewhere. Our strength lies in our ability to connect the dots several hundred times over to the point where the best dot connector gains a critical mass of adoption and we get something like Doctrine, or <a href="http://getcomposer.org/">Composer</a>, or PHP&#8217;s new Traits, or whichever of the zillion popular frameworks you prefer that are desperately trying to eke any form of differentiation from MVC (up to and including liberal interpretations of its definition).</p>
<p>It&#8217;s a process that works for the simple reason that PHP programmers are immature gits. We love paddling in other programming languages, we love to reinvent the wheel and brag about it, we love to overstate our personal preferences&#8217; importance, and we love ignoring best practices and fighting for the bad ones. There&#8217;s a weird benefit to our craziness &#8211; trying to get any two PHP programmers to agree to anything is doomed to fail but it promotes competition very well. We&#8217;ll write a million versions of anything that isn&#8217;t nailed down or too boring to behold while Ruby developers console each other over their One True Way consuming the Last Hope of Mankind (Rails ate <a class="zem_slink" title="Merb" rel="homepage" href="http://www.merbivore.com/" target="_blank">Merb</a> and suffered from chronic indigestion &#8211; a true but very sad story).</p>
<p>What we really need is a new PHP motto. Something deep and meaningful that exposes PHP&#8217;s true nature. I was thinking &#8220;Rob &#8216;em blind, matie!&#8221; would be a good one but I remembered that we need to cater for the Enterprise audience. Suggestions welcome.</p>
<p>In the meantime, as we struggle with our identity and stay one step ahead of the city guards who have it in for wanted thieves (tends to happen in all Elder Scroll titles), we should be preparing for our next mark: <a href="http://nodejs.org/">node.js</a>. It claims to be non-blocking. This is excellent, we can get in close with our daggers without any pesky shields getting in the way.</p>
<p>Ruby is terrified by node.js because node.js is the new hotness. Rails 4.0, which is in beta, is the second version of that framework showing fatally unstylish signs of becoming a mature platform for application development. It even demonstrates a use of design patterns. The bastards. There&#8217;s only so much the fashionistas can take before they jump ship to the next immature poorly designed piece of crud needing a massive influx of early adopters to beat it into a usable form over the next semi-decade. I&#8217;m being overly harsh &#8211; it&#8217;s not poorly designed, I&#8217;m sure stuff like database reads, and filesystem ops can be made non-blocking. Somehow. Pixie dust? Reality distortion field usurped from the bones of Steve Jobs? It sounds like it will be something valuable and very very shiny.</p>
<p>PHP is also terrified of node.js &#8211; in the sense that we know its name and think it has something to do with Javascript. Now that it has joined the race and is sprinting far behind us towards the finish line, we can look forward to years of replicating its best features which is in no way to say that we will stab it though the heart in an alleyway and strip it of valuables. You can&#8217;t literally do that with a programming language afterall. Pity.</p>
<p>So my brothers and sisters, embrace your inner pirate and revel in it. Now, anyone know if there&#8217;s anything worth stealing from <a href="http://en.wikipedia.org/wiki/Lego_Mindstorms_NXT#NXT-G">NXT-G</a>? It managed to sneak into 20th position on the Tiobe index up from 56th. I want its shiny stuff.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Enhanced by Zemanta" href="http://www.zemanta.com/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/zemified_e.png?x-id=8e86b4f9-9304-4cdb-95c0-ee47a31d0e7a" alt="Enhanced by Zemanta" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2012/04/php-innocent-villagefolk-or-a-pillagin-pirate/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Unapologetic To The End? I think Zend_OpenId hates me&#8230; Hates it back!</title>
		<link>http://blog.astrumfutura.com/2009/07/unapologetic-to-the-end-i-think-zend_openid-hates-me-hates-it-back/</link>
		<comments>http://blog.astrumfutura.com/2009/07/unapologetic-to-the-end-i-think-zend_openid-hates-me-hates-it-back/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 00:50:06 +0000</pubDate>
		<dc:creator>Pádraic Brady</dc:creator>
				<category><![CDATA[Irishisms]]></category>
		<category><![CDATA[PHP General]]></category>
		<category><![CDATA[PHP Security]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[irishisms]]></category>
		<category><![CDATA[php general]]></category>
		<category><![CDATA[php security]]></category>
		<category><![CDATA[rantings]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=402</guid>
		<description><![CDATA[Disclaimer: The following is obviously a spur of the moment tirade of sarcastic commentary and lots of (probably bad) humour. A lot of it refers to events from two years ago (that&#8217;s around ZF 0.8!). Ancient history . Mostly. In any case, I have to rant about something once a year related to the Zend]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F07%2Funapologetic-to-the-end-i-think-zend_openid-hates-me-hates-it-back%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F07%2Funapologetic-to-the-end-i-think-zend_openid-hates-me-hates-it-back%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=irishisms,php+general,php+security,rantings,zend+framework&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Disclaimer: The following is obviously a spur of the moment tirade of sarcastic commentary and lots of (probably bad) humour. A lot of it refers to events from two years ago (that&#8217;s around ZF 0.8!). Ancient history <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Mostly. In any case, I have to rant about something once a year related to the Zend Framework. It&#8217;s traditional. Park any attempt to take this too seriously at the door. I get a bit dramatic at times&#8230;</p>
<p>In certain places, I do sometimes get a reputation of being a crazy person. Usually it happens shortly after I find myself going down a road that leads somewhere truly undesireable (or when I throw in a weird blog post like this one). I had one of those moments today that served as a flashback to such a point in time from 2007. It&#8217;s not the first time, but it will be the last since I&#8217;ll ignore it completely from now on. Believe it or not, I do get a bit upset at myself when I let these times get to me. They are completely unimportant and silly &#8211; but when I have to relive them I will react in a pretty irritated fashion (ed: that should be kneejerk incendiary fashion).</p>
<p>This one started in 2007, right about the time I was first starting to write proposals for the Zend Framework. I felt pretty great at the time. I had lots of ideas, plenty of motivation, and then it all seemed to go downhill from there. The turning point was in June 2007, when after three months of work I felt I had enough done to propose OpenID support for the framework. Obviously a worthy cause, and also one which shouldn&#8217;t cause much grief since the ZF keeps advertising its wicked web service support. Before long, that boat was scuttled with news that Zend itself had been working on just such a proposal. Okay, that was disappointing. Zend had somehow managed to completely miss a three month effort on OpenID. Just another day on the farm. Next step? Collaborate? So I waited a few days and Zend&#8217;s code for what would become Zend_OpenId appeared in my inbox. Let the review commence! Okay, that ended a bit abruptly&#8230;it&#8217;s a bit short. Almost like it&#8217;s missing stuff and was written in a handful of days as a prototype. Talking went on and off for a while, and eventually my interest in collaborating petered out. Like any open source contributor, I participate to scratch an itch. My OpenID itch was well and truly scratched by now with my own source code, and continuing to throw time at another OpenID solution based on a different paradigm with a different ideology, little of which I agreed with, when I already had one functional was pretty pointless compared to something that still needed scratching like the Zend_View Enhanced proposal (and I really needed that shepherded through). So Zend_OpenId continued without my assistance, with something for Yadis persisting in the Incubator as an orphaned proposal. It still persists waiting that one final patch and call to the trunk&#8230; One day&#8230;</p>
<p>This all sounds reasonable and a bit dry, but in reality I found it all intolerable. A self-professed OpenID expert who is a member of an OpenID Foundation decides to add OpenID support to the Zend Framework after working on it for three months and who has actual code to prove it, is then told about the other proposal which just happens to be coming at the same time, and has code&#8230;of course. Well, a bit of code. If I were a real nut&#8230;I&#8217;d have a field day. Collaborate? I&#8217;d already finished this twice. I&#8217;m supposed to go for round three? Yeah, I admit, I was getting pissed off very quickly back then. I was close to constructing an elaborate conspiracy between Zend, George W. Bush and the Illuminati (how could you NOT have the Illuminati <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ). What was nagging me from the start was the obvious &#8211; I should have told someone to stuff that proposal somewhere and forged ahead with my own. Of course I didn&#8217;t. I was new, and had green stuff growing out of my ears, and it was Zend. The Zend. Silly me&#8230;</p>
<p>The summer of 2007 left me wishing the Zend Framework Proposal Process would shrivel, die and get gobbled down by Orcses (I was hoping for Gollum but he&#8217;s a hotshot movie star now). It remains the single worst open source experience I have had since I joined the open source gig in 1995. Not only was it discouraging, it was demoralising. There were points when I was driven to contemplate whether my input was even wanted. Which is probably why I remain so overly sensitive about it &#8211; I can understand the new guy is immediately suspect. But not like this. In September 2007 I finally wrote the blog post &#8220;<a href="http://blog.astrumfutura.com/archives/308-How-a-proposal-process-could-work-if-retaining-contributors-is-a-goal.html">How a proposal process could work &#8211; if retaining contributors is a goal</a>&#8221; out of frustration. As the title suggested, and others guessed, I was borderline on taking a hike from contributing. Some months later I gave some ground, and <a href="http://blog.astrumfutura.com/archives/339-Zend_Yaml;-Gone-the-way-of-the-Dodo....html">deleted Zend_Yaml as a proposal</a>. Waiting for a review, or challenging non-existent reviews, or noticing the distinct lack of communication between people gets tiresome eventually. I have a spectacular tendency to vanish for months on projects, but not a whole year. Also, using it as a condition when reviewing another proposal was just fucking stupid. After a few bouts of initial enthusiasm, Zend_Service_Yadis joined it for any worthwhile purpose. That is my fault of course &#8211; my motivation to finish a library already released on PEAR had simply evaporated. That scratch your itch thing again &#8211; it was scratched on PEAR already. By now Yadis had been in use for over a year in production in other forms, and Zend_OpenId wasn&#8217;t going anywhere.</p>
<p>Thankfully, since mid-2008, that horrible system seems to have mostly vanished for good. The change in topics may have helped too. Not many people have considered reimplementing Zend_Feed, and for a change, nobody had been busy on any secret OAuth components. It&#8217;s taken roughly a year, but these are finding themselves in the trunk and Incubator respectively and should see ZF 1.9 and ZF 1.10 in turn. Hurrah, I committed actual finished code for once&#8230;;). I&#8217;ve also dropped any pretense at applying Agile methods to proposals. When I propose something, it will have backing code, class skeletons and use cases (basically the entire integration test suite). It won&#8217;t be complete, but it will be sufficiently functional. Overall, I haven&#8217;t been irritated in months (well, before today).</p>
<p>But why, why does the whole Zend_OpenId episode still carry weight? It hit me today, when I was scanning my email and I spotted a note about some Zend Framework libraries showing their age and lack of maintenance. Perfectly normal for something the size of Zend Framework &#8211; code rot is persistent anywhere. It can be difficult to diagnose though unless you are a regular user or the maintainer, so I shot off a reply adding that the same applies to Zend_OpenId. It was only intended as a supportive example, something I&#8217;m personally familiar with since I&#8217;m the guy with &#8220;Zend Framework&#8221; and &#8220;OpenID Europe Foundation Representative&#8221; written all over their email signatures, so apparently this makes me an expert on the topic. I field a lot of questions about Zend_OpenId at times. As anyone using it knows, Zend_OpenId just doesn&#8217;t work at the moment depending on the Provider. It&#8217;s woefully outdated.</p>
<p>However, it appears that&#8230;I am the Zend_OpenId maintainer! Really? Huh? Wait a minute&#8230; WTF?</p>
<p>Que 2007 flashback&#8230; Que obligatory irritated kneejerk response disavowing all alleged responsibility for afore mentioned proposal I have never contributed any code to&#8230; </p>
<p>I know where this started. At some point in 2008 I did agree to look into OpenID 2.0 support. It was one of those goodwill moments, where you know you&#8217;ll get around to it&#8230;eventually&#8230;after A, B, C and probably D. And you really mean it too, until you&#8217;re dragged into someone&#8217;s office and told about E. Then the mysterious Z pops by for a few months with a couple of mates. Anyway&#8230;it never went further. No proposals, no code, no discussions, no nothing. I only vaguely remember the email even. I imagine I forgot about it within a week until I was reminded about it today, and am apparently being held to it by superglue and ISP records of the email (just joking about the ISP records). God help me. Why are you laughing? This is fucking serious!</p>
<p>Now, being the apparent Zend_OpenId maintainer and therefore responsible for all issues filed since Spring/Summer 2008&#8230;I resign, effective immediately. It&#8217;s bad for my heart, and my irritation levels. More so now that I know about it. Now that I have resigned, I can see something of the funny side. If I complain about Zend_OpenId &#8211; it really is all my fault. Even if I was unaware of it. Allegedly.</p>
<p>Seeing a funny side, and having the benefit of hindsight, I can recognise where it all went off the rails back in 2007. Back in 2007 I should have been more of an ass. Yessir, I should done a Hugh Laurie on someone! Instead I retreated into politeness, followed by disinterest. I should have done exactly what I did with Zend_View Enhanced &#8211; write the bloody thing to death in a multi-part monologue that would have directed my legion of rag wearing subjects (er&#8230;readers) to assault the edifice of Zend Technologies Inc. until they caved and decided proper OpenID support was popular enough to warrant some real attention, i.e. raise bloody murder. If nobody listens in private, then shout it from the rooftops. But I didn&#8217;t. And Zend_OpenId is broken. And the OpenID Community is all the poorer for it. So it really truly is all my fault. I wasn&#8217;t a big enough ass. I will try to endeavour to be a bigger asshole in the future. May god have mercy on all your souls.</p>
<p>Now that we&#8217;ve established blame, and didn&#8217;t even need svn to do it (since I&#8217;m not listed there&#8230;aha), can we update a few records? In the maintainer field, right on the table called Zend_OpenId, can we change that to NULL or &#8220;Zend&#8221; since they actually wrote it so presumably are responsible also for its maintenance? While we&#8217;re at it, can we make it a new rule that the ex-proposer of features later proposed by a completely different party, not be held responsible for the completely different party&#8217;s screwups? Thanks.</p>
<p>This years &#8220;Paddy Rants About Something In The Zend Framework You Couldn&#8217;t Care Less About&#8221; was brought to you by&#8230;well&#8230;me.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2009/07/unapologetic-to-the-end-i-think-zend_openid-hates-me-hates-it-back/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Wrox Press Respond to &#8220;The Art Of Deception Or Publishing PHP6 Books&#8221;</title>
		<link>http://blog.astrumfutura.com/2009/06/wrox-press-respond-to-the-art-of-deception-or-publishing-php6-books/</link>
		<comments>http://blog.astrumfutura.com/2009/06/wrox-press-respond-to-the-art-of-deception-or-publishing-php6-books/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 19:03:28 +0000</pubDate>
		<dc:creator>Pádraic Brady</dc:creator>
				<category><![CDATA[Irishisms]]></category>
		<category><![CDATA[PHP General]]></category>
		<category><![CDATA[PHP Security]]></category>
		<category><![CDATA[irishisms]]></category>
		<category><![CDATA[php general]]></category>
		<category><![CDATA[php security]]></category>
		<category><![CDATA[php6]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=399</guid>
		<description><![CDATA[I am such a torment. Cancelled negotiations with a publisher over disagreements on a book format? Check. Said no to taking down a free book startup and enter a publishing contract? Check. Lambasted multiple publishers for releasing PHP 6 books which do not teach anything PHP 6 specific? Check. Next month I expose which publishing]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F06%2Fwrox-press-respond-to-the-art-of-deception-or-publishing-php6-books%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F06%2Fwrox-press-respond-to-the-art-of-deception-or-publishing-php6-books%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=irishisms,php+general,php+security,php6&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I am such a torment. Cancelled negotiations with a publisher over disagreements on a book format? Check. Said no to taking down a free book startup and enter a publishing contract? Check. Lambasted multiple publishers for releasing PHP 6 books which do not teach anything PHP 6 specific? Check. Next month I expose which publishing companies are secretly building weapons of mass destruction in their basements. Reverse that, I can&#8217;t afford a libel suit&#8230;</p>
<p>In &#8220;<a href="http://blog.astrumfutura.com/archives/402-The-Art-Of-Deception-Or-Publishing-PHP6-Books.html" >The Art Of Deception Or Publishing PHP6 Books</a>&#8221; I aired my unflattering opinions about publishers who have been selling &#8220;PHP 6&#8243; books. PHP 6, last I checked, was a bit like Leprechauns (Hey, I&#8217;m Irish! The use is legal!). You love them, you have lots of ideas about what to expect from them &#8211; but has anyone every really seen one (other than my great uncle)? PHP 6 exists in CVS &#8211; it&#8217;s never had a release other than the usual CVS snapshots. It&#8217;s certainly not complete and stable, and its future feature list remains a bit flexible. You could see PHP 5.4 in 2011 before PHP 6 is finished&#8230;guessing here. As its developers would say &#8211; it&#8217;ll be ready when it&#8217;s ready. One day. Maybe.</p>
<p>In response to the blog post, Wrox Press picked up on the problem on Twitter via <a href="http://daveyshafik.com" >Davey Shafik</a> (<a href="http://twitter.com/dshafik" >@dshafik</a>). Everyone knows Davey. If you don&#8217;t, you must have been living under a rock, or a ruby, for a really long time. I have to say, Wrox responded in a wholly unpredicted way I have to admire. It&#8217;s not everyday you find yourself hiding in a cave in Antrim (it&#8217;s nice&#8230;a little damp though) after seeing something you wrote persuade a publisher to pull back a book destined for the printers, and work on fixing it so it deserves its title.</p>
<p>Here&#8217;s the full text of the comment posted to &#8220;The Art Of Deception&#8230;&#8221; earlier today by Jim Minatel (Associate Publisher &#8211; Wrox). Jim is mostly the person sitting behind <a href="http://twitter.com/wrox" >@wrox</a> over on Twitter where he&#8217;s been quite proactive in getting to the bottom of my PHP 6 Book complaints.</p>
<blockquote><p>Pádraic:</p>
<p>Thanks for taking the time to discuss this with me on Twitter last night. I’m the Associate Publisher for Wrox, I’m the person usually behind @wrox on twitter.</p>
<p>After meeting with the editor who ran the PHP list for us, you’re right. The titles of these PHP6 books, some of the references to PHP6 in the books, what isn’t covered in the books, all prove we made a mistake, something went wrong. But how, why?</p>
<p>Elizabeth (and thanks for her measured response) is correct in part of her assessment that books take a long time to write and publish. I’m sure that when the editor and authors started these books in Spring 2008, they’re thinking was that 6.0 would indeed be a stable release by early 2009 (if not sooner) and they were aiming for that. But clearly along the way we dropped the ball on checking references to things like the non-existent “6.0.0 stable.”</p>
<p>In the Beginning PHP6, MySQL, Apache book, I can actually understand the rationale not to cover Unicode there. Given that Unicode is primarily valuable to someone internationalizing a site or localizing it for multiple languages – topics that I wouldn’t consider “Beginning” level – I can see why it wasn’t covered. (Before becoming associate publisher, I was actually our ASP.NET editor for most of the last 5 years and we don’t for example cover internationalization/localization in our Beginning ASP.NET 3.5.) So we want to have a book that Beginning level customers understand will work with PHP6 if that’s the version they’re using, but we didn’t communicate right what that meant in this context where there weren’t major new v6 features at the level we thought a beginner would need.</p>
<p>The professional book stumps me more. It’s hard for me to understand how that book doesn’t have a chapter on Unicode. It looks like an oversight by everyone involved in the book.</p>
<p>So where do we go from here and get better than this to eventually prove we’re worthy of better than when @bicatu says “That reminds me why I&#8217;ve never bought a Wrox book?”</p>
<p>First, I’ve asked the team involved with Beginning PHP6 scheduled to ship to the printer this week to pull that book back, to read your post and the subsequent twitter discussion and to make sure we aren’t making the same mistake a third time. I want the author and editors to provide a level of confidence that the PHP6 features that should be covered are, that the discussion of the current state of PHP6 is accurate, and the that the title, subtitle, and marketing copy on the book and online accurately reflects what is and isn’t covered.</p>
<p>Second, publishing the right books depends on having the right team, including a large number of well placed community experts on the topics who serve as authors, freelance/contract technical editors. There’s always room for a team to improve, through learning and through recruiting. I hope this discussion helps our current team in PHP (and MySQL and LAMP in general) and I hope it helps us attract people like you who have ideas on what we can do better. I’d like to invite you and everyone who’s commented on this post so far (and I’ll post the invite on twitter too) to get involved. We’ve got a PHP Design Patterns book scheduled to publish in August (not specific to any version) I’d like to start by offering you all a preview of that. If you see any red flags, tell us. If you like it, if you see issues and help us make it better, at a minimum we’ll send you a free copy. If you get involved more extensively, you can discuss with the editor contract work. DM me in twitter with your email addresses if you want to get involved. Or email me at the address below.</p>
<p>Thanks for caring enough to get our attention. I promise, we’re listening.</p>
<p>Jim Minatel<br />
Associate Publisher – Wrox<br />
jminatel at w I l e y d o t c o m</p></blockquote>
<p>On a side note, Jim spelled my name correctly. Class. I called Jim, &#8220;John&#8221;, on Twitter. Fail.</p>
<p>Rather impressed with Wrox right now.</p>
<p>If I have a remaining concern it would be that with PHP 6 unreleased and in flux, it still seems dangerous to title books using that version number. The most current updated PHP version from next Tuesday will be PHP 5.3 which is itself a pretty giant leap over PHP 5.2. PHP 6 is conceivably years away &#8211; its release date isn&#8217;t set in stone (I don&#8217;t know if anyone has even estimated it recently).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2009/06/wrox-press-respond-to-the-art-of-deception-or-publishing-php6-books/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>It&#8217;s a bird, it&#8217;s a plane&#8230;no!&#8230;it&#8217;s some guy who vanished months ago!</title>
		<link>http://blog.astrumfutura.com/2009/06/its-a-bird-its-a-plane-no-its-some-guy-who-vanished-months-ago/</link>
		<comments>http://blog.astrumfutura.com/2009/06/its-a-bird-its-a-plane-no-its-some-guy-who-vanished-months-ago/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 11:55:14 +0000</pubDate>
		<dc:creator>Pádraic Brady</dc:creator>
				<category><![CDATA[Irishisms]]></category>
		<category><![CDATA[PHP General]]></category>
		<category><![CDATA[PHP Security]]></category>
		<category><![CDATA[irishisms]]></category>
		<category><![CDATA[php general]]></category>
		<category><![CDATA[php security]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=396</guid>
		<description><![CDATA[Long story short. I lost my job, had some medical issues, struck gold on a new contract, contract ended (with a nice bonus), need to find another contract in July, turned 30 (and got a tiny bit depressed that I can no longer validly refer to myself as &#8220;young&#8221;), lost more hair (I estimate the]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F06%2Fits-a-bird-its-a-plane-no-its-some-guy-who-vanished-months-ago%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F06%2Fits-a-bird-its-a-plane-no-its-some-guy-who-vanished-months-ago%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=irishisms,php+general,php+security,zend+framework&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Long story short. I lost my job, had some medical issues, struck gold on a new contract, contract ended (with a nice bonus), need to find another contract in July, turned 30 (and got a tiny bit depressed that I can no longer validly refer to myself as &#8220;young&#8221;), lost more hair (I estimate the total baldness effect to be a few years away), spent an hour convincing my dad that if his leg could hang at that angle I was calling the bloody ambulance no matter how many phobias he has about hospitals (he broke it in two places, got a massive plate put in, now complains about not being able to walk for a few months), played lots of Eve Online, discovered Empire: Total War ran for a maximum of 40mins before crashing (Asus MBs suck even if great to overclock), wrote three chapters in a semi-serious attempt to write a funny fantasy novel for fun, avoided being drunk for three months straight much to the horror of the locals (It&#8217;s a stereotype, but many Irish really do drink way too much), reinstalled Vista after the SP2 update fucked up, witnessed the return of a real Summer to Ireland for the first time in 3 years, realised that 3 years of little sun left me inexperienced with its effects and spent a week with both arms itching like crazy and covered in tiony blisters (stupid, stupid <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ), had my cat train me not to leave any windows open since he excels at unwanted infiltration, learned the redundancy toll at my previous employer was up to 15% of staff (happy I got out earlier), became reacquainted with the frequent headaches my sensitive eyes induce when exposed to the sun (I almost forgot it was up there for the past few years), &#8230;</p>
<p>Enough of that.</p>
<p>Being in a more stable point in this god awful recession, I&#8217;m edging back onto the PHP scene. My last post quickly became a total washout with my best intentions failing so miserably it was pathetic. What can I say? Recessions suck. Hospitals suck. Dads who break their legs every year especially suck (the leg breaking, not the person <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>
<p>To recapture some of my excitied and sorely disappointed readers, I&#8217;ll get those two ZF book chapters up shortly and get cracking on more. I&#8217;m actually on a few weeks of freedom so no excuses. If someone breaks a leg next week I may have a breakdown.</p>
<p>My profuse apologies for the misleading post in April &#8211; obviously since it&#8217;s now June it&#8217;s been a turbulant few months since it was posted.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2009/06/its-a-bird-its-a-plane-no-its-some-guy-who-vanished-months-ago/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Lack of updates&#8230;</title>
		<link>http://blog.astrumfutura.com/2009/04/lack-of-updates/</link>
		<comments>http://blog.astrumfutura.com/2009/04/lack-of-updates/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 15:34:44 +0000</pubDate>
		<dc:creator>Pádraic Brady</dc:creator>
				<category><![CDATA[Irishisms]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=394</guid>
		<description><![CDATA[Filling in the blanks over my absence . Effective from today, I am a free agent. Free of the binds of employment that is. Well, until I find another position&#8230; Welcome to redundancy&#8230;meh. On the flip side, it was expected pretty much as it happened and I get a surprisingly generous redundancy payment out of]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F04%2Flack-of-updates%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F04%2Flack-of-updates%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=php&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Filling in the blanks over my absence <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Effective from today, I am a free agent. Free of the binds of employment that is. Well, until I find another position&#8230; Welcome to redundancy&#8230;meh. On the flip side, it was expected pretty much as it happened and I get a surprisingly generous redundancy payment out of it &#8211; which was not expected but much appreciated. As for expectations, I preempted the whole redundancy thing since I saw it coming given the activity in the market. So I&#8217;m in an entirely unsurprising predicament I have planned for.</p>
<p>As I suggested in the past couple of months, I am scouting for new work but the slow economy which was probably just blown apart by the new Irish Budget (increase taxes since nobody at Government level is able to reduce costs effectively&#8230;bunch of worthless gits) only emphasised by the amount of money I saved buying some items across the border at the weekend (Ireland raises VAT, UK&#8230;decreases VAT&#8230;and Sterling rates are really good right now &#8211; hillarious) is just that &#8211; slow. Apparently a CV is now taking several weeks to reach the interview shortlist so it&#8217;s become a mind numbing exercise in patience. I&#8217;m quite patience, but I can&#8217;t avoid getting a bit bored with sitting at home and I&#8217;m not looking forward to it that much.</p>
<p>Nevertheless, my hopes are high that a good job is around the corner and I have been in discussions with some contacts, and my weirdly niche skillset (programmer, financial specialist, etc. with lots of nice abbreviations after my name) simply requires that I show a bit of patience until a suitable opportunity appears &#8211; which is inevitable since my niche area is actually fairly solid even in the midst of a depression. The redundancy was over other areas of the sector underperforming, and other people needing to&#8230;well&#8230;borrow my work to keep themselves busy. I don&#8217;t begrudge them &#8211; and I won&#8217;t be there to see the mess they have already started to create plugging my specialist role <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Playing the waiting game is something I&#8217;m good at &#8211; I have practically zero stress levels which is one part of my personality makeup I rather enjoy. Nervous at interviews? Piffle. Insecure in my abilities? Laughable. Hatez my job? I love my line of work &#8211; I&#8217;m good at it, I enjoy it, and I get paid extremely well for it.</p>
<p>But God, is job hunting slow this year! I&#8217;ve already heard of colleagues turning down jobs merely because the salary expectations have decreased so substantially. Some people just can&#8217;t take the hint to be more conservative in salary bases. Has nobody realised we are in a recession, and it&#8217;s time to accept a &#8220;hit&#8221; for a few years until the upswing (and our chances for career advancement) are improved? A stable job in a recession is not something to get all depressed and about because it pays 5k less than you expected &#8211; wake the fuck up! You&#8217;d swear the nation never had a recession before! I remember the 80s and 90s &#8211; especially the 80s since my Dad was seriously struggling in those days and it left an impression in my childhood memories.</p>
<p>In any case, this is why I&#8217;ve been largely offline the past few weeks &#8211; too busy wrapping up outstanding private projects, getting my CV nailed down, holding the usual pep talk meetings where recruiters swear blind to be your best friend (they are suffering too from the slow job market), working my contacts, and tracking down rumours of possible top-secret jobs not being openly advertised. I estimate at least a month until I am secured in a new office with a team of overly eager underlings (er&#8230;highly skilled professionals) to bend to my will (ahem&#8230;motivate, train and supervise). I could grab something short term, but I&#8217;d prefer to dig around for something and take a breather for a few weeks.</p>
<p>The downside is, obviously, weeks of freedom. I&#8217;m going to get pretty bored very fast, but should make more headway on the ZF book after this minor side adventure. Usually I&#8217;d scout around and grab a short term contract with a side dish of consulting, but I feel like enjoying my unemployed state for a few weeks to recharge and work up some enthusiasm for my next position. That I can afford to do so is frightening, but I have been lucky in that I escaped the equity market long before it seriously collapsed putting me in the weird position of waiting for the markets to recover so I can enter the market again and make a modest sum. I&#8217;m usually not egotistical (lies! lies!), but I saw it coming when the housing markets here in Ireland started to falter. Anyone curious can look at a graph of the ISEQ Index and fall down laughing at how it performed.</p>
<p>I think I fell off topic somewhere? Oh well, been a while since I blogged so endure the long post <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . If you feel like offering moral support, send a large ISK donation to &#8220;Maugrim McFiriba&#8221; in Eve Online &#8211; I&#8217;ll need more ships to pass the time in Eve I think <img src='http://blog.astrumfutura.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I&#8217;ve been enjoying the game for a while now, and it&#8217;s a nice diversion when the writing peters off and I&#8217;m not in the mood for relaxing with a good book.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2009/04/lack-of-updates/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Cowen Is My Shepherd&#8230;</title>
		<link>http://blog.astrumfutura.com/2009/03/cowen-is-my-shepherd/</link>
		<comments>http://blog.astrumfutura.com/2009/03/cowen-is-my-shepherd/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 14:38:43 +0000</pubDate>
		<dc:creator>Pádraic Brady</dc:creator>
				<category><![CDATA[Irishisms]]></category>

		<guid isPermaLink="false">http://blog.astrumfutura.com/?p=388</guid>
		<description><![CDATA[Disclaimer: This entry offers a personal political opinion on the current state of the economy of Ireland under the incompetent leadership of Brian Cowen and Brian Lenihan. Sourced from a post on politics.ie. COWEN IS MY SHEPHERD, I SHALL NOT WORK. HE LEADETH ME BESIDE STILL FACTORIES. HE RESTORETH MY FAITH IN THE FINE GAEL.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F03%2Fcowen-is-my-shepherd%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.astrumfutura.com%2F2009%2F03%2Fcowen-is-my-shepherd%2F&amp;source=padraicb&amp;style=normal&amp;service=bit.ly&amp;service_api=padraic%3AR_94101570b7e190f3de921bc15bb9438d&amp;hashtags=php&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><strong>Disclaimer:</strong> This entry offers a personal political opinion on the current state of the economy of Ireland under the incompetent leadership of Brian Cowen and Brian Lenihan. Sourced from a post on politics.ie.</p>
<blockquote><p>COWEN IS MY SHEPHERD, I SHALL NOT WORK.</p>
<p>HE LEADETH ME BESIDE STILL FACTORIES.</p>
<p>HE RESTORETH MY FAITH IN THE FINE GAEL.</p>
<p>HE GUIDETH ME TO THE PATH OF UNEMPLOYMENT.</p>
<p>YEA, THOUGH I WAIT FOR MY DOLE,</p>
<p>I OWN THE BANK THAT REFUSES ME.</p>
<p>COWEN HAS ANOINTED MY INCOME WITH TAXES,</p>
<p>MY EXPENSES RUNNETH OVER MY INCOME,</p>
<p>SURELY, POVERTY AND HARD LIVING WILL FOLLOW ME ALL THE  DAYS OF HIS<br />
TERM.</p>
<p>FROM HENCE FORTH WE WILL LIVE ALL THE DAYS  OF OUR LIVES IN A RENTED<br />
HOME WITH AN OVERSEAS LANDLORD.</p>
<p>I AM GLAD I AM IRISH,</p>
<p>I AM GLAD THAT I AM FREE.</p>
<p>BUT I WISH I WAS A DOG</p>
<p>AND COWEN WAS A TREE.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.astrumfutura.com/2009/03/cowen-is-my-shepherd/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

