Why Dirigo Built a CMS Solution Now01/13/2014
In the fall of 2012 a conversation took place in the bowels of the tech area at Dirigo. We were starting a website project for ourselves. The goal was to publish Dirigo’s new responsive website in the first quarter of 2013. Someone said, “what CMS should we use?” Embraco, ADXPortals/Dynamics, Ektron, WordPress, Drupal, PixelSilk, DotNetNuke (DNN)? Cold silence for a moment or two. And then the discussion turned to a list of dislikes of most all CMS systems.
The conversation quickly turned to WordPress and the subculture of so-called "Web Developers" who know nothing but basic HTML with a wee bit of CSS plus a dash of WordPress-specific PHP. Not our deal!
Our clients are wicked smart. They're not just buying a pretty picture.They're buying an application-the code. Performance, extensibility, speed, and functionality all make a huge difference. We're not taking brands from start up to good. We're hired to go from good to great (like $18,000,000 to $45,000,000 in sales in short order). Our customers inspect our source code before they decide if we're worth talking to. So we've insulted you WordPress types? Chill out. We build and manage WordPress sites. Drupal too. We use lots of different CMS's.
We don't choose WordPress that often. Not for our clients and not for ourselves. A five minute install, really a snap, is not much of a savings when we're doing one, two and three thousand hour projects. Our typical timeline is months. Saving a few minutes is not a consideration. Themes and extensions are great for the masses. But, our clients have specific wants and needs. They're not that interested in saving a few bucks to buy some recycled theme that looks like every other website. They want to optimize the f&#k out of everything so that they get the very best conversion.
We’re not in the occupation of persuading folks to use or not use one CMS or framework over another. That is, unless you’re a client who needs our guidance to hit the mark, then it’s definitely our business. We make it our business because our reputation is on the line. WordPress is a solid solution for some, but, inexperienced customers request it when it really isn't appropriate. We wanted something for our business segment—the non-WordPress world.
You're looking at it. This DirigoDev site still runs on the pre-Alpha version of the DirigoEdge CMS. It's great, but, lacks the bells and whistles that came later on. We don't even call this version DirigoEdge. Someday our Dirigo site (really, the cobbler's shoes) will get upgraded to our best stuff.
Here's what we wanted from our CMS:
We wanted a truly responsive (RWD) platform built on the newest technology (MVC, Zurb Foundation [now Bootstrap], swipe first and click second). We also wanted a blend of adaptive web design (AWD). We desired to center on "touch me" and "I’m mobile first".
- We desired to use an enterprise tool-set like ASP.NET. .NET is a thriving non-PHP market and as of early 2017 it is Open Source. We like the .NET space.
- We didn’t want to be burdened by bloat and unused features in our CMS.
- We wanted to use Ajax goodness coupled with HTML5's 'onpop' state to change the browser url without reloading the page. This allows a developer to create a website that no longer navigates from page to page, but from content to content, without ever reloading a frame.
- We didn’t want the security hassles that came with many of the big name systems.
- We did not want to be forced into upgrades.
- We wanted the ability to fix/change any piece of the system.
- We wanted to build and reuse functionally that is totally separate from the presentation layer the way developers do it best - in HTML and CSS without wrapping ourselves around theme engines or the CMS.
- We required strong source control able to meet the stringent PCI, HIPAA, SAAS 16/70... requirements. Security is a big deal and it is going to get bigger with all these cyber breaches. WordPress makes it easy to install themes and plugins through the administrative interface. This includes malicious executable code.
- We required best in class SEO functions. This includes new and emerging edge cases.
- We desired complete control of our code set from end-to-end. New browsers and frameworks need to be our decision.
- We wanted a road map to an integrated platform where Content, E-Commerce, Marketing Material, and EMail Marketing all worked seamlessly together. Not just a pipe dream. An actual working ecosystem not unlike EpiServer, Sitecore, Cobalt Digital, BancVue, etc. A WCM and ecosystem aimed at one or two industries sold as a SaaS or PaaS. This became our guiding
After bantering for a few more minutes J.P. said, let’s build our own open-source CMS. Payson, David and Gerry agreed. Pure blasphemy! Even a simple CMS system takes a very long time to build. DirigoEdge is anything but simple. We knew that building our own CMS would not be a trivial task. In total, DirigoEdge (the Trunk, Specialty Branches, Modules and the App Store) has well over 3,500 hours of programming investment as of January 2014. Fast forward to 2017 and that number exceeds 15,000 hours. Each month the cost increases by 100-350 hours. The original concept for the system was the brainchild of our Sr. Developer. His vision is being extended by a great team of developers (Bri, Ryan, Justin and Derek).
We had what it takes to do this. The very next day we turned ourselves loose on that very task.
The Right Idea at the Right Time
We were already well positioned. In the 2008-2011 time frame we built VingIt, our very own social network based on 15 second videos. The project was put on the back burner for another day. But, we gained a lot of valuable insight from all the coding we performed. And VingIt reset our thinking. We began to think about using our skill for ourselves. In 2012 we built Donorfull, our very own mobile-microsite website publishing system. Donorfull is still an active project partially owned by David Addison and Victoria Kuhn. Donorfull is a SaaS CMS mobile website publishing system. Again, we got lots of insight working with the latest and greatest technology.
By late 2012 we were rapidly moving into the automotive interactive space. We knew that we wanted to build a turn-key website solution for the automotive industry. That system is called Overdrive Automotive Solutions. The project is a partnership between two agencies: Dirigo and CBC Ads. We needed an authoring platform for automotive. No CMS on the market was suitable. We knew that entry into this market was going to be costly. How costly? We're not sure yet, but, we think mid seven figures. GULP!!!
In 2012 we knew that we wanted to also enter the ski resort vertical with yet another turn-key website building solution. This work was to be spearheaded by Dirigo’s Jamie Ippolito—a ski industry veteran. Again, we're looking at huge investments and a long commitment to this market.
The single biggest consideration for all of the CMS stuff is technical ability. In 2012 we reset much of our application development team and headed way up-market. We had the right folks with the right experiences. Moreover, we're planning on recruiting more cut from the same mold because we need super skills to execute our vision.
Tally ho! Let’s do it.
How to Build a Custom CMS Platform Affordably
What lay before us was daunting—how do we scale such a high mountain. We figured that it would cost us somewhere around $150,000 to get to a viable Alpha solution. The Alpha could support a single client. It was a bit more than that by the time the rubber hit the road. The investment is ongoing.
We began by building out DirigoEdge—our Open Source Visual Studio project template. We say “project template” because the code is meant for ASP.NET developers who desire the same few items listed at the beginning of this blog post. DirigoEdge is a base or a foundation on which to build websites or web applications. The project is built from the ground up to be a responsive CMS. It is built on MVC 4, using CodeFirst for the backend, Zurb’s Foundation for the responsive frontend, and jQuery frameworks for the client side interaction. The code is meant to get an experienced developer up and running quickly and easily. The code is highly extensible and minimalistic. ASP.NET is super powerful.
The www.dirigodev.com website was the first to use what would become DirigoEdge. Central Distributors (www.centraldistributors.com) was the second. The aim, early-on, was to put all of our development efforts into DirigoEdge so that we could achieve critical mass. The strategy worked. By late summer 2013 we had around 2,000 DirigoEdge users and a few active code contributors. But this was only the beginning.
In early 2013 the Dirigo team set out to extend DirigoEdge into our automotive and ski CMS resort platforms. As of January 2014 the effort is still in full-swing. Now DirigoEdge, Overdrive Automotive Solutions and Ski were being developed side-by-side.
DirigoEdge is highly extensible, written in ASP.NET C#, MS SQL, MVC, mobile-first, Modernizr, and is made response with Zurb Foundation. With a bit of work, Foundation can be replaced with Bootstrap. The blog or multiple blogs is baked into the content management solution. We know that at least two local development groups right here in Maine have used DirigoEdge in production projects. We have developers in Canada, the UK, India, Russia... all using DirigoEdge. It's that good. Really! How cool is that?
The Ski Platform required robust modules for a snow report, trails, lifts, trail grooming, web cameras, photos of the day, events, jobs, press releases, lodging, vacation packages, Facebook, Twitter, YouTube, Vimeo, and Instagram. It also required an intuitive drag-and-drop designer (something that we call PageBuilder), a navigation builder, and a more robust user settings area. The initial build-out here totaled somewhere around 1,000 hours. But that’s the half of it. Overdrive was being developed at the same time. So Auto fed Ski. Ski fed Auto. DirigoEdge and general website development activities here at Dirigo fed both. We gained significant synergies by placing all of our development eggs in our own basket.
The OverDrive Automotive Solutions platform was even more difficult. It tackled product importation, CRM integration, image fetching/making/replication, analytics, server asset parallelization, more SEO focus, discounting & merchandising, shortcodes, URL rewriting, and more.
The auto industry is insular and difficult to break in to because systems are all interconnected. The industry has come much closer than most to sales automation—a focus in 2014 for other industries. The auto systems project has added another several thousand tech hours. Mind you, these are not lightweight application developers. The crew building DirigoEdge joined Dirigo at the top of their game. This is a super talented group.
On January 7 th 2014 the crew broke ground on the Dirigo AppStore. This is where we’ll be listing/housing our modules. The DirigoEdge that we use with rank and file Dirigo clients is a supercharged version of the open-source project. The Ski and Auto platforms are an entirely different beast. Code can be merged in and out of any of the above systems with a wee bit of effort.
More about WordPress and the Future of Interactive Development
WordPress has two systems. The WordPress.com site and the self-hosted site. Over the next several years WordPress self-hosted will diminish. The future of WordPress is the hosted site (I'll probably take a lot of heat for making this predication). WordPress will become one of the major SaaS website building platforms. For the SMB, putting together a simple website will be ubiquitous–as easy as word processing. There is no margin here for an experienced developer.
Our industry is changing. In a few short years, custom built websites will be, for the most part, a thing of the past for folks with budgets less than $50,000. WIX, Google Sites, 1&1, GoDaddy Website Builder, SquareSpace, and Weebly are the modern day business interrupters-software as a service (SaaS) website building systems. Forward thinking interactive shops are clawing their way into vertical markets where they can hunker down for the slugfest with industry specific solutions. Others are rounding-out service offerings. Not all websites will be built by SaaS website building systems. The biggies will, for the most part, remain custom.
A colleague of mine at Hall Marketing put it this way: "I can imagine some caveman sitting around and saying, 'the wheel, fire, where does it all end?' It doesn't end. We have been a race of investors since we crawled out of the primordial ooze." The interactive business is going to change. We're ~15 years into it. You ain't seen nothing yet. Here in 2014, we're driving the equivalent of the Model T. The WWW is going to blow your mind in the decades ahead.
Even a simple CMS system takes a very long time to build. We knew that building our own CMS would not be a trivial task. Each passing month we make greater and greater investments. That's just it, we're investing in our future. We’re glad that we built DirigoEdge—it’s precisely what we needed. Dirigo's future is not dissimilar to WIX or Weebly. We're not going to use one of these SaaS solutions—we're going to own one. We pivoted in 2011 and we'll keep our ship steady in the stormy seas ahead. Steadfastly, we tack our way along our plotted course.
Today, thousands of other .NET developers use DirigoEdge. In March 2015 we rolled-out DirigoEdge v2.0 which is based on Bootstrap. The code can be had on GitHub. The auto, health, and ski industries have rolled out the welcome mat. We’re hard at work building an even better DirigoEdge.