Daniele Bochicchio | Stefano Mostarda | Marco De Sanctis
Pages: 504 | ISBN: 978-1935182467
About a year ago, Manning was kind enough to allow me to review a book of theirs, it was in the pipeline then and now out in the market. I had access to this book as part of their Early Access Program and reviewed it multiple times in the draft phases. Now that it is out in the market, I thought it would be nice to blog about how it started and how it turned out in the end and provide a basic review for future buyers.
Overall, this is a great book for intermediate level programmers. And it is important to say right at the outset that it is NOT a book for beginners. In fact, the foreword clearly says so. It doesn't aim to be a complete reference, rather it is a collection of best practices presented in a Q & A + Discussion manner.
Where It Works
You can just pick up the book, read the theory, practice the code snippets given and you are ready to go. Don't be surprised if you end up using the code snippets in many real life problems in enterprise web development.
The chapters in Part 3 onwards are independent of each other and presented in a capsule-course manner, so can be read by themselves.
Initially, I commented that there isn't enough pictorial representation of concepts which they have taken care of somewhat.
Where It Could be Better
A beginner may not find the explanations easy enough to understand. The chapter flow is certainly not helping. (Ch 2 talks about EF?!) For a beginner, it will be difficult to understand certain advanced concepts such as "Path canonicalization vulnerabilities" in the chapter on Security and almost the entire chapter on Performance. Basics of these topics/problems need to be explained a bit more before a solution (and hence the ASP.NET advantage) is proposed.
Also, I found the writing very incoherent. There are plenty of grammatical mistakes. Even without that, I feel, the authors are in a hurry to reach the code snippet and don't cover the theory behind it in-depth.
Good for intermediate level developers, but not good enough to get them to an expert level. Definitely not for beginners.
I am not affiliated to the authors or publishers of this book in any way.