- Magento Front Controller
- Reinstalling Magento Modules
- Clearing the Magento Cache
- Magento’s Class Instantiation Abstraction and Autoload
- Magento Development Environment
- Logging Magento’s Controller Dispatch
- Magento Configuration Lint
- Slides from Magento Developer’s Paradise
- Generated Magento Model Code
- Magento Knowledge Base
- Magento Connect Role Directories
- Magento Base Directories
- PHP Error Handling and Magento Developer Mode
- Magento Compiler Mode
- Magento: Standard OOP Still Applies
- Magento: Debugging with Varien Object
- Generating Google Sitemaps in Magento
- IE9 fix for Magento
- Magento’s Many 404 Pages
- Magento Quickies
- Commerce Bug in Magento CE 1.6
- Welcome to Magento: Pre-Innovate
- Magento’s Global Variable Design Patterns
- Magento 2: Factory Pattern and Class Rewrites
- Magento Block Lifecycle Methods
- Goodnight and Goodluck
- Magento Attribute Migration Generator
- Fixing Magento Flat Collections with Chaos
- Pulse Storm Launcher in Magento Connect
- StackExchange and the Year of the Site Builder
- Scaling Magento at Copious
- Incremental Migration Scripts in Magento
- A Better Magento 404 Page
- Anatomy of the Magento PHP 5.4 Patch
- Validating a Magento Connect Extension
- Magento Cross Area Sessions
- Review of Grokking Magento
- Imagine 2014: Magento 1.9 Infinite Theme Fallback
- Magento Ultimate Module Creator Review
- Magento Imagine 2014: Parent/Child Themes
- Early Magento Session Instantiation is Harmful
- Using Squid for Local Hostnames on iPads
- Magento, Varnish, and Turpentine
In 2014 a newcomer to Magento is, all things considered, in much better shape than a newcomer was in 2009. While far from complete, the developer’s series (originally written by me, since updated by Magento staff) gives a developer the grounding they need in Magento’s sometimes-convention-sometimes-configuration MVC system.
I’m often emailed by developers who, once grounded in the system conventions, aren’t sure what’s next. Many want to pursue certification, others just want to make sure they’ve jumped down the right rabbit hole when working on their own system customizations.
Until recently, I haven’t had much advice for these folks other than “Do more Magento and ask questions when you’re stuck“. Commerce Bug’s a great tool for any Magento developer, and No Frills Magento Layout gives a front-end developer the grounding they need in the layout system, but until now there hasn’t been a resource that really helps a developer apply their new knowledge.
I say “until now” because of the new Grokking Magento study guide series, which is the perfect next step for a developer looking to sharpen their skills.
Grokking Magento grew out of the work of Magento power training duo Vinai Kopp and Ben Marks. Vinai and Ben, both accomplished Magento developers in their own right, have been the public face and lead-trainers of Magento’s developer training sessions for a number of years. This means they not only have the required knowledge to write proficiently about Magento, but it also means they’ve spent thousands of hours training developers and know where the cruxes are in Magento’s learning curve.
This first book in the series, authored by Vinai, uses Magento’s Request Flow as a jumping off point for deeper topics. After a quick chapter on setting up your Magento editing environment and a review of testing frameworks, we get to the meat of the book. Vinai and Ben have taken 7 examples from the Magento study guide
- Rewrite the sales order model to add customer group ID to email template
- Redirect to
/when users access CMS homepage directly
Controller action rewrite to manipulate
Custom front-end controller route using Response Body
Dynamic/Conditional class rewrites
Diagram the dispatch process
Store view selection priorities
For each topic they restate the problem, cover real world scenarios where the task might be useful, provide a step by step guide into how you’d research the particular issue in Magento’s code base, and then provide a solution to the problem.
Beyond the obvious benefits of providing cookbook style solutions to specific problems, the real value of this book is explaining the thought process of how to solve these problems on your own. While the book is subtitled “Basics and Request Flow”, you’ll end up learning about other overlapping systems. Vinai and Ben teach you how to think like a veteran Magento developer, and that’s a skill you’ll apply over and over again in your day to day work.
The book is also littered with bits of Magento technical/historical trivia that tries to explain some of the seemingly odd technical choices that the core team made over the years. While not strictly necessary, these sections provide a little context around what most of us call “Magento being Magento”, and are a nice treat if your curiosity bends that way.
The book wraps up with a quick appendix section on
Varien_Object. Instead of a typical “getter and setter” retread, Vinai and Ben cover a few of the lesser known features of
Varien_Object based objects.
All in all, Grokking Magento is an excellent addition to the world of resources available to aspiring and established Magento developers. If you’re wondering where to go next, it’s an excellent choice, and even if you’re an experienced Magento developer you’ll pick up a trick or two.