CMS Solutions and I.S.: Part One
As any web agency knows, a CMS development platform is integral to delivering solid, flexible and cost-effective data-driven solutions to its customers. It doesn’t matter if the project is the simplest of brochure sites designed to be seen by thousands, a corporate brand presence meant to be seen by millions or a web application service to be used by (hopefully) an ever-expanding list of sign-up users. And any web agency that has been in business as long as Interactive Strategies, has seen CMS platforms come and go … the good, the bad and the downright ugly.
This post is the first in a two-part series where I will break down Interactive Strategies’ CMS evolution.Here I explore our history with CMS platforms; our experiences, successes, near failures and lessons learned. In Part 2, I will expand on the best platforms; the ones we now offer our customers, and the reasons why we’ve made some really great decisions. I’ll also briefly cover the science of the CMS and how it impacts agencies that are dependent on solid frameworks to move forward into the future of web development.
With that, I give you Part 1, A short history of CMS Platforms at IS.
Afterall, to know where you’re going, you have to understand where you’ve been.
The Extremely Early Years (2001-2003) – Our agency started out with Strategy, Content and Design departments. Thus we looked externally for technology solutions to fulfill for our client’s needs. Almost 10 years ago, our very first platform was an early CMS from a company still in the business today (a rarity for a CMS application company that got its start in the dot-com heydays), Interactive Tools. The system was simple enough for someone with minimal technical training to set up, but flexible enough for the need at that time. It was a CGI application that used HTML template files to “publish” pages of a particular type by reading the template, substituting values for tokens and then actually writing out another HTML file which would live on the website and retrieved by a generated aggregate page (again from a template). There was no database; the aggregate page was built by reading file names in certain directories and providing links to those pages. I use the past tense to talk about this system, and nobody would think of building a CMS like this now, but this site is still up and running and serving the simple needs of the client perfectly well.
The Early Years (2003-2005) – The next platform used for several of our early clients was much more robust. We contracted our friends at Agency Q (then known as Q Industries) to use their technical prowess to come up with a modern, dynamic, customizable CMS platform that we could use in cookie-cutter fashion for our client’s sites. The partnership was so easy because we shared an office space where they developed (with our feedback) a semi-custom PHP and MySQL platform that was truly dynamic and lightweight. It was easy for the designers and production programmers to bring their design concepts to life with this application, but it still required a considerable amount of code customization to drive the data templates and design views for each specific client need.
The Adolescent Years (2005-2007) – IS at this point had all five departments (Strategy, Design, Content, Marketing and Technology) fleshed out and ready to contribute to the company and our clients. We needed a homegrown CMS platform to call our very own. Open source, lightweight and easy-to-use CMS platforms available at the time were not up the scalability, stability, robustness or ease-of-use standards that we demanded for our clients. The obvious solution was to build something from the ground up … the roll-your-own approach, if you will. Since our specialty was the LAMP stack, that’s what we’d use, and the hottest web development architecture was MVC. We did our research and decided to embark on a development project using CakePHP 1.1. Although we started with grand ambitions, neither CakePHP, nor the abilities of our programming department were up to the task … at first. Through perseverance, education and hard work, our efforts bore fruit. We built successful brochure sites and ecommerce sites with this new platform, and we used it for several years. This was a learning experience for all involved.
The Grey Squirrel Years (2007-2009) – With knowledge in hand, it was time to start fresh and build another iteration of our homegrown CMS. This time we elected to not use CakePHP or any other framework, but to use straight PHP, build a custom Data Access Layer with Object Relation Mapping similar to Cake’s and add a lightweight rendering engine that would give maximum flexibility to the design and UX departments. For reasons still unknown to me, the finished product was christened “Grey Squirrel,” and that platform has served many of our best clients for some time now. It has proven robust technologically, but because the whole codebase is transparent to developers, it’s easy to alter and extend. The best part of the system is its ease of use for administrative users. Interactive Strategies brought the best learned lessons and state-of-the-art thinking to the administrative systems on Grey Squirrel. The user experience is simple, intuitive, fast and easily extended as new requirements emerge during the site’s lifetime. Technical and design experience at this point in the company had come together to create a wonderful combination ease-of-use and stability that is hard to match in an off-the-shelf, one-size-fits-all CMS package.
There was risk involved and a few times we were near the end of our rope with a product that seemed like it would not be ready in time (or ever) but we persevered and learned the hard lessons that we enjoy to this day. Risk is not the friend of the business leader, stability is. Stability in platform is stagnation to the programmer. But with change comes risk. What was the next phase for IS in its tandem goals of pushing the envelope but delivering predictably? Find out in Part 2 of this series.