Was pretty excited about this book because it's the only Yii book out there.
I'm up to chapter 8 so far.
Anyway, there are bunch of errors and certain system administrative encounters.
The skills require for this book are php5, OOP, LAMP skills, and google/stackoverflow/serverfault ninja skills. You would probably want some database design skills for just those foreign keys or at least a basic understanding but I think you can do without it.
Here's what I've encountered:
-PHP 5.3.3 They change the timezone and stuff. If you read the error carefully you can fix it by adding a line of timezone code in the yii file.
-Font Mistakes
-Code style and format is ugly. I mean seriously when I'm reading the book and there are if and else loop nested 3 times, the author doesn't really have a great coding style and the way it is layout in the book just makes it harder to read.
-typos in url and there are typos in code
-The SQL schema is also wrong because the way it declare the primary key will have mysql complaining, typo.
-I believe this is more of a software fault because the foreign complain unless you have the same datatype ie INTEGER and INTEGER instead of INTEGER and INTEGER(4). I've asked this on stackoverflow could be my mysql version.
-Did I mention the typo? Here's the worst lines I've came across: pg 129, with words like "thehe uof" and "conssue", yeah, gibberish that need editing. I know I'm pretty damn bad at grammar but seriously this is pretty bad.
-pg 163-164 for the UserIdentity::authenticate() It's really different. I've check version 1.1.1 and it's almost the same where as the version of Yii I'm using is 1.1.3. I've also checked with the source code and the code is different too! It's like a typo mismash with some other function login function in the LoginForm php file. I don't think it's important but still highlight the fact that this framework is constantly updating and the typo does add to the frustration.
What I find myself doing:
I find myself easily lost in the grand scheme of MVC. I dived into the chapters, implement the code and parts of the application and I easily get lost in the details. What I do after I finish each chapter is step back and print out the code and review it. I also have a pretty big white board to draw diagram of how the models, views, controllers relate to each other when I insert the codes. I review why does the author do this and what the hell is going on. I think this is the best approach, at least for me.
Oh, it takes the errata page forever to post errors. I've sent like 8+ errors and I don't see any of mine in there (4 ish months now?). Please check the errata page for any errors.
What this book needs:
-Editors and more diagrams.
-Perhaps be a bit more friendly with those that aren't good with LAMP stack or WAMP, if they want to broad out their reader base. I got my Lamp skills so I ain't complaining.
-Oh, it also need a new edition that isn't fill with typo.
-Get someone that knows nothing about Yii and get that person to sit down and try to learn the book. Whatever wtf questions, typos, and errors he/she encountered have that person write it down and fix it. Because when you know about a subject and write a book about it, sometime you tend to assume that they know what you're talking about or assume a certain thing and so you end up explaining very little. This is like assuming that the readers can read your mind. I think this is the hardest part for most technical books.
-I've seen all these positive reviews for packt because they have a program where if you have a blog they'll give you free pdf if you review their book. Those reviews are buncha yes people. I'm not even sure sometime if they actually go over page by page or if they just skim them. GET a real person that know nothing and is willing to learn it to critique it so you can have a better product.
Does the book get the jobs done?
Yes, only if you're willing to work your butt. If you encounter any typos or anything you better learn how to google, stackoverflow, or serverfault it (they're websites!). If you're going to get lost in the details then learn to code review and review the chapter you've just read. This doesn't hold your hand and it cannot explain every single details you're going to encounter that isn't Yii related, ie system admin stuff.
It would be a 4 star if it weren't for those combination of typos, errors, and hard to read code layout. I can understand little typos but seriously these typos are pretty major that contribute to errors.
I recommend this book, if and only if, you're willing to work at it and have the necessary skills.