First off, I have to say that Matt Butcher is an excellent writer. I really like the way he takes a concept, let's you know where he is going, and then follows up with a lucid explanation. He does a great job of explaining his code.
However, on reading the other glowing reviews listed here on Amazon I seriously wonder how many actually tried to work through the example code contained in the book.
Chapter two gives the foundational example of building a module that accesses an RSS feed [...]. The code in the book does not work. So, diligent little beaver that I am, I went to the publisher's web site and checked the errata file. Sure enough, there were corrections to the code. After updating the code, it still didn't work. Finally, I downloaded the code examples from the publisher and found that the working code is *significantly* different than the example in the book! The changes found in the downloaded code not only differ from the book, but also from the corrections in the errata.
So, why do I still give this four stars? Well, it is still a very good book. Matt's skill as a technical writer is noticeably above the majority of technical authors I come across, and you will learn a great deal through reading this book. Just be sure you download the code archive from the publisher, and take the code in the book with a grain of salt until you compare it.