As a web developer with 15 years' experience with every WCMS under the sun, I can happily confess I am a Sitecore Fan boy - (and a Sitecore Consultant) My reasons are the same reasons I'm an Android and not an Apple apostle; I hate getting painted into a corner by somebody else's idea on how things should work. Thankfully, there's Sitecore; its open architecture means everything is always possible.
But therein lies something of a dilemma; Sitecore is a wonderfully deep and hugely featured product, but I paraphrase the author, who after 8 years working with the product, is "still learning", and "picking up new tips and tricks". He's not alone I'm sure; there's a lot to take in and until now, no single resource to cover it all.
It's therefore safe to say that Professional Sitecore Development is one of the most anticipated and warmly welcomed books in the Sitecore community ever. As a regular blogger and resource gatherer, John West (@sitecorejohn), Chief Technology Officer at Sitecore and all round Sitecore guru has delivered a gem.
So where to start? As John notes himself, a book about a Web CMS is something of an anachronism, but far from being a dry reference tome the book is structured somewhat like Sitecore itself. By this I mean it's builds on fundamentals, chapter by chapter, leading you through the principles of sensible data constructs then moving onto presentation and beyond. And it's this approach which makes it a "good read", as opposed to a dictionary of Sitecore functionality.
John kicks off with a good overview of WCMS in general that highlights his years of experience in the field, and while this book is suggested as a follow on for Sitecore Developer training, it's this "building from the basics" approach which makes the book accessible to anyone with an interest in the topic. The Sitecore overview would have even a newbie exploring the Sitecore Desktop in short order.
But the newbie would certainly be breathing deeply at the end of the next chapter, which tackles the big concepts of information architecture in Sitecore and blasts through pretty much everything you'd need to know to start architecting a solution from the content side of things. From data templates, to languages, validation, versioning, inheritance, standard values and file types, this section is like the Sitecore Foundations one day developer training on major steroids.
Part of the big attraction of Sitecore for me is the perfectly clear separation of content from the presentation layer and any survivor of HTML circa 1996 will can tell you just how bad code soup used to be. John makes the point that he doesn't want to duplicate the existing Sitecore documentation around presentation components and suggest chapter 3 is "terse" for this reason; I'd suggest John is being falsely modest here. The explanations around the ASP.NET page lifecycle added a depth of understanding for me and pretty soon we're into the API for what I thought was a comprehensive (if terse) rendering of the presentation side.
From chapter 3 onwards, we rip through Security, Error Management in their respective chapters before tackling Scaling Optimising and Troubleshooting, Automated Testing and Managing Implementations. And at chapter 11 we're into the gold with best practices and tips and trick. The whole book is then rounded off with a Developer Resources appendix and a chapter detailing Sitecore installation. If that seems like a too-quick summary it's only because there is simply so much information in these chapters, all of it relevant and useful and none of it compiled so comprehensively anywhere else, online or off.
So like the product itself, it's a big topic to tackle, a big book to review and impossible to compare as there is no other like it. For me John has achieved a nice balance between summarising densely technical explanations with practical real-world examples and a liberal sprinkling of coding examples. And while it's hard to get that gripping airport novel feeling with a technical topic, the net effect is a book I found inspiring. This is to the credit of how the book has been structured - starting with the basics and leading to an exploration of the endless possibilities of Sitecore.
It's a challenge to construct a first of its type, and while John has called this version 1.0, his depth of experience with the product and the web world as a whole shines through in a brilliant and matured manner. Peppered throughout are nuggets of wisdom, best practice and sensible guidance that every Sitecore developer can benefit from. And probably like every Sitecore developer around the world I want my good old-fashioned, printed-on-dead-trees copy right now.