Finally the email tool that I built for a client has finished sending its first batch of newsletter. I'm quite proud of this project, I think this is the first project where I really was given responsibility to lead the technical team and it was quite challenging technically too.
Couple of major problems that I encountered during the development phase:
- Tracking the email marketing. How to know how many people open the email, what link they clicked etc2. I borrowed quite a lot of ideas from the email marketing service providers like MailChimp.
- Our company using an object based page composer for our CMS, I was porting this and modifying it for email composition tool. Due to email specific issues like lack of CSS support, this task was particularly challenging to me. Getting an HTML email to work in Gmail is really a challenge.
- Client keeps on changing his mind which at the moment causing major reworking on some aspects of the architecture.
I learned a lot about Coldfusion's ability of schedule tasks, all of our system are using combination of Coldfusion scheduler and database structure to make the task scheduling easy and versatile. I found that this is one area where Coldfusion is better than PHP. Task scheduler is not a part of PHP, usually we need to use cron job for task scheduling in PHP based sites and setting a cron job requires a considerably more effort than setting a schedule task in Coldfusion server.