<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Mon, 20 May 2013 08:28:51 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[PHP.net: PHP 5.5.0RC1 is available]]></title>
      <guid>http://www.phpdeveloper.org/news/19567</guid>
      <link>http://www.phpdeveloper.org/news/19567</link>
      <description><![CDATA[<p>
As is mentioned on <a href="http://php.net">PHP.net</a> today, the first release candidate for the PHP 5.5.x series, PHP 5.5.0RC1, <a href="http://php.net/index.php#id2013-05-09-2">has been released for testing</a>:
</p>
<blockquote>
The PHP development team announces the availability of the first release candidate of PHP 5.5. This release fixes some bugs as well as some possible leaks from our last beta. This is a development preview - do not use it in production!
</blockquote>
<p>
Some of the more major changes in this release include an update to the FPM SAPI for QUERY_STRING, a fix for a build issue with libgd, bugs in SNMP and a problem with stream_select on Windows x64 systems. You can find the full list of changes in the <a href="https://github.com/php/php-src/blob/php-5.5.0RC1/NEWS">NEWS</a> file. Please <a href="http://downloads.php.net/dsp">download and test</a> (Windows binaries <a href="http://windows.php.net/qa/">here</a>) this latest release to help the development team find issues and move along with the PHP 5.5.x releases.
</p>
Link: http://php.net/index.php#id2013-05-09-2]]></description>
      <pubDate>Thu, 09 May 2013 10:27:24 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Anthony Ferrara: Our Failure As An Industry]]></title>
      <guid>http://www.phpdeveloper.org/news/19554</guid>
      <link>http://www.phpdeveloper.org/news/19554</link>
      <description><![CDATA[<p>
<i>Anthony Ferrara</i> has a new post to his site today describing what he sees as a <a href="http://blog.ircmaxell.com/2013/05/our-failure-as-industry.html">failure in our industry</a> - letting security become an after-thought to the development process.
</p>
<blockquote>
In the April issue of the <a href="http://www.phparch.com/">PHPArch magazine</a> (also published on her blog), Elizabeth Tucker Long wrote a really interesting editorial piece coining a concept she called Security-Driven-Development. She (quite correctly) identified a problem in the current development community where security has become an after-thought (if it's thought of at all). This isn't a new concept, in fact it's a concept that I and many others have been preaching for quite a while now. However I've been coming to realize that I've had it wrong the whole time. And I think the entire industry is getting it wrong today.
</blockquote>
<p>
He talks some about the current state of web application development and how, even with more powerful technologies than ever, we still fall short in security testing. He suggests that the current way of doing things - treating security testing as a "throw it over the wall" or "someone else's job" problem - needs to stop. Security needs to be integrated with development and he suggests that managers and developers of open source projects should take the lead.
</p>
Link: http://www.lornajane.net/posts/2013/setting-multiple-headers-in-a-php-stream-context]]></description>
      <pubDate>Tue, 07 May 2013 09:19:34 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP.net: PHP 5.5 beta 4 is now available]]></title>
      <guid>http://www.phpdeveloper.org/news/19506</guid>
      <link>http://www.phpdeveloper.org/news/19506</link>
      <description><![CDATA[<p>
The PHP.net site has posted about the <a href="http://php.net/index.php#id2013-04-25-1">release of PHP 5.5 beta 4</a>, the last beta that will be made for this series.
</p>
<blockquote>
The PHP development team announces the release of the 4th beta of PHP 5.5.0. This release fixes some bugs against beta 3 and cleans up some features. This is a development preview - do not use it in production.
</blockquote>
<p>
Several bugs were fixed and changes made - you can read the complete list in <a href="https://github.com/php/php-src/blob/php-5.5.0beta4/NEWS">the NEWS file</a>. To get this latest beta and try it out with your applications (and run the tests) you can <a href="http://downloads.php.net/dsp">download it here</a> (<a href="http://windows.php.net/qa/">here for Windows</a>).
</p>
Link: http://php.net/index.php#id2013-04-25-1]]></description>
      <pubDate>Thu, 25 Apr 2013 09:15:34 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[QaFoo.com: Webinar: Behavior Driven Development with Behat]]></title>
      <guid>http://www.phpdeveloper.org/news/19473</guid>
      <link>http://www.phpdeveloper.org/news/19473</link>
      <description><![CDATA[<p>
The QaFoo folks have <a href="http://qafoo.com/blog/042_webinar_bdd_behat.html">posted information about a webinar</a> they're putting on for those interested in using Behat for doing functional testing on their applications:
</p>
<blockquote>
I've already written two blog posts here about Behat: <a href="http://qafoo.com/blog/036_behavior_driven_development.html">Behavior Driven Development</a> and <a href="http://qafoo.com/blog/040_code_coverage_with_behat.html">Code Coverage with Behat</a>. If that made you curious or you wanted to learn about Behat anyway, I can highly recommend to join the free <a href="https://www.zend.com/en/company/news/event/1246_webinar-behavior-driven-development-with-behat">webinar on Behavior Driven Development with Behat</a> I'll be giving on May 8th 2013 on behalf of Qafoo in cooperation with Zend.
</blockquote>
<p>
As mentioned, the webinar is free to attend, but you'll need to <a href="http://www.zend.com/webinar/register/?eventNumber=575435768">sign up</a> to be able to attend.
</p>
Link: http://qafoo.com/blog/042_webinar_bdd_behat.html]]></description>
      <pubDate>Wed, 17 Apr 2013 10:44:21 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Matt Setter: How Simplicity Leads to Greater: Productivity, Quality & Satisfaction]]></title>
      <guid>http://www.phpdeveloper.org/news/19465</guid>
      <link>http://www.phpdeveloper.org/news/19465</link>
      <description><![CDATA[<p>
<i>Matt Setter</i> has a <a href="http://www.maltblue.com/software-engineering-2/how-simplicity-leads-to-greater-productivity-quality-and-satisfaction">quick new post</a> that suggests a way you can get more done with less work - simplicity.
</p>
<blockquote>
Though we can do so many things simultaneously - should we? Does it actually reduce effectiveness and productivity which are the antithesis of professional application development? [...] I had the thought, as is common in a western-based mentality, that to be busy, to be industrious, to try and multi-task a series of independent tasks and projects simultaneously was the right thing to do. It's meant to be a simple formula: "Greater productivity = Greater self-worth right?" Sounds almost like <a href="http://en.wikipedia.org/wiki/Thatcherism">Thatcherism</a>. I felt that this was not only right, but the sign of an intelligent and sophisticated developer, who truly had honed his craft. Perhaps you've felt the same at one time or another?
</blockquote>
<p>
He points out that, while it's very easy for developers to fall into this trap and way of thinking, it's not sustainable. It leads to stress, bad code and even - possibly - an even higher bug count. Instead he suggests the good standby idea of "KISS" (essentially, simplicity). 
</p>
<blockquote>
Instead of trying to do everything at once - I stopped and decided to only do one thing at once. And that one thing, had my full attention and focus. When it was done, I then moved on to the next one. Not before and not after.
</blockquote>
<p>
He includes some of his own experience trying to apply this in a Zend Framework 2 application. 
</p>
Link: http://www.maltblue.com/software-engineering-2/how-simplicity-leads-to-greater-productivity-quality-and-satisfaction]]></description>
      <pubDate>Tue, 16 Apr 2013 09:39:44 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP.net: PHP 5.5 beta3 is available]]></title>
      <guid>http://www.phpdeveloper.org/news/19448</guid>
      <link>http://www.phpdeveloper.org/news/19448</link>
      <description><![CDATA[<p>
On PHP.net they've announced the <a href="http://php.net/index.php#id2013-04-11-1">release of the beta3 for PHP 5.5.x</a> with some bugfixes from the previous beta release.
</p>
<blockquote>
The PHP development team announces the release of the 3rd beta of PHP 5.5.0. This release fixes some bugs against beta 2. This is a development preview - do not use it in production. PHP 5.5.0beta3 is shipped with some bug fixes and improvements. 
</blockquote>
<p>
Updates include the dropping of bison <2.4 support, a fix for the DateTime serialize/unserialize and an update to the key handling in foreaches. You can see information on these changes and many more in <a href="https://github.com/php/php-src/blob/php-5.5.0beta3/NEWS">the NEWS file</a> and can download the beta release from the usual sources: <a href="http://downloads.php.net/dsp">source</a>, <a href="http://windows.php.net/qa/">Windows binaries</a>.
</p>
Link: http://php.net/archive/2013.php#id2013-04-11-1]]></description>
      <pubDate>Thu, 11 Apr 2013 12:36:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP.net: PHP 5.5 beta2 released]]></title>
      <guid>http://www.phpdeveloper.org/news/19383</guid>
      <link>http://www.phpdeveloper.org/news/19383</link>
      <description><![CDATA[<p>
The PHP.net site has announced the release of the latest beta for the PHP 5.5 series - <a href="http://php.net/archive/2013.php#id2013-03-28-1">PHP 5.5 beta2</a>:
</p>
<blockquote>
The PHP development team announces the release of the second beta of PHP 5.5.0. This release fixes some bugs from beta one that could prevent the release from compiling. [...] Our next beta is expected for April 11th.
</blockquote>
<p>
This is a development preview, so do not use it in production. Several bugs were fixed in this beta release - you can view the <a href="https://github.com/php/php-src/blob/php-5.5.0beta2/NEWS">NEWS file</a> for a complete list. If you'd like to help test it out in your environment and with your applications, go <a href="http://downloads.php.net/dsp">download it</a> (<a href="http://windows.php.net/qa/">Winodws</a>) and give it a shot. You can provide issues you might find back to <a href="https://bugs.php.net/">the bug tracker</a>.
</p>]]></description>
      <pubDate>Fri, 29 Mar 2013 06:37:11 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Lukas Smith: Good design is no excuse for wasting time]]></title>
      <guid>http://www.phpdeveloper.org/news/19377</guid>
      <link>http://www.phpdeveloper.org/news/19377</link>
      <description><![CDATA[<p>
In his most recent post <i>Lukas Smith</i> suggests that <a href="http://pooteeweet.org/blog/0/2205#m2205">good design isn't an excuse for wasting time</a>. He's basically saying that Symfony2, because of how it's designed and implemented, isn't a RAD (rapid application development) framework and that it's about time for some layers to be added to help get it there.
</p>
<blockquote>
Symfony 1.x I would put into a category of frameworks focused on RAD, aka rapid application development. [...] So for those people who were happy focusing on the 80% use case Symfony2 is a step back. Suddenly the same features take longer to implement, take longer to modify later on and on top of that the learning curve is steeper.
</blockquote>
<p>
He suggests that work be put into "RAD layers" that can sit on top of Symfony2 and provide some of the more familiar features people are used to from things like CakePHP, Yii and CodeIgniter. There's been <a href="https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/Resources/doc/5-automatic-route-generation_single-restful-controller.md">a few</a> <a href="http://symfony.com/doc/current/bundles/SensioFrameworkExtraBundle/index.html">tries</a> to <a href="http://sonata-project.org/bundles/admin/master/doc/index.html">accomplish</a> this with only one getting the closest in his opinion - the <a href="http://rad.knplabs.com/">KnpBundle</a>.
</p>]]></description>
      <pubDate>Thu, 28 Mar 2013 11:51:51 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Justin Carmony: First Serious Attempts with PHPUnit, Composer, and the Omniture API]]></title>
      <guid>http://www.phpdeveloper.org/news/19337</guid>
      <link>http://www.phpdeveloper.org/news/19337</link>
      <description><![CDATA[<p>
In a new post to his site <i>Justin Carmony</i> shares some of his experiences with doing test-driven development (TDD) for a new project he was working on <a href="http://www.justincarmony.com/blog/2013/03/19/first-serious-attempts-with-phpunit-composer-and-the-omniture-api/">interfacing with the Omniture API</a>. In it he shares six lessons he learned during the work.
</p>
<blockquote>
At work we use Omniture for our web analytics, and for a long time I've wanted query our Omniture Data to run some internal reports. I discovered that Omniture has a <a href="https://developer.omniture.com/en_US/documentation/sitecatalyst-reporting/c-overview-6">restful reporting api</a>, and after using it for a little bit I decided it would be nice to write a wrapper library for it. Since I had recently taken the <a href="http://grumpy-learning.com/">PHP Testing Bootcamp</a> from Chris Hartjes, I decided I wanted write it using Test Driven Development and really get my feet wet. I also decided I wanted to make the library compatible with <a href="http://getcomposer.org/">Composer</a>. After the weekend was over, I had <a href="https://packagist.org/packages/deseretdigital/site-catalyst-reporting">an almost finished library</a> that just requires some more work to be done, but I learned a great deal that I thought I'd share.
</blockquote>
<p>He's broken the post up into sections, each with their own summary:</p>
<ul>
<li>TDD is 90% changing the way to write code, and 10% writing tests
<li>Understanding Mock Objects is the real key.
<li>It takes almost twice as long to write code and tests then just code
<li>Its extremely easy to get out of the habit of writing tests.
<li>You'll refactor quicker and more often when writing tests
<li>Having testable code made me feel much better about sharing the code.
</ul>]]></description>
      <pubDate>Wed, 20 Mar 2013 09:37:53 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[QaFoo.com: Behavior Driven Development]]></title>
      <guid>http://www.phpdeveloper.org/news/19291</guid>
      <link>http://www.phpdeveloper.org/news/19291</link>
      <description><![CDATA[<p>
On the QaFoo blog today there's a new post looking at <a href="http://qafoo.com/blog/036_behavior_driven_development.html">behavior driven development</a> and a PHP-based tool that makes implementing it in your workflow simpler (<a href="http://behat.org/">Behat</a>).
</p>
<blockquote>
While unit, integration and system tests - especially combined with the methodology of Test Driven Development (TDD) - are great ways to push the technical correctness of an application forward, they miss out one important aspect: the customer. None of these methods verify that developers actually implement what the customer desires. <a href="https://en.wikipedia.org/wiki/Behavior-driven_development">Behavior Driven Development</a> (BDD) can help to bridge this gap.
</blockquote>
<p>
The introduce some of the basic concepts behind behavior driven development and include an example of a Gherkin-formatted test example checking a page to ensure if has the correct content. They briefly define the structure of the test then take it into a Behat context and show how it would be implemented.
</p>
<blockquote>
Of course, the examples shown above are only very rudimentary, missing e.g. variables and other advanced features. However, they should have explained what BDD is all about: Communication
</blockquote>]]></description>
      <pubDate>Fri, 08 Mar 2013 11:54:21 -0600</pubDate>
    </item>
  </channel>
</rss>
