This book has many typos which is not a big problem for learning the content, but is surprising. The examples can be difficult to follow. Code is given but it does not tell you where or what file to put it in. Sometimes it will reference work you have done to your sample project when you cannot remember it telling you to do those tasks. It makes for some trial and error which, unintentionally, may help you learn better because figuring it out makes it stick more than just reading. All in all I think it covers the subject well for developers who are not yet familiar with the technology.