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
Chris Hartjes continues his series looking at converting over legacy applications into a CakePHP environment with this third part, a focus on what can be one of the hardest parts - separating out business logic and presentation logic.
Anyway, onto other matters. As you saw in parts 1 and 2, a bug part in having a successful transition from legacy app to CakePHP is having an environment that is well suited to the use of a framework. Having laid out the groundwork for that switchover, it's time to talk about the part of a refactoring or porting that is most difficult: separating your business logic from your display logic.
He talks about fat models, skinny controllers and flexible views with some code to illustrate each. This method makes the models do most of the work while the controllers are more of a go-between for them and the views. The views, then, are pliable enough to work with whatever data might be thrown at them.
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).
I'm still bored and lacking posting ideas, so I figured I'd give a hyper-critical breakdown of "Four reasons to hate CakePHP" by A.J. Brown. Let's get right into it.
He responds to comments on: CakePHP's "heaviness", the (in)flexibility the framework allows, alpha releases, changes between versions, no namespace considerations and its use of global functions.
The CakePHP podcast, The Show, has posted their latest show for download - a look at what's to come in the latest release of the CakePHP framework (the stable 1.2):
On the day CakePHP 1.2 goes stable, Rafael Bandeira and Nate Abele chat about what you can expect when you go download your holiday package.
You can either download the file directly from the site or you can subscribe to their feed and get the latest shows pulled right into your aggregator.
Douglas Brown is running a poll in a new post to his blog asking which of the six choices (of the major PHP frameworks) is your favorite PHP framework.
In a perfect world, I would suggest to learn them all! However, there are only 24 hours in a day, and prioritizing your PHP framework education might be a good idea. So above I added a poll that I plead to other PHP developers out there to vote on. Hopefully after a lot of participation we will see the most popular PHP framework.
His motivation is to provide a good resource to developers looking to choose a framework and wanting to find one of the best supported and most used choices. He also solicits comments on the post if you have opinions on why one framework shines above the rest.
Just a quick note for the south american baker's and friends of cerveza: Some of the folks in Chile are having another CakePHP conference on Friday, Dec 19th(this week!). So if you want to check it out, the event is free and from my rough understanding of the schedule it looks interesting.
Speakers include Fabian Ramirez, David Riveros, Pablo Viojo and Julio Contreras M. and is happening down at the University of Chile. Check out the conference site for complete information.
In a recent post to his blog Mike Bernat gives a quick tip on how to change the default value of a data-time input field in a CakePHP application.
Automagically generated date/time input fields normally default to the current date and time. For a couple of reasons, I had to change this to another default value.
His included code shows how to modify the default behavior of the form input field for the date with an array of parameters including the hour, minute and meridian (am/pm) values for the element.
This new post on Doug Brown's blog compares two of the more popular PHP frameworks - the Zend Framework and CakePHP - in an overview of features and general usefulness.
The Zend Framework, developed by Zend Technologies is an open-source, object oriented web-application framework implemented in PHP 5. It is widely known as ZF and is developed with the purpose of making things easier for PHP developers and supporting best practices at the same time. CakePHP too, is an open-source web application framework used for creating web applications written in PHP. It is developed by Cake Software Foundation, Inc. It is written in PHP and is based on the model of Ruby on Rails.
He touches on licensing, the components available for each, how both have an "install and go" mentality (little to no configuration required for a default install) and which he believes is good for what kind of developer/project.