CMS are wonderful, terrible, and the sine qua non of agency life. Everyone is a WordPress shop or a Drupal shop or a Shopify Expert or specializes in their pet favorite.
There are strong reasons for doing so; one is expertise – you get better with a tool the more you use it. Another is marketing, as most web design and development is referral based, most clients come to you expecting a particular type of solution. The other big reason is that each CMS has it’s own philosophy about how to think and operate, and there fore, different philosophies for different people.
This is the crux of the problem though; if we’re honest, many platforms are mature enough to handle many different types of use-cases. But, to me, that doesn’t mean that a developer ought to only specialize in say, WordPress.
I just want to take a minute and point out some of the options you might not be aware of and that these are projects I would love to give a whirl on a client project (as opposed to just playing around with them on my own time).
Jekyll: Jekyll is actually a static site generator, and not a CMS. However, because it includes a method to template files, there’s more maintainability than a flat file static site. Also, it’s a github project and therefore encourages good version control. Last, you can publish to GitHub Pages easily and for free. If you have a use case to develop documentation, training materials, reference materials, or other content that is not changed frequently, Jekyll would be ideal. You’ve got complete control over mark-up, styles, and interaction with next to none of the overhead of a CMS. Free
Backdrop: Backdrop is a fork of Drupal 7. Whereas Drupal generally prioritizes developers over site builders or editors, Backdrop is philosophically set up to advantage Site Builders; that is to say non-technical users who can configure the site via options and get it 90% of the way they want it. Another advantage to Backdrop is that it seeks to impose the least technological cost on a user. So older PHP (as you might find on cheaper hosting) is just fine. It’s only a year old and the module ecosystem isn’t what Drupal 7’s is, but the idea that you can quickly and cheaply configure a site without the issues that can plague other CMSs is appealing. It would have to be comparatively simple, at this point however. This would make Backdrop perfect for clubs, non-profits, reading groups, small or medium business sites that would suffer from heavier maintenance requirements. Free, open source.
Perch: The thing I love about Perch, aside from being the brainchild and company of Rachel Andrews, is that it allows me, as a designer/developer, to start with the mark-up and css that I want to use, and then graft the CMS on top of it (as opposed to starting with the question “How do I make [insert CMS] do that?”). Perch is a nice bridge between completely bespoke HTML and the systemization of a CMS. I wouldn’t want to try to make too complicated a site here, but for a marketing or brochure style site, Perch would be a blast to work with. Requires purchase of a license
Craft: Craft is a CMS that has a ton of things going for it. First, most importantly, is a clean, responsive dashboard that even my mother could figure out. Second, because you buy a license, you get some level of support from the people who made it, and they are super helpful and responsive. Third, like Perch you get a lot of control over your markup. Fourth, you get to keep that nice and clean with Twig templating built in (keeping logic out of markups). Fifth, there’s matrix – so not only do you select the fields you want per piece of content, but you can drag and drop them however you like. Can you tell I like Craft? I’ve heard Craft described as “WordPress if you stripped everything out and replaced it with Custom Fields.” That might even be selling it short but I do like the idea and hints at good uses for it: sites with a lot of content to manage in a few different types (like WordPress).
The point is not to say “This is better than X” or any dogma whatsoever. And there are good reasons to only go with X or Y system. Universities, Dioceses, Government agencies (municipal governments, public school districts, etc) – really any use case where the administration of multiple sites is core to the mission of the organization – are better suited by picking either WordPress or Drupal and running everything as a multisite installation. I do think a hosted solution like Shopify is a really better tool for most e-commerce sites of mild complexity (more than a few simple items) than plugging in WooCommerce to WordPress. I’m of the opinion that “specialty CMS” software like Rainmaker (attorneys) and Blox (news paper) are total bullshit.
The point is to say that there are more viable tools out there, that you, dear client or developer, do not need to be afraid of trying unless there’s a system-wide reason you can’t. For me, if the project is worth doing, I’ll design and build it for any system that makes sense to use.
Full disclosure: I came up working on WordPress and still do most of my work on it. I work at a place that does a lot of Drupal based work, in addition to custom application development too.