Kana Yeh has posted a review of Ivo Jansch's "Guide to Enterprise PHP Development" (from php|architect):
I consider myself to be a newbie when it comes to profesional PHP web development. Sure I know how to CRUD, procedural-, object oriented development on a limited level, frameworks, functional designs, database designs, technical designs (all on a limited level). So yes, I know something but is my knowledge enough to be able to stand in the world of the real professionals? Therefore I might think and mention some stuff that is not related to enterprise. Please correct me whenever you come across such err.
She frames the review in light of what the titles of the book (the "enterprise" portion mainly) suggests about its contents. She talks about the contents of the book - descriptions of a software life cycle, architecture, quality assurance and optimization. In some of her final thoughts she mentions the quality of the book and some of the things it does well. (There also a Dutch summary for those Dutch PHPers out there.)
On the Adobe Developer Connection site Richard Bates has recently posted a tutorial covering the integration of PHP and Flex as developed in Zend Studio/Flex Builder.
Tight integration between Flex and a server-side language means that your users will have an intuitive, engaging user experience with all the functionality they need. For developers, tight integration between PHP and the Flex development environments can provide big benefits by ensuring a smoother workflow for coding, debugging, and managing a project. You can make the most of such a unified environment by using Adobe Flex Builder and Zend Studio for Eclipse together.
He starts with the basics - installing everything and getting it all up and running, then making a sample "Hello World" application on both the PHP (backend) and the Flex (frontend) sides. Included in the tutorial is a look at sending XML out to the Flex application from PHP.
In this new post to his blog Sebastian Bergmann looks at how to use Bazaar (a dstributed version control system) in his development the PHPUnit tool.
Last December, when I was in Australia and started to work on the Object_Freezer code, I "dived into" Bazaar (bzr) and learned the value of local commits as they allow me to work offline, e.g. when disconnected during travel. Thanks to bzr-svn, I can now work offline for PHPUnit development as well.
He shares his setup - a local shared repository for branching/trunk work and a linked checkout of PHPUnit between Bazaar and Subversion. This allows him to commit locally with Bazaar and, when he gets back online, issue a "merge" command to make the push back out to Subversion's remote repository.
Brandon Savage has his own response to the "comments are harmful" post over on the PHP in Action blog:
There's a lot of good advice, especially about writing clean code. But the article fails to address a good number of really critical details and to some degree misses the point of Eli's article.
He mentions these points - the value of writing comments before hand, the usefulness of descriptive comments, how they can be used as a todo pointing to future development and using them to share the knowledge and let other people in on what you're thinking.
As Roy Ganornoted in a recent tweet - the long-awaitedversion 2.0 of the PHP Development Tools (PDT) extension for Eclipse has been released:
PDT 2.0 was designed based on principles different to those of Eclipse PDT 1.0. For example, different techniques were used to model workspace projects. PDT 2.0 now uses an indexing and caching mechanism for improved performance and experience with code assist and navigation. Moreover, since PHP provides enhanced Object-Oriented features like inheritance and polymorphism, PDT 2.0 provides enhanced features such as type hierarchy, override indicators and type navigation for programmers who utilize these language properties.
The extension is now lighter and faster, making better use of the Eclipse framework for caching/indexing language elements. The release also includes a method for configuring your buildpath, a "mark occurrences" feature, an icon that notes overrides, improved code assist and much more.
You can grab this latest download from a Eclipse PDT page off of the Eclipse site.
Mike Lively has a new review of a book from Packt Publshing (authored by Martin Brampton) - PHP5 CMS Framework Development.
Upon reading through the book I have found that it gives an excellent case study of Martin Brampton's approach to CMS design and implementation. [...] One might be concerned that the ideas in this book are slanted towards how Brampton decided to implement various aspects of Aliro. While it is true that much of the book uses code directly out of Aliro, I feel that he did take the time to make sure he explained the reasons for the design and development decisions he made.
The more he read through the book, the more Mike felt like it was a case study of the Aliro CMS rather than a true look at CMS building in PHP5. He (Mike) lays out some of the contents of the book including the look at common CMS functionality, code organization, extensions and internationalization.
Due to unfortunate circumstances Windows binaries for PECL extensions will no longer be available on http://pecl4win.php.net. Work is being done to incorporate Windows binaries for PECL extensions into pecl.php.net and will hopefully be ready early 2009.
If you are interested in helping out on the project, join up on PHP Windows Development mailing list.
NETTUTS.com has posted their top ten list of some of the largest milestones in web development - one of which is the release of PHP.
Some believe the progression of the great World Wide Web to be a travesty, others a godsend. Regardless, the Internet has evolved over the past few decades, and is in many ways better for the web developer. New technologies have come about that have made web development much easier to get started in, and ultimately more fun.
The PHP community definitely has its choice of frameworks to choose from - CakePHP, Zend Framework, Solar, Symfony - but according to Paul Jones there's some that "suck less".
I don't mean to put words in her mouth, but I'd prefer to extend Laura's phrasing a bit. I'd argue that "all frameworks from other people suck". The "other people" part is important here. It sucks to have to learn how someone else wants you to work, and that's a big part of what a framework needs from you: to learn how to use it. Learning someone else's code is much less rewarding in the short term than writing your own code.
He suggests that your framework is better because of just that - its yours. You know how it works, the ins and outs of the features and how its been refined down to just what's really needed. He does point out, though, that:
Sturgeon's law says 90% of everything sucks, and the development world is no different. Almost nothing is perfect for every developer: there's always significant room for valid criticism on any project, and even the best projects are lacking in at least one vital area (and that area is different for each project).
Jani Hartikainen talks about some updates he's made to the ModelForm class for the Zend Framework and how its been reworked a bit to take advantage of Zend_Db_Table.
I've been reworking the ModelForm class for ZF a bit. Earlier this year, I discussed porting it to use Zend_Db_Table with Matthew Weier O'Phinney, for using it with Zend Framework. I initially had done some checking on Zend_Db_Table, and some small code changes to modify the class to use it instead of Doctrine, but I ran into some issues. Now, I've had some time to think about it, I've reworked the class slightly and added basic Zend_Db_Table support, too...
He talks about the two sides - the issues that came up (including relation support and differences between Zend_Db_Table and Doctrine) and how they were overcome (creating an adapter setup to accommodate for the relations issues).