<?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, 19 Jun 2013 14:36:41 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Codeception: Codeception released with CodeCoverage support]]></title>
      <guid>http://www.phpdeveloper.org/news/19014</guid>
      <link>http://www.phpdeveloper.org/news/19014</link>
      <description><![CDATA[<p>
The Codeception testing tool has <a href="http://codeception.com/01-08-2013/codeception-codecoverage.html">released a new major update</a> with some interesting new features - the expected feature for generating code coverage reports (similar to <a href="http://phpunit.de">other</a> tools) but there's also the idea of "remote code coverage" introduced.
</p>
<blockquote>
There is no magic in local codecoverage. XDebug and PHP_CodeCoverage libraries do their job. The tricky thing is remote codecoverage. We attach small script into application's front controller. When a special header is sent this script starts to collect coverage information. And in the end of tests, this data is merged, serialized and sent back to Codeception. So you can test and collect coverage report even on staging servers in real environment.
</blockquote>
<p>
They also mention a few other updates in the release - new Redis and MongoDb modules, UX improvements and the normal bugfixes. You can find out more about the code coverage feature in <a href=""http://codeception.com/docs/11-CodeCoverage">their manual</a> or just about the project in general from <a href="http://codeception.com">the main site</a>.
</p>]]></description>
      <pubDate>Wed, 09 Jan 2013 11:14:19 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Volker Dusch's Blog: Textual code coverage information for PHPUnit]]></title>
      <guid>http://www.phpdeveloper.org/news/17173</guid>
      <link>http://www.phpdeveloper.org/news/17173</link>
      <description><![CDATA[<p>
In <a href="http://edorian.posterous.com/textual-code-coverage-information-for-phpunit">a new post</a> to his blog <i>Volker Dusch</i> points out a new feature in a recent release of <a href="http://phpunit.de">PHPUnit</a>, the popular unit testing framework for PHP - textual code coverage details.
</p>
<blockquote>
Three weeks ago PHPUnit 3.6 was released and it has a little new feature you might have missed until now. PHPUnit can now show you code coverage information on the command line.
</blockquote>
<p>
Options for the report output include: colorizing, writing the output to a file, including a project summary, namespace separation and package (using the @package phpdoc tag) information. He includes a use case he's found for it - small projects where you can cover the whole codebase quickly (with a "watch" command example filtering based on a certain class).
</p>]]></description>
      <pubDate>Fri, 25 Nov 2011 16:11:41 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Ibuildings techPortal: PHPNW11 Conference Report - Part II]]></title>
      <guid>http://www.phpdeveloper.org/news/17056</guid>
      <link>http://www.phpdeveloper.org/news/17056</link>
      <description><![CDATA[<p>
On the Ibuildings techPortal <i>Marco De Bortoli</i> has posted <a href="http://phpdeveloper.org/news/16551">the second part</a> of his summary of this year's <a href="http://conference.phpnw.org.uk/phpnw11/">PHP North West conference</a> (you can find the <a href="http://phpdeveloper.org/news/17020">first part here</a>). In this part he briefly discusses the tutorial day and the main conference, including the sessions he attended.
</p>
<blockquote>
This was a very social event from day one, warm and funny with a horde of geeks trying to mix with "normal people" (yes, that can happen if you attend the PHPNW conference, so try not to miss it next year). The best thing about PHP conferences is knowledge-sharing; you won't leave without a hundred different thoughts and ideas of how to do things better. Once again - definitely a good time, both personally and professionally. If you weren't there, you missed out!
</blockquote>
<p>
The sessions he specifically mentions include the "Security" talk from <i>Arne Blankerts</i>, "Maintainable Applications in PHP Using Components" by <i>Stuart Herbert</i>, "PHP Extensions, why and what?" by <i>Derick Rethans</i> and "Acceptance & Integration Testing Using Behat" from <i>Ben Waine</i>.
</p>]]></description>
      <pubDate>Fri, 28 Oct 2011 10:15:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[CodeIgniter.com: Amazing Progress Report & Addition of IRC to CodeIgniter.com]]></title>
      <guid>http://www.phpdeveloper.org/news/16808</guid>
      <link>http://www.phpdeveloper.org/news/16808</link>
      <description><![CDATA[<p>
On CodeIgniter.com there's <a href="http://codeigniter.com/news/amazing_progress_report_addition_of_irc_to_codeigniter.com/#When:19:29:25Z">a new post</a> updating the community on more of the current happenings surrounding the project including the status of their move to github and another source for developers to find the CI help they need.
</p>
<blockquote>
<p>
In less than two weeks since the announcement was made at CICON that CodeIgniter was <a href="https://github.com/EllisLab/CodeIgniter">moving to GitHub</a>, we've seen some incredible results from the change.  Already CodeIgniter is the 10th <a href="https://github.com/languages/PHP/most_watched">most watched PHP project</a> at GitHub (currently 758), with 42 open pull requests, 53 merged pull requests, 170 forks, and 41 individual contributors.  Incredible!
</p>
<p>
[...] We also noticed what seemed to be a spike in activity on the #CodeIgniter Freenode IRC channel, so we've decided to make it more prominent to encourage its continued use.  You'll now notice an IRC tab in the main navigation, letting you access the <a href="http://codeigniter.com/irc/">#CodeIgniter IRC</a> channel right here at CodeIgniter.com.
</p>
</blockquote>
<p>
If you want more details on why they made the switch over to git, check out <a href="http://ellislab.com/blog/comments/ellislab_switches_to_git_moves_to_github">this blog entry</a> from the EllisLab site for an explanation from <i>Derek Jones</i>
</p>]]></description>
      <pubDate>Fri, 02 Sep 2011 08:48:17 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Christian Weiske's Blog: Visualizing PHPUnit runs]]></title>
      <guid>http://www.phpdeveloper.org/news/16280</guid>
      <link>http://www.phpdeveloper.org/news/16280</link>
      <description><![CDATA[<p>
During some of his development, <i>Christian Weiske</i> found the tests for <a href="http://less-st.sf.net/">a project he was working on</a> too slow for comfort and figured there had to be a way to find the root cause:
</p>
<blockquote>
Running the specific test cases for the part of the application you're working on is easy and fast, but that does not tell you when changes in part A of the app break part B - which happened several times, and all just because I didn't want to wait 45 seconds again and again. So a solution was badly needed; tests should be as fast as possible; preferably < 10 seconds. Before being able to make the slow tests faster, I had to find out which of the 80 tests were slow.
</blockquote>
<p>
Tools like Jenkinks give more detail on test runs, but a normal <a href="http://phpunit.de">PHPUnit</a> install won't. So, he came up with a method that uses <a href="http://phing.info/">Phing</a>'s phpunitreport task to generate extra reporting easily. Here's some example screenshots: <a href="http://cweiske.de/tagebuch/images/phpunitreport/frames-overview.png">test results summary</a>, <a href="http://cweiske.de/tagebuch/images/phpunitreport/frames-error.png">test detail</a> and <a href="http://cweiske.de/tagebuch/images/phpunitreport/single1.png">single page views</a> of the same sort of data.
</p>]]></description>
      <pubDate>Mon, 02 May 2011 10:19:48 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Dave Marshall' Blog: Asynchronous cache priming with progress bars via Gearman, Memcache and Dojo]]></title>
      <guid>http://www.phpdeveloper.org/news/16141</guid>
      <link>http://www.phpdeveloper.org/news/16141</link>
      <description><![CDATA[<p>
<i>Dave Marshall</i> has written up a new post showing how he's used memcache, Gearman and Dojo to create an <a href="http://www.davedevelopment.co.uk/2011/04/04/asynchronous-cache-priming-with-progress-bars-via-gearman-memcache-and-dojo/">asynchronous progress bar</a> he uses when generating large reports.
</p>
<blockquote>
I have a (highly optimised) report that takes way too long to generate, up to around 30 seconds. [There's] too many variables to prime caches for every possible combination [and] personally, I don't think the browsers inbuilt progress bar is enough feedback for todays web users.
</blockquote>
<p>
He generates the data into <a href="http://memcached.org/">memcache</a> when the user requests it and uses the Gearman worker processes to handle requests for data that doesn't yet exist. The progress bar is a part of <a href="http://dojotoolkit.org/">Dojo</a> and uses the <a href="http://docs.dojocampus.org/dijit/ProgressBar">dijit.ProgressBar</a> widget to keep checking the progress of the build. This way the user can even leave the page and come back if the process takes too long with no threat to the generating report. You can find all of his code he's used to make it happen <a href="https://github.com/davedevelopment/async-demo">on his github account</a>.
</p>]]></description>
      <pubDate>Mon, 04 Apr 2011 10:18:20 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Brian Swan's Blog: Rendering SQL Server Reports as Excel Documents with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/15190</guid>
      <link>http://www.phpdeveloper.org/news/15190</link>
      <description><![CDATA[<p>
<i>Brian Swan</i> has <a href="http://blogs.msdn.com/b/brian_swan/archive/2010/09/23/rendering-sql-server-reports-as-excel-documents-with-php.aspx">a new post</a> to his blog that looks at a method for pulling back the reports from a SQL Server instance in something a bit more readable/useful - an Excel document.
</p>
<blockquote>
One of the most common questions [from his <a href="http://blogs.msdn.com/b/brian_swan/archive/2010/05/04/getting-started-with-sql-server-reporting-services-ssrs-and-php.aspx">previous post</a>] has been "How do I render a report as an Excel document?" I've been telling folks that this is easy with the <a href="http://ssrsphp.codeplex.com/">SSRS SDK for PHP</a> (and it is  easy), but when I sat down to do it, I ran into a problem. So, in this post, I'll show you how to render a SSRS report as an Excel document and how to avoid the one problem that caused me headaches.
</blockquote>
<p>
This post's a short one with a code snippet (<a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Components-PostAttachments/00-10-06-27-28/ssrsDemo.zip">and download</a>) showing how to connect to the server and create a "RenderAsEXCEL" object and request the report information with that in the rendering function. Then it's just as simple as pushing that information out to a file as a ".xls". The included download will also let you pull down the report as HTML or as a PDF.
</p>]]></description>
      <pubDate>Mon, 27 Sep 2010 10:15:51 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Ralph Schindler's Blog: The Anatomy Of A Bug/Issue Reproduction Script]]></title>
      <guid>http://www.phpdeveloper.org/news/14060</guid>
      <link>http://www.phpdeveloper.org/news/14060</link>
      <description><![CDATA[<p>
Trying to figure out what's broken when someone reports a bug can sometimes be one of the biggest pains for a software developer. Helpful information can be few and far between and it could be a lot better. <i>Ralph Schindler</i> has a new post to his blog today to show how you can <a href="http://ralphschindler.com/2010/02/18/the-anatomy-of-a-bug-issue-reproduction-script">create a good, helpful reproduction script</a> that can make the live of the project's developers much simpler.
</p>
<blockquote>
"There is a problem with component Fooey-Bar-Bazzy, I think it's related to Nanny-Nanny-Neener. Please Fix Now." If you've written a bug/issue report like that in the past with no other details - shame on you! This may come as a shock, but as great as some developers might be, they cannot read minds.
</blockquote>
<p>
He recommends a few things that can help make your report clearer - listing out your assumptions, creating a short use case, documentation on expected and actual results and how to make the script as generic as possible. To further illustrate, he also includes a sample reproduction script for a Zend Framework bug based on <a href="http://framework.zend.com/issues/browse/ZF-3709">this issue</a> with plenty of commenting, reproduction code and setup/assertion methods to show where the problem lies. 
</p>
<p>
Using this method does not only make it easier for the developers to find the bug, but it also means that the person finding the bug doesn't have to know the internals of the application to point out where the issue lies.
</p>]]></description>
      <pubDate>Fri, 19 Feb 2010 13:45:19 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Danne Lundqvist's Blog: Gartner report on PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/13831</guid>
      <link>http://www.phpdeveloper.org/news/13831</link>
      <description><![CDATA[<p>
As <i>Danne Lundqvist</i> mentions in <a href="http://www.dotvoid.com/2010/01/gartner-report-on-php/">a new post</a>, there's a new <a href="http://blogs.gartner.com/mark_driver/2009/12/03/php-past-present-and-future/">post on the Gartner.com site</a> about the past, present and future of the PHP language.
</p>
<p>From the Gartner post:</p>
<blockquote>
I just published a research note on PHP.  Clients can find it <a href="http://my.gartner.com/portal/server.pt?gr=dd&ref=shareSummary&resId=1241721">here</a>. The research note goes into *much* more detail but the overview is [in the rest of the post]. Keep in mind that this content is targeted at mainstream IT organizations. PHP has been a cornerstone technology on the Web for more than a decade. While its adoption among mainstream IT organizations has been limited in the past, many corporate application development (AD) projects are discovering the unique benefits of PHP.
</blockquote>
<p>
<i>Danne</i> highlights two quotes that were of particular interest in the report - one from the quote above about PHP being a cornerstone of many corporate web application development and the other talking about PHP's role not just in backend application development but also it being useful in front-end toolsets too.
</p>]]></description>
      <pubDate>Wed, 13 Jan 2010 09:53:21 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[IBuildings Blog: PHP Rated Top Scripting Language by Evans Data Corp]]></title>
      <guid>http://www.phpdeveloper.org/news/12996</guid>
      <link>http://www.phpdeveloper.org/news/12996</link>
      <description><![CDATA[<p>
According to <a href="http://www.ibuildings.com/blog/archives/1563-PHP-Rated-Top-Scripting-Language-by-Evans-Data-Corp.html">this post</a> (by <i>Cal Evans</i>) on the Ibuildings blog (and <a href="http://evansdata.com/reports/viewRelease_download.php?reportID=18">this report</a> from the EDC), PHP has come out as one of the top scripting languages on the web today.
</p>
<blockquote>
In their recently released report "Users' Choice: Scripting Language Ratings", Evans Data Corporation (no relation to the author of this article) gave PHP the highest overall ranking of the languages they included in their survey. [...] Given the wide variety of topics, there is no way PHP will ever score first place across the board, however, that is not a bad thing.
</blockquote>
<p>
Categories the languages were rated on included ease of use, extensibility, community, availability of tools and memory management. PHP got high marks on most with a few (like client-side scripting) lagging behind. <i>Cal</i> sees it from two angles, though - one to celebrate how far PHP has come and the other to look forward to see what things the language needs to improve on.
</p>]]></description>
      <pubDate>Wed, 05 Aug 2009 08:21:28 -0500</pubDate>
    </item>
  </channel>
</rss>
