Blog - News, interviews and lots more
Book Review: SilverStripe 2.4 - Module Extension, Themes and WidgetsTweet
6 June 2011 | | | Supports v2.4
For a while now the only printed documentation available for SilverStripe has been the official book which, although excellent if you are willing to put the time into completing it, is now slightly outdated having been written for SilverStripe v2.3. Enter a new book written by Phillip Krenn and published by Packt; SilverStripe 2.4 - Module Extension, Themes and Widgets. Despite the slightly misleading title, the book takes you through the entire process of building a relatively complex site for a local bar by extending the core functionality as well as using various Modules and Widgets along the way.
The author, Phillip Krenn, has extensive experience with SilverStripe dating back to 2007 when he took part in the Google Summer of Code, contributing to the ongoing task of allowing SilverStripe to support multiple database (besides MySQL).
Who is it for?
The book is aimed primarily at those who have started playing with SilverStripe and are now ready to take it to the next level. You'll need a decent knowledge of HTML, CSS and to some extent PHP in-order to get the most out of the book, although having said that even web developer newbies should be able to follow along reasonably well as the author breaks down the steps nicely and provides a nice balance of practical examples, simple explanation and the theory behind what you are doing. There is even a pop quiz at the end of each chapter to test how much you remember, with the answers and surprisingly extensive explanations provided in the back.
What does it cover?
Quite a lot actually, and for the most part it does well not to overlap the Official Book too, meaning you can get a decent amount out of reading both (for those of you with lots of time on your hands!).
Of course the first few chapters cover the basics and give a decent introduction to what SilverStripe is and how it's setup as well as the basics of building your first site with it. By Chapter 4 we are getting into some more technical aspects and use the interesting module 'DBPlumber' to provide a visual database management interface right from within CMS. Personally I have reservations about using this sort of module on a production site, but for the purposes of this book it actually serves it very well, meaning you can observe everything happening in the database without having to leave the SS environment.
The next chapters cover some slightly more complex subjects such as Shortcodes, Widgets and creating Modules, with chapter 7 using the creation of an Image Gallery as it's practical example.
The final couple of chapters cover some more advanced Subjects like Forms, Sessions and Localisation (including Multilingual sites).
There is also a 'Lost Chapter' available in PDF form which covers some more 'application' style elements such as ModelAdmin, Permissions and Decorating. I actually feel it's a real shame that this last chapter didn't make it into the book as for me this is where the most 'meat' is. It's not that the rest of the book is light on content, it's just that having covered all of the basics and a few more complex subjects, it seems strange to miss the final chapter where you finally get a taste for SilverStripes more powerful features.
Should you buy it?
Well as always that depends. If you are just starting out with SilverStripe and are finding the fragmented online docs and forum frustrating then yes, you should definitely get this book and go through it chapter by chapter, you will gain a good solid understanding of SilverStripe and be able to take those skill much further in future with less frustration.
If however you already have a pretty solid understanding of how SilverStripe works, have build a few sites which use things like DataObjects, Forms and ModelAdmin and are comfortable exploring core files and searching the forum for answers then you are probably already beyond this books scope. In this case, the official book would still provide more 'meat' despite being slightly outdated.
The final word? If you are new to SilverStripe and/or CMSs' in general then this is a great way to jump start your SilverStripe development skills. If on the other hand you have already gotten to grips with SilverStripes core features, you may find this book offers you little in the way of new knowledge, even with the "Lost Chapter" included. Having said that, if you have the time it never hurts to have a refresher and fill in the gaps with a book like this, which is well structured and does cover a lot of ground.