After having been in the trenches for some time now to produce an updated manuscript for the forthcoming 2nd edition of the German Online-Shops mit Magento to be published by O’Reilly at the end of May, I’ve found the time to have a closer look at two other books dealing with Magento. These are Magento 1.4 – Themes Design and Magento 1.4 – Development Cookbook, both published by Packt Publishing. What follows is a short review of these books designed to make Magento designers’ and developers’ lifes easier.
I would like to begin with a 280-pager dedicated to Magento’s design related aspects. Those of you who’ve already done some work with Magento know that not only is the design architecture quite complex, but it is also using a terminology quite different from what you might know from other shopping carts or content management systems. A Magento layout, for example, does not refer to something a designer would produce in Photoshop, but rather to a set of XML directives which control the overall appearance of a certain page. Likewise, a template in Magento is not a collection of items which compile the browser output, like in osCommerce for example, but rather a single file formatting what is called a block in Magento. After the first chapter, which provides an overview of the way in which the Magento frontend presents itself to the user, introduces several showcases of popular web stores using Magento and explains how the software is installed on the server, the author Richard Carter explains the Magento-specific terminology and how the individual parts of the theming system relate to each other. He mentions the Magento multistore setup and draws attention to the fact that thanks to the fallback-system, one does not have to duplicate entire themes but rather change only those that are relevant to the current project.
In the ensuing chapters, the author looks at theming in more detail and provides a range of examples, so that readers can gain their first hands-on experiences by following what is being done in the book. For my taste, there’s a slight tendency to overuse full-page screenshots to support the explanation, however, the examples are well documented and easy to follow. The last chapters deal with the way in which transactional emails in Magento can be customised and contain a step-by-step description of how social networks and services such as Twitter and Facebook can be integrated into a Magento installation.
In summary, I would recommend this book to Magento-ians who have already got their feet wet with Magento and know their way around the admin panel. If you want to know which knobs to fiddle with in order to make appear Magento the way you want, this book is for you.
The second book clearly addresses developers who want to make functional changes and really dive into the system. It’s a 270-pager written by Nurul Ferdous in the style of a cookbook: This means that rather than explaining things step by step and laying a theoretical foundation, the Development Cookbook is a collection of so-called recipes that provide pragmatic solutions to common problems. Rather than reading it cover-to-cover, people will mostly jump to specific recipes to find the cures for their illnesses. For this reason, in my opinion it is best used in combination with some sort of documentation that provides some more background.
The recipes in this book cover a lot of ground and require different skill levels. For example, there are administrative topics such as setting up a configurable product – which does not require any programming skills at all – as well as advanced recipes such as creating customised modules and widgets and making sure the right source models are used. Moreover, the recipes do not only deal with topics that are exclusive to Magento but also include setting up MySQL database replication and benchmarking the application’s overall performance. All of these topics are losely connected and organised along chapters such as Performance Optimization and Creating a Module.
In summary it can be said that the topics cover some of the most often discussed problems and requirements that occur during Magento development. As such, the author provides a valuable source for developers seeking easy-to-implement solutions.