<?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>Wed, 22 May 2013 11:06:01 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[DZone.com: From Java to PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/19319</guid>
      <link>http://www.phpdeveloper.org/news/19319</link>
      <description><![CDATA[<p>
On DZone.com today there's a new post that welcomes those coming from Java over to PHP with <a href="http://css.dzone.com/articles/java-php">a few recommendations and suggestions</a> about what's different and some things they might find familiar in the transition.
</p>
<blockquote>
We are welcoming some new colleagues that come from a Java background in the Onebip team, both from the development and operations field. Here's a primer on learning PHP in this situation, that you may find useful when introducing similar people in your PHP-based projects.
</blockquote>
<p>He breaks it up into a few sections:</p>
<ul>
<li>the "absolute basics" (like the differences in variable handling)
<li>things to not care about (like procedural PHP or the installation of Apache+PHP)
<li>how to "write to a graph" (things like PDO, DateTime)
<li>things to watch out for (like == vs === and some php.ini settings)
</ul>
<p>
He also recommends doing some coding katas with TDD to give you a "crash course" in the language and help you learn from more than just reading.
</p>]]></description>
      <pubDate>Fri, 15 Mar 2013 11:55:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Reddit.com: Moving a large existing project onto a framework]]></title>
      <guid>http://www.phpdeveloper.org/news/19123</guid>
      <link>http://www.phpdeveloper.org/news/19123</link>
      <description><![CDATA[<p>
On Reddit.com a discussion has started up around a question asked about legacy application migration - things to consider when <a href="http://www.reddit.com/r/PHP/comments/17lpl8/moving_a_large_existing_project_onto_a_framework/">moving a large existing project onto a framework</a>.
</p>
<blockquote>
I am working for an online store that has a codebase which has spanned dozens of developers and has been constantly upgraded. The codebase has its problems but it is not too bad. I would love to put it onto a framework like laravel and systematically start cleaning up as I go, but I am unsure if it will work trying to shove a framework into the current site. Has anyone done something similar, it would take me months to rewrite the whole system, has anyone done something like this successfully? Any advice would be appreciated.
</blockquote>
<p>There's lots of good recommendations made in the comments including:</p>
<ul>
<li>"If it were me, I'd take a step back before trying to build on top of a framework. I'd start by refactoring the existing codebase out into PSR-0 compliant namespace."
<li>"In my experience you only rewrite an entire application if what you have has become too expensive to maintain. At this point it is actually more cost effective to rewrite it using a framework."
<li>"We have recently moved our website to the Symfony2 framework at my company [...] it definitely is not a one programmer job."
<li>"Whatever you do, replace one bit at a time. And always strive to de-couple code."
</ul>
<p>
Read up on the rest of the responses or add your own <a href="http://www.reddit.com/r/PHP/comments/17lpl8/moving_a_large_existing_project_onto_a_framework/">to the post</a>.
</p>]]></description>
      <pubDate>Fri, 01 Feb 2013 12:18:13 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Josh Adell: Migrating to Dependency Injection]]></title>
      <guid>http://www.phpdeveloper.org/news/18794</guid>
      <link>http://www.phpdeveloper.org/news/18794</link>
      <description><![CDATA[<p>
In a new post to his blog <i>Josh Adell</i> talks about his voyage to <a href="http://blog.everymansoftware.com/2012/11/migrating-to-dependency-injection.html">implement dependency injection</a> into a current application. His work can be found in <a href="http://github.com/jadell/laldi">this github repository</a>.
</p>
<blockquote>
Recently, I gave a lunch-and-learn to my team on the topic of Dependency Injection (DI). Instead of showing a bunch of slides explaining what DI is and what it's good for, I created a small project and demonstrated the process of migrating a codebase that does not use DI to one that does. Each stage of the project is a different tag in the repository. The code can be found on Github: <a href="http://github.com/jadell/laldi">http://github.com/jadell/laldi</a>. Checkout the code, and run composer install. To see the code at each step in the process, run the git checkout command in the header of each section.
</blockquote>
<p>
He goes through each "checkout" step (the title is the git command to run to follow along) showing how he migrated away from a simple micro-framework based site to one that defines the various objects (and repositories) inside the "application" object. He adds in a few comments to let you know a bit more about what's going on and some basic event handling. He finishes off the post with some potential issues that could come up both during the process and with the resulting application.
</p>]]></description>
      <pubDate>Fri, 23 Nov 2012 11:41:41 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: PHP-GTK Migrates to Git/Github]]></title>
      <guid>http://www.phpdeveloper.org/news/17704</guid>
      <link>http://www.phpdeveloper.org/news/17704</link>
      <description><![CDATA[<p>
As a part of the move to git/github that the <a href="http://phpdeveloper.org/news/17695">PHP project recently made</a>, a reminder was posted that the <a href="https://github.com/php/php-gtk-src">PHP-GTK project has also migrated</a>.
</p>
<blockquote>
PHP-GTK is a PHP extension that enables you to write client-side cross-platform
GUI applications. This is the first such extension of this kind and one of the
goals behind it was to prove that PHP is a capable general-purpose scripting
language that is suited for more than just Web applications.
</blockquote>
<p>
The <a href="https://github.com/php/php-gtk-src">full source</a> can be found and forked/cloned over on github and is just waiting for you to contribute!
</p>]]></description>
      <pubDate>Wed, 21 Mar 2012 09:40:31 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Brian Swan's Blog: Azure Real World: Migrating a Drupal Site from LAMP to Windows Azure]]></title>
      <guid>http://www.phpdeveloper.org/news/17696</guid>
      <link>http://www.phpdeveloper.org/news/17696</link>
      <description><![CDATA[<p>
In <a href="http://blogs.msdn.com/b/brian_swan/archive/2012/03/19/azure-real-world-migrating-drupal-from-lamp-to-windows-azure.aspx">this new post</a> to his blog <i>Brian Swan</i> shares the process that he and other Microsoft-ers went through to migrate a site off of a LAMP stack and over to one based on Windows Azure. They moved was the <a href="http://blogs.msdn.com/b/interoperability/archive/2012/02/24/sag-awards-website-moves-to-windows-azure.aspx">SAG awards</a> website because of issues it had seen with outages and slow performance.
</p>
<blockquote>
In many ways, the SAG Awards website was a perfect candidate for Windows Azure. The website has moderate traffic throughout most of the year, but has a sustained traffic spike shortly before, during, and after the awards show in January. [...] The main challenge that SAG Awards and Microsoft engineers faced in moving the SAG Awards website to Windows Azure was in architecting for a very high, sustained traffic spike while accommodating the need of SAG Awards administrators to frequently update media files during the awards show. Both intelligent use of Windows Azure Blob Storage and a custom module for invalidating cached pages when content was updated were key to delivering a positive user experience.
</blockquote>
<p>
He walks you through each of the five steps (high-level, obviously) that they took in the migration:
</p>
<ul>
<li>Export data
<li>Install Drupal on Windows
<li>Import data into SQL Azure
<li>Copy media files to Azure Blob Storage
<li>Package and Deploy Durpal
</ul>
<p>
Each step comes with some explanation and descriptions of the commands and tools used during the process.
</p>]]></description>
      <pubDate>Tue, 20 Mar 2012 08:44:04 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP.net: PHP Migrates to Git]]></title>
      <guid>http://www.phpdeveloper.org/news/17695</guid>
      <link>http://www.phpdeveloper.org/news/17695</link>
      <description><![CDATA[<p>
The announcement has finally come - the PHP project has <a href="http://www.php.net/archive/2012.php#id2012-03-20-1">officially moved to git</a>!
</p>
<blockquote>
The migration of the PHP source code from Subversion to Git is complete. You can clone or fork the source from our <a href="https://github.com/php/php-src">GitHub mirror</a>, and we also now support pull requests made via GitHub. The source is also available via <a href="http://git.php.net/">git.php.net</a>, and full instructions on cloning the php-src tree can be found at <a href="http://php.net/git">php.net/git</a>. One immediate benefit is that future PHP release tags will be signed by the PHP development team. We will be releasing GPG keys for verification purposes in the next few days. More information on the migration and the new workflow can be found at the <a href="https://wiki.php.net/vcs/gitfaq">Moving to Git FAQ</a> on the PHP Wiki.
</blockquote>
<p>
This move does not include the manuals yet, but that's coming soon. Be sure to <a href="http://us3.php.net/git.php">follow these steps</a> if you'd like to contribute back via the git repository. This is a great move for the project and makes it even easier for developers to contribute their fixes and ideas back to the development group!
</p>
<p>
<i>Joshua Thijssen</i> has <a href="http://www.adayinthelifeof.nl/2012/03/19/php-has-moved-to-git/">also posted a guide</a> to getting started on his blog.
</p>]]></description>
      <pubDate>Tue, 20 Mar 2012 06:39:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Daniel Krook's Blog: Migrating PHP applications to DB2]]></title>
      <guid>http://www.phpdeveloper.org/news/17650</guid>
      <link>http://www.phpdeveloper.org/news/17650</link>
      <description><![CDATA[<p>
As <i>Daniel Krook</i> mentions in <a href="http://krook.net/archives/827">his latest blog post</a>, the IBM developerWorks site has just posted the last part of a series he's been writing about migrating a PHP application's backend over to DB2.
</p>
<blockquote>
IBM developerWorks has just published the final part in our series on migrating a PHP application from MySQL to DB2. [...] In addition to sharing our own experience, the series highlights the number of resources available to you to carry out your own migration.
</blockquote>
<p>The series is broken up into four parts:</p>
<ul>
<li><a href="http://www.ibm.com/developerworks/data/library/techarticle/dm-1011phpdb2mysql/">Prepare for your migration</a>
<li><a href="http://www.ibm.com/developerworks/data/library/techarticle/dm-1103phpdb2mysql2/">Migrate your data</a>
<li><a href="http://www.ibm.com/developerworks/data/library/techarticle/dm-1108phpdb2mysql3/">Convert your PHP code</a>
<li><a href="http://www.ibm.com/developerworks/data/library/techarticle/dm-1203phpdb2mysql4/">Deploy your application</a>
</ul>]]></description>
      <pubDate>Fri, 09 Mar 2012 08:20:28 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PEAR Blog: What would you do with 5 million lines of code?]]></title>
      <guid>http://www.phpdeveloper.org/news/17441</guid>
      <link>http://www.phpdeveloper.org/news/17441</link>
      <description><![CDATA[<p>
On the PEAR blog today there's an update about the <a href="http://blog.pear.php.net/2012/01/24/what-would-you-do-with-5-million-lines-of-code/">migration over to github</a> that 5 million lines of code has already made:
</p>
<blockquote>
Since October 2011, 5 million lines of the PEAR codebase has shifted to github. Hand in hand with this shift has been the tireless work of Daniel C - someone who brazenly said "I will fix the failing packages!" in the tail end of last year.
</blockquote>
<p>
As a result of <a href="http://permalink.gmane.org/gmane.comp.php.pear.devel/50101">his efforts</a> a list has been created of <a href="http://test.pear.php.net:8080/view/Known%20Good/">known good packages</a> to use with PHP 5.4. Other results include:
</p>
<ul>
<li>All test infrastructure upgrading to PHP 5.4 release candidates
<li>All database driven test suites executing properly, catching a variety of simple bugs
<li>Hitting a point of "near zero" patches to be applied to unmaintained packages
<li>Increasingly, the PEAR QA team is delivering PHP 5.3+ friendly forks of existing packages
</ul>]]></description>
      <pubDate>Tue, 24 Jan 2012 12:18:07 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Leasewebs Labs: Painless (well, less painful) migration to Symfony2]]></title>
      <guid>http://www.phpdeveloper.org/news/17299</guid>
      <link>http://www.phpdeveloper.org/news/17299</link>
      <description><![CDATA[<p>
<i>Stefan Koopmanschap</i> has written up an article on the Leaseweblabs.com blog about <a href="http://www.leaseweblabs.com/2011/12/painless-well-less-painful-migration-to-symfony2/">migrating a Symfony 1 application to Symfony2</a> in a (slightly) less painful way that making the move all at once.
</p>
<blockquote>
It is much easier to do a gradual migration. Start with one part of your application, and bit by bit migrate your logic and application. The traditional way of doing such migrations is to create a new project and have parallel development on the old and the new version of the application. The problem with this, though, is that when you make a change to your old application, you have to make the same change in the new codebase, essentially doubling the amount of work for each feature you need to implement. [...] You could wrap your old application into your Symfony2 application, and have different parts of your application be handled by different versions of your codebase.
</blockquote>
<p>
With the help of a bundle he created, <a href="https://github.com/Ingewikkeld/IngewikkeldWrapperBundle">IngewikkeldWrapperBundle</a> that handles the rerouting of your requests based on where the requested resource exists (in the Symfony 1 or 2 codebase). 
</p>]]></description>
      <pubDate>Fri, 23 Dec 2011 11:02:12 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PEAR Blog: PEAR Development on Github]]></title>
      <guid>http://www.phpdeveloper.org/news/17095</guid>
      <link>http://www.phpdeveloper.org/news/17095</link>
      <description><![CDATA[<p>
On the PEAR blog today it's been pointed out that <a href=http://blog.pear.php.net/2011/11/05/pear-development-on-github/">many PEAR packages are moving to github</a> as their standard place for development and repositories under the <a href="http://github.com/pear">pear</a> and <a href="http://github.com/pear2">pear2</a> accounts are available for anyone wanting to make the move.
</p>
<blockquote>
While the existing PEAR packages will continue to use the pear.php.net distribution and bug tracking capabilities; it's never been easier to contribute to a PEAR package - simply fork; add your changes and send us a pull request. If your preferred packages aren't yet on github, please feel free to drop us a line on the pear-dev mailing list.
</blockquote>
<p>
<a href="http://old.nabble.com/PEAR-Development-on-Github-td32199368.html">Here's more about the process</a> to get the repository set up and how to migrate your package's current code from SVN over to github. The transition's pretty painless and can make the social development and improvement of your package a lot simpler.
</p>]]></description>
      <pubDate>Mon, 07 Nov 2011 12:36:57 -0600</pubDate>
    </item>
  </channel>
</rss>
