The next iteration: ExpressionEngine vs. Craft CMS vs. Ghost CMS

For the past few years, I've primarily been posting about stuff on my personal blog. That content has been routine recaps on my comings and goings with both my work and my personal life.

I think I want to split that up a bit and move the work-related stuff over here to my Updrift site. Turn it more into a work blog, keeping my personal site to stuff I do outside of work.

ExpressionEngine

This site has used ExpressionEngine as the underlying software for almost the entire duration of the site's existence. I say almost because it originally started with TextPattern. Textpattern is still around, but still mostly looks and acts like a site from the 2000s. Far from modern.

In regards to ExpressionEngine, I've been really happy. During its v2-v3 period (currently v6), I used it to develop a number of sites for a handful of clients. Some still running today. It was great to develop for and there were lots of add-ons that could extend it to do just about anything you'd like.

Then ExpressionEngine started running into trouble.

It was always a bit of a pain to transition from development to production. Add-ons helped, but the process wasn't as smooth as it could have been. Other CMSs, Wordpress included, had one-click upgrade processes which ExpressionEngine did not have. Part of the problem was that the add-ons that made it so great were also a weakness in that they made sites much more difficult to upgrade. This is an issue I've run into myself. This is why I have client sites that are still on EE v3 and not v6.

A number of years back, some of its premiere third-party developers, became more and more unhappy with the state of the software and the slow response they were getting from the owners of the software. So unhappy, they ended up creating their own, competing product, CraftCMS.

CraftCMS ended up being what those developers wished ExpressionEngine would have become. As a result, a great number of ExpressionEngine developers switched. This left ExpressionEngine add-on development in a ghost-town state. The software stagnated a bit until it was sold to a new owner. Thus far, they've done a great job with it, but now it's playing catch-up to CraftCMS, and I'm not sure it will ever be able to catch up.

Updrift's site is simple enough that I have been able to upgrade to the latest version of ExpressionEngine. It still has the feel ExpressionEngine's always had, but they are clearly in the dust left from where CraftCMS has already been. I did want to try it out before making any decisions about whether it's time to try something new. I do like it. But in some aspects, it feels like it's more of a new coat of paint than a new, better experience.

CraftCMS

Knowing a bit about how CraftCMS came around, I've always followed its progress. But since I moved firmly into Ruby on Rails application development, away from client website work, I didn't really have much opportunity to really dig into it.

Remember those now-stale ExpressionEngine client sites I mentioned? Well, I knew at some point I'd need to upgrade them. It would be painful. So painful that I figured it was worth investing in some time to see if it could be just as easy to switch them over to CraftCMS. So I watched some screencasts and developed a small example site to kick the tires.

Having done that, I think the effort would be about equivalent to upgrade an ExpressionEngine v3 site to v6 as it would be to redo it as a CraftCMS site.

However, CraftCMS has some additional benefits. The developer experience is much better. The administrative interface is much nicer and more intuitive to use. And, most of all, their active community. Sure ExpressionEngine's community is still around, but it's mostly a shadow of its former self.

My experience with it thus far has me interested in the next iteration of Updrift being built on CraftCMS.

But there's one main thing giving me pause, and that's that CraftCMS feels like it's overkill. The main benefit it'd give me is the experience of building and using my own site in the event I end up developing a future client website down the road.

Ghost

That's where Ghost comes in.

I've used Ghost for my personal blog since I started it. It's been really good. The editing experience is really great. Typing this post in ExpressionEngine, I'm missing that experience.

Ghost is more for a standard, simple blog. It has membership-based features. Subscriber-only vs. public content. But it's all about writing posts and that's it. You're not going to extend it to provide an e-commerce shop, scheduling events, or a product catalog.

If there's a downside to Ghost it's that I've had occasional issues upgrading to new versions. I host my own instance rather than paying for them to host it. They make some awesome tools to make it as painless as possible, but I've been caught a few times with needing to upgrade my version of npm or node which has turned into a bit of a struggle at times.

Overall, however, that is only a very slight tarnish on my favorable opinion of Ghost.

So, what's next?

A new iteration of Updrift will be upcoming. When? I'm not exactly sure. I want to see if there are any other fresh CMSs out there I should check out. Right now, though, I'm kind of leaning towards Ghost but CraftCMS isn't out of the picture. After a long journey with ExpressionEngine, I think it's sunset day for me has arrived. I will still have a couple of sites with it to support, but I don't anticipate using it for future projects.

Commenting has expired for this post.