This book is an interesting exercise in penetration and security testing for those using Python. In the beginning, it talks about how this book can be used for all sorts of people, from the beginner in Python to more expert Python users. I would have to say that if you're just now learning Python, you should start with a different book and once you have the basics down, then come back to this book. It goes over the basics but doesn't mention anything about syntax so if you don't already know the real basics, you're not getting it here.
Overall, this book is quite useful for learning how to do penetration testing and in some ways, I question if we want to teach people how to write worms and how that type of thing works but honestly, you can find all that information online for free. It's not really the intent of this book either but could be a negative byproduct.
What I wasn't a fan of was the fact that the code steers readers to use an outdate version of Python (2.6) when some of the code and libraries used in the book are actually from a newer, stable version (2.7.1). Being such a new book, it's a bit of a surprise that an outdated code base is used.
I also found the book assumed a little too much of the reader/user. The first chapter goes over the basics and also some basic testing of servers but doesn't explain you have to have one set up that you can test against and if you don't have one to test against, it's hard to test out the code that's given.
Overall, it's pretty good but you really need to know your stuff fairly well for it to really be worthwhile.
Disclaimer: This book was received as part of the O'Reilly Blogger Review Program. All comments represent my thoughts and opinions.