Sophisticated web development has become substantially easier than it was just a decade ago. Yep, I said it. I sell site development services, and I just said it’s getting easier. Blogging, e-commerce, multimedia, social media, and dynamic user communities once took very specialized programming knowledge to implement, but now sites with such features can be turned out in a much shorter time. This doesn’t threaten me, it makes me glad. Why? Because I’ve never really sold a CMS anyway…
Much of this new ease and simplicity is thanks to content management systems (CMS), most notably WordPress, Drupal, Joomla and, increasingly, Adobe Business Catalyst. Not only are they offered on many hosting services as one-click installs (more on this later), but they take care of all of the crucial details of managing content, registering and authenticating users, adding comments, moderation, and so forth. In other words, installing a CMS makes it seem as if it is the same as creating an “instant website.” In fact, it is often thought that they are non-technical enough that they can be administored by a “designer.” Of course, with many relatively simple websites this is sometimes the case. Of course introduce “security” into the equation (and all the recent WordPress vulnerabilities) and that simplicity is challenged, but on the whole it is still easier than before.
However, there is a danger to asking the question “which CMS should I choose for my website?” The question should be “what level of service & experience do I need from a developer to be able to make my website fully functional and realize its goals?” A website that is strictly blog-only could get away with a simple WordPress install (or even just be done through wordpress.com instead), a theme selection, and maybe some simple CSS tweaks. A fully-fledged, user-driven, lead generating, revenue producing site will usually need far more. However, there are a host of reasons why the decision to use (or not use) a particular CMS should be left up to a developer:
- WordPress is convenient, solidly-designed, and well supported, but its popularity makes it the frequent target of hacking. In particular, it is often hit with SQL injection attacks.
- Drupal is very powerful and flexible, and in fact until Drupal 7 almost took the technical level of a developer to administrate. However, this flexibility can make full security updating challenging. When the transition from Drupal 6 to Drupal 7 occurred, security modules had to be reinstalled from scratch. Also, the one-click installs of Drupal that are offered by many web hosting companies do not perform many crucial security tweaks by default.
- AND THIS IS HUGE – There is the possibility that no CMS is needed at all. I’m doing more and more of them these days. Gasp! Huh? Yes. We have come full circle in some situations- it’s just the best fit for some clients. Why shoe-horn them into a CMS if they don’t need it? A talented developer can build a site from the ground up that is suited to all your needs. Some would ask why it would be necessary to reinvent the wheel, but it should be noted that when a CMS is brought in, it is hard to back out. On top of that, when a CMS is installed, all potential bugs and security issues are brought in with it. An administrator may have to sift through dozens of pre-made plugins/modules in order to deliver the features that you may need, and each one will bring in its own intricacies as well.
- What about value-added services. Great service, a real human being to talk to, someone who can update content for you, even provide copy if necessary. I am finding my clients would sometimes rather spend money on these things than all the updating and retro-fitting required on a CMS. It all just depends on the need…
Depending on the needs of the site, a CMS may not add up to saved development time and cost. It is important to plan out features and perform a cost-benefit analysis to see if you should go with a CMS or a home-grown solution.