I’ve always loved the word “hacker”. Not in the negative way, but in the way Mark Zuckerberg defined it:
“Hacking just means building something quickly or testing the boundaries of what can be done.”
In 2012, in his open letter to prospective shareholders, he stated, “The Hacker Way is an approach to building that involves continuous improvement and iteration. Hackers believe that something can always be better, and that nothing is ever complete. They just have to go fix it—often in the face of people who say it’s impossible or are content with the status quo.”
I decided to put this approach in practice for our own Demand Spring email template. I wanted a foundation that will enable us to prototype email layouts and be able to make quick iterations. To build this foundation, we needed to break every element of our email template into modules.
Marketo’s Email 2.0 editor provides you with the ability to create an email template that enables a modular format. Instead of creating multiple templates for different use cases, you can put all possible elements into different modules within the same email template. This provides you with the ability to swap, delete, and reuse elements within each email touch.
Building a Modular Email Template in Marketo
Here is our first iteration building our central email template that can be used for multiple use cases.
Each module can be removed and/or reused within the same email asset, in any order.
You can create an email with modules such as “Logo: With Social”, “Header: Text”, “Copy: Basic” and “Footer”. Or you can create an email with “Logo: With Social”, “Header: Text”, “Header: Hero”, “Copy: Basic”, and multiple “Copy: 3 Column” and “Footer”. If you decide to change the layout of the email in mid-stream, you don’t have to rebuild it from scratch. You can also introduce new modules in the same email template. As you develop more email assets, you may come across various use cases that you did not think of previously. You can update your existing email template and add additional modules.
You can also introduce global variables to change the color schema of the buttons or background colors.
I’d love to hear your thoughts! If you have another “hack” please leave it in the comments.