<?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 02:23:48 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Michael Nitschinger: A Journey on Avoiding Nulls in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/19210</guid>
      <link>http://www.phpdeveloper.org/news/19210</link>
      <description><![CDATA[<p>
<i>Michael Nitschinger</i> has written up a post looking at <a href="http://nitschinger.at/A-Journey-on-Avoiding-Nulls-in-PHP">avoiding nulls in your applications</a> in favor of a better kind of value handling - the introduction of "<a href="http://code.google.com/p/guava-libraries/wiki/UsingAndAvoidingNullExplained">Optional</a>" handling.
</p>
<blockquote>
While every developer has kind of accepted their existence, they are suddenly there when we'd desperately need them to not show up. How often did you writeif($obj === null) in your PHP code? Can't there be a better, more elegant and fault-tolerant solution to the problem?
</blockquote>
<p>
His solution is to create a PHP version of this "Optional" functionality (via an abstract class) that allows some evaluation of the returned value from method calls on the object. Methods like "isPresent", "getOrElse", "of" and "fromNullable"  make it easier to work with null values instead of just the triple-equals checking. He includes not only the code for the classes you'll need to implement it but examples of it in use - an "Optional" abstract class and two child classes, "Present" and "Absent".
</p>]]></description>
      <pubDate>Wed, 20 Feb 2013 12:17:39 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Jani Hartikainen: Parsing and evaluating PHP in Haskell: Part 1]]></title>
      <guid>http://www.phpdeveloper.org/news/19052</guid>
      <link>http://www.phpdeveloper.org/news/19052</link>
      <description><![CDATA[<p>
<i>Jani Hartikainen</i> has posted the <a href="http://codeutopia.net/blog/2013/01/16/parsing-and-evaluating-php-in-haskell-part-1/">first part of a series</a> of articles sharing his experiences with an experiment he's conducting - trying to <a href="https://github.com/jhartikainen/hs-language-php">parse and evaluate PHP in Haskell</a>.
</p>
<blockquote>
The other day I uploaded a new experimental project on GitHub - A <a href="https://github.com/jhartikainen/hs-language-php">Haskell PHP parser / evaluator</a>. It doesn't understand 100% of all PHP syntax, but it was an interesting experiment nevertheless. Here's some insights and other thoughts from working on the code.
</blockquote>
<p>
He gets the "why?" question out of the way early, noting that it was mainly a desire to play with Haskell and figured parsing something he already knew well was a good first project. He also mentions the "Parsec" library that seems well suited for the parsing part of the process. There were some issues that he came across, however including dealing with PHP's weak typing and handling all of the possible incarnations of PHP script structure. He includes an example AST showing his different data structures (PHPValue, PHPExpr and PHPStmt). The next part of the series will be more about the evaluation of this structure.
</p>]]></description>
      <pubDate>Thu, 17 Jan 2013 11:13:23 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Programmers.StackExchange.com: How can I test PHP skills in a interview?]]></title>
      <guid>http://www.phpdeveloper.org/news/18367</guid>
      <link>http://www.phpdeveloper.org/news/18367</link>
      <description><![CDATA[<p>
In <a href="http://programmers.stackexchange.com/questions/118886/how-can-i-test-php-skills-in-a-interview">this recent post</a> to the "Programmers" area of the StackExchange site, the user asks the community for help in testing a PHP developer during the interview process to asses their level of knowledge accurately.
</p>
<blockquote>
My company needs to hire a PHP developer, but nobody has PHP knowledge in my company and we find difficult to test for PHP skills. If it were a C/Java developer I would ask him to write a quick implementation of the Game of Life, but PHP is a completely different language. I saw <a href="http://vladalexa.com/scripts/php/test/test_php_skill.html">this test</a> with interest. Anyone else has more suggestions?
</blockquote>
<p>
There's several other suggestions made touching on a wide range of evaluations including:
</p>
<ul>
<li>Security concerns (like SQL injection)
<li>Debugging/Profiling
<li>Framework experience
<li>Good overall development skills
<li>And inks to <a href="http://stackoverflow.com/questions/305654/what-php-specific-questions-would-you-ask-in-a-job-interview">other</a> <a href="http://stackoverflow.com/questions/2956890/php-job-interview-questions">similar</a> <a href="http://stackoverflow.com/questions/2950540/php-interview-questions">questions</a>
</ul>]]></description>
      <pubDate>Thu, 16 Aug 2012 11:35:38 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Fortrabbit.com: Cloudscapes - Comparing PHP Cloud Hosting Platforms]]></title>
      <guid>http://www.phpdeveloper.org/news/18215</guid>
      <link>http://www.phpdeveloper.org/news/18215</link>
      <description><![CDATA[<p>
On the Fortrabbit.com blog there's a new post that does a <a href="http://blog.fortrabbit.com/comparing-cloud-hosting-platforms/">quick overview and comparison</a> of 11 of the more popular cloud-based hosting platforms out there that are PHP friendly.
</p>
<blockquote>
We are currently building yet another PHP Cloud Platform ourselves. Of course we looked around to see what the others are up to. This is my (Franks) personal point of view of the current market situation showcasing my favorite services. I try not to judge, neither i will compare features nor prices.
</blockquote>
<p>Services on his list include:</p>
<ul>
<li><a href="http://heroku.com/">Heroku</a>
<li><a href="http://appfog.com/">phpFog/appFog</a>
<li><a href="http://pagodabox.com/">PagodaBox</a>
<li><a href="http://cloudcontrol.com/">CloudControl</a>
<li><a href="http://engineyard.com/">EngineYard</a>
</ul>]]></description>
      <pubDate>Wed, 11 Jul 2012 11:27:07 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Web Species Blog: Lazy evaluation with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/16410</guid>
      <link>http://www.phpdeveloper.org/news/16410</link>
      <description><![CDATA[<p>
<i>Juozas Kaziukenas</i> has a new post to his Web Species blog about <a href="http://blog.webspecies.co.uk/2011-05-31/lazy-evaluation-with-php.html">using "lazy evaluation" in PHP</a> - loading the resources you need for execution and evaluation only as you need them, not all up front.
</p>
<blockquote>
Recently I needed to process a huge array of data and because of PHP's somewhat inefficient variables and especially arrays that was resulting in "out of memory" errors. However, I couldn't use any other tools than PHP so was forced to come up with a solution implementation in it. Here is how I solved it using principles from functional languages.
</blockquote>
<p>
He gives an example using Haskell to generate a Fibonacci sequence using its built-in lazy evaluation abilities. Unfortunately, PHP doesn't have such a thing built in, so he tries the next best thing - <a href="http://php.net/manual/en/class.iterator.php">Iterators</a>. He caries the idea over to the database side too, recommending fetch() in a loop over fetchAll() and some effective joins.
</p>]]></description>
      <pubDate>Wed, 01 Jun 2011 08:41:01 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Andrei Zmievski's Blog: PHP 6 and Request Decoding]]></title>
      <guid>http://www.phpdeveloper.org/news/7324</guid>
      <link>http://www.phpdeveloper.org/news/7324</link>
      <description><![CDATA[<p>
<i>Andrei Zmievski</i> has <a href="http://www.gravitonic.com/blog/archives/000360.html">posted something new</a> to his blog today about a feature of PHP6 that's finally been hammered down - HTTP input (request) decoding.
</p>
<blockquote>
There have been no fewer than 4 different proposals floated before, but this one combines flexibility, performance, intuitiveness, and minimal architectural changes, and has only a couple of small drawbacks. Let's take a closer look.
</blockquote>
<p>
He <a href="http://www.gravitonic.com/blog/archives/000360.html">details the functionality</a> - what it is, what's been decided on, and the advantages of the method. The basic approach is a "lazy" one where PHP will only store the request when it comes in, no filtering or anything, until you want to do something with it (i.e. get it via $_GET, $_POST, etc). When the request for data is made, PHP looks at the encoding settings and formats the data accordingly.
</p>
<p>
Advantages he mentions for this method include removing the guess-work on PHP's part for which encoding the request is and that it removes some of the overhead by not processing the data until it's actually needed.
</p>]]></description>
      <pubDate>Thu, 22 Feb 2007 07:49:00 -0600</pubDate>
    </item>
  </channel>
</rss>
