The book presents a lot of useful information, but it's poorly organized. I end up having to do a ton of Googling when working through this book. Getting through chapters is really difficult. The author will have you write heaps and heaps of code before running it. I'm not sure if he does this out of laziness or because the publisher asked him to keep the page count low. Either way, it's a huge pain when I mistyped something and I have to go back through the last 15 pages to see where my typo is. The better way would be to have readers test their code every time a change is made. I have read books on equally complex topics, and this one was bad enough for me to write my first negative review on an Amazon account I've had for 14 years.