GitHub Pages + Pirum = Easy PEAR Channel
I prefer managing my non-PEAR PHP dependencies (such as Zend Framework and PHPUnit) through PEAR channels when possible. It's much easier to manage component installation, upgrades, etc.. Managing and hosting a PEAR channel (using the Chiara_PEAR_Server) is not always that simple, and can add too much overhead for small projects. I like how Zend Framework leveraged google code to host its PEAR channel, and was able to update it simply through pushing to SVN, avoiding a web interface. Since I've been accumulating some components recently that really don't fit into pear.php.net, I figured it was time set up a PEAR channel for distributing them, but didn't want to host it myself or have to use a web interface. Turns out, it's really easy to do now.
Pragmatic tips for unit testing in PHP
Recently I've been hearing a lot of differing opinions about unit testing. Some people just don't believe in it at all, others think the value it provides is only part of the picture, and that its cost should be weighed accordingly. Some think that 100% test coverage should be the goal for high quality software. I personally think the cost of unit testing 100% of your code is worth it, but only if you can do it efficiently. And that's the catch; there's a learning curve to become proficient at unit testing, especially with PHPUnit, the most prominent unit testing framework for PHP. Unit testing should never take more than 20-30% of your overall coding time, if you do it right.
2009 Year in Review
I've been thinking about starting a blog for a while, and since it's the beginning of a new year, I thought I'd start out with a list of highlights from last year. So here's my 2009 Year in Review: