Book Review: CakePHP Application Development

Packt Publishing Book CoverCakePHP has been around for awhile with the final 1.2 just around the corner. Despite that, we hadn't seen any books come out focused on the framework. Thankfully, not one but two books came out recently including CakePHP Application Development by Packt Publishing.

The folks at Packt were kind enough to send me a copy and it turned out to be a fairly quick read. It's 300 pages of good starting knowledge. The book is targeted as an introduction to the framework and not meant as a definitive guide (to which the book would likely need to be three times the size to accomplish).

What's inside

It begins with an overview of concepts such as MVC and how CakePHP is designed to speed development. The book then discusses installation including installation on Windows. After which, it quickly dives into a To-do application to demonstrate how quickly an application can be built.

The book covers Controllers, Models, how relationships work, and Views. It also touches on components and helpers. One of the nice pluses is that the book covers the CakePHP shell scripts for quick creation of application code.

The remaining four chapters are focused on building a sample application called QuickWall which allow questions to be asked and for people to be able to answer them. The first of these chapters builds the basic application. The next adds Authentication. Then JavaScript and Ajax support. Finally, a "catch-all" chapter that includes sprucing the application up with the TimeHelper, Pagination, and RSS feeds.

What didn't work

Now for the downsides: this book needed a copy editor and badly. Grammar and punctuation mistakes make the book difficult to read and distracts from learning the framework. Code formatting also wasn't consistent with awkward line breaks, although, this was less of an issue.

I also felt that the book didn't go deep enough into many of the features within the framework, especially when it comes to the Form Helper—which could and should have a chapter all on its own.

Finally, CakePHP 1.2 is still a moving target and has changed since the writing of the book, so you'll need to freshen up your knowledge in a couple areas to make sure that your applications work okay on the latest version.

Worthwhile?

Overall though, CakePHP Application Development does what it's supposed to: it provides a good introduction to CakePHP. If you've been developing with 1.2 for awhile, you probably won't find many surprises. This book will be great for anybody looking to get their feet wet with the framework.

Published September 19, 2008
Categorized as Book Reviews
Short URL: http://snook.ca/s/912

Conversation

9 Comments · RSS feed
Anon said on September 19, 2008

When is your book coming out? I really like your straight forward style of writing. You + cakebaker would do a pretty good job on it I reckon.

Bryan said on September 19, 2008

Hasn't 1.2 "final" been just around the corner for, oh... the last 16 months?

David Walsh said on September 19, 2008

Packt came to me about writing a MooTools book. From what I've seen, the copy editor / grammer issues are abundant, which is why I didn't consider that offer very long. Part of that, of course, is on the author, but they're paying for the programmer's expertise and not English skills.

Thank you for this review.

Rob said on September 19, 2008

Despite some flaws, in the end i thought 'CakePHP Application Development' was a good introduction to CakePHP... that was until a receive 'Beginning CakePHP' by David Golding.
Believe me: you can skip 'CakePHP Application Development' and go for 'Beginning CakePHP', a very well written book and an excellent introduction to CakePHP ;)

Jonathan Snook said on September 19, 2008

@Anon: writing a book takes a lot of work. Too much work for me. I'm happy pitching in with the documentation when I can (and hopefully getting it to the same stage as a published book).

@Bryan: But I swear, this time, it's really close. I mean it. (Not that I actually have any control over the matter.)

Shaal said on September 19, 2008

I only remember someone loved CakePHP so much that he even made his Web Site as a copy of the original CakePHP site.

*sorry offtopic*

Mehmet said on September 19, 2008

This might be offtopic as well but, I would like to hear your opinion about CodeIgniter. I've recently made a comparison and decided to use CodeIgniter for a project. Do you think any one of them has an obvious advantage over the other?

Mike Birch said on September 22, 2008

I bought “Beginning CakePHP” by David Golding and found it also suffers from poor editing. It's overly verbose and repetitive. I enjoy learning from books, but I would recommend learning CakePHP by diving in and using the framework in conjunction with the on-line resources - see http://cakephp.org/#learn
It's also useful to check out the Bakery and CakeForge for code examples.

Paul Redmond said on September 26, 2008

I came to similar conclusions that you mention here. Grammar was painful at times.

The biggest pro of this book is that there is a good ratio of code to words =).

Sorry, comments are closed for this post. If you have any further questions or comments, feel free to send them to me directly.