In an effort to dispel some of the rumors and myths around the CakePHP framework (as presented most recently by a different blogger) Chris Hartjes has made a new "mythbuster" post to his blog today with a rebuttal to the points from the other article.
I ran across an article comparing CakePHP and Symfony and found that the writer had a number of preconceived ideas about CakePHP. These same ideas keep popping up everywhere, used by people looking to get their hate on about CakePHP. I sent a very well-reasoned email to the writer clearing up some of those misconceptions [...] So, in the interest of clarifying things about CakePHP I thought I would share that email, slightly rewritten for this blog posting, but the content is roughly the same.
The post/email covers a few different topics some might have misconceptions about concerning the framework:
Lack of Documentation
Scaffolding
Models are tied to controllers in a 1:1 relationship
Cake's Ajax and Javascript helpers do not support graceful degradation
Mike Davies has posted a comparison he's worked up between the CakePHP and Symfony PHP frameworks:
Asking around in work (well, the extended group of web developers that used to be the phenomenal Yahoo Web Dev team in London, and Munich) for PHP framework suggestions, the most frequently recommended one was Django (go figure!), followed by symfony, Code Igniter, and one solitary suggestion of Cake PHP.
He gives overviews of each citing things like features, database integration, how they implement MVC and documentation. His comparison is quick, pointing out that the right tool for his job ended up being symfony - a bit more complicated, but more of what he needed.
Ray Cheung posted his comparison of the Zend Framework and CakePHP a little while back to share some of the thoughts and research he did to pick one over the other for his application.
A lot of people have been asking for some comparison articles for some of the popular frameworks. [...] Overall, both these frameworks are good to use as per your requirements. CakePHP is suitable for developers new to MVC and those who require stricter conventions. ZF is a choice for those who need better control over the application design and built-in support for renowned Web services. Both the frameworks are developing fast and the choice is entirely yours.
He includes brief overviews of each framework and comments on documentation and configuration issues surrounding them.
Commentors on the post include Nate Abele (of CakePHP) and Wil Sinclair (of the Zend Framework).
Stuart Herbert, prompted by this post from Derick Rethans uses this new post to his blog to point out something that didn't seem to be mentioned and has always been a pet peeve of his when running PHP on IIS - controlling the FastCGI processes so they don't take over the machine.
Running PHP via CGI and FastCGI means that IIS has to do the Windows equivalent of fork()ing off PHP processes to do the actual PHP bit. If your box has too many PHP processes running, the box will start to swap. Once a webserver starts swapping, you've no chance in hell of keeping up with all the incoming requests, and your websites on that particular webserver become unavailable in a matter of moments.
The problem seems to have been corrected in the most recent IIS release, though and correct directions can be found here. Older versions of the web server are out of luck, unfortunately.
Stefan Koopmanschap has a new post to the Ibuildings blog today about symfony's 1.2 release.
The first day of december started well: It meant the release of the new symfony 1.2.0 version. Aside from the additions and improvements in the code, this new branch of symfony also reinstates an old tradition in symfony: It comes paired with a huge amount of documentation in many forms. Let's have a look at what symfony 1.2 has to offer.
He mentions multiple updates and changes to the framework as well as three specific improvements in the realm of documentation - the jobeet advent calendar, a symfony + doctrine book and the constant stream of tutorials coming out of the community.
Padraic Brady has posted part one in a new series he's developed covering documentation (and using Docbook, Phing and Apache FOP to create some professional looking results).
This article series proposes using Docbook XML as the ultimate source format for all documentation. The difference between most formats and Docbook, is that Docbook can be used to generate numerous final formats. [...] The series was written to introduce programmers to a PHP oriented publishing process which uses Docbook XML as the basis for generating professional looking HTML and PDF output.
Part one introduces the "ingredients" - Docbook XML, PHP5, Phing and Apache FOP - and includes an install process to help you get things set up.
On the Hurricane Software website they've done a comparison between PHP and Python judging them based on things like feature set, community and documentation.
What does it take to state one language better than other? One answer can be flexibility, development friendly, licensing policy (open source or commercial), community, portability, dynamic typing, support for variable number of function arguments and ability to freeze live objects in a string representation. Documentation of course is a major player when you choose a language because you still have to sharpen your skill and you haven't worked on that particular language yet.
They go through a list of the prominent features of each language as well as some basic benchmarks for mathematical operations like finding primes below 10000 and looping with a bit of calculation. They compare the two languages' speed of execution, speed of writing, ease of setup and portability.
You can also listen to the report via the in-page player.
Christian Weiske set out on a project - no small thing - to convert the current PEAR documentation info over to the PhD DocBook rendering system. In a new post he talks about the conversion process and some of the technology involved.
The reason for PhD to exist was that the previously used DSSSL based system was slow: a full build (all formats and all languages) took 24 hours to complete. Further, the tools the system based on were old, rusty and nobody understood why they broke on some machines, but also why they worked on other ones. Having a php-based system for PHP ensures that there is always someone around who can fix it if it's broken. This wasn't the case with the old documentation build system.
The conversion was spurred on by the fact that the PEAR documentation stopped building and more and more people were finding it hard to build on their machines too. He walks through the steps he took - installing PhD, converting over the docs to the DocBook 5 format and the first builds with the new system.
Now that at the XML was shiny, too, it was time to actually use PhD on it. The numbers were amazing: While a build for one format and one language took around 40 minutes on my system (dual core Macbook with 2GHz and 2GiB RAM), building the same with PhD takes 45 seconds!
In a new post to his blog Jani Hartikainen wonders if, out of all the PHP frameworks out there, the Zend Framework is the right one for those new to the scene should be starting with.
I've heard some inexperienced PHP programmers say that Zend Framework is confusing to them. Until today, I have agreed: Zend Framework has a lot of classes and some of them are quite complex (such as Zend_Form). But does that actually make it more difficult for inexperienced programmers than other frameworks?
He argues a bit for and against, noting that the ZF docs can eb a bit thin in places but that the framework's architecture more than makes up for it (even if you're not completely sure how it works, you drop it in and it still does). He also mentions some of the hurdles they've had at his work trying to get yunger developers up to speed in their development with the framework.
Robert Basic recently posted this introduction to the Zend Framework, a simple overview to how the framework is laid out and how you can get started.
Zend Framework is a big & heavy object-oriented framework for PHP. I started working with ZF a couple of months ago, I liked it's documention (it's very well documented) and decided to stick with this framework. Here is the latest version of the framework '" at the time of writing v1.6.1.
He talks about the framework's use of the MVC pattern, its coding standards, and some of the basic terms and file structure behind a simple ZF application. He's even included an .htaccess file and a sample bootstrap (index.php) to get you started.