As I understand it, there are three different \"types\" of CMS: Proprietary: A C
ID: 651162 • Letter: A
Question
As I understand it, there are three different "types" of CMS:
Proprietary: A CMS built and owned by a company, and altered to meet a client's needs.
Open-Source: An open/free version of the above. An existing system altered to meet a client's needs. (E.g. Drupal, Joomla, etc.)
Fully Bespoke: A CMS built from scratch to the client's exact needs.
It seems to me that, from a client's perspective, their order of preference (if everything else was equal) would be 3 -> 2 -> 1.
There's a danger that option 3 could be riddled with difficult to understand code, but that's a danger with the other two as well.
As developers, what's best for our clients?
I ask this because a competing agency just pitched to one of our clients that Open-Source CMSes are the preferred solution. While I can see the benefits of using OS software, I can't see how it's better than a Fully Bespoke solution.
As a developer blog put it,
"Adding features to [an existing] CMS is not easy. It takes more time than to develop the feature alone, because you need to trick the CMS into doing something it was not designed to do. This is especially true for features that write to the database a lot, like community features, or features that have unusual business logic."
Explanation / Answer
It depends entirely on the situation:
Proprietary
Pros - Developers intimately familiar with the software; potentially reduced cost and stability by mostly re-using code that's been used before for other clients; software owner has a direct financial and contractual responsibility to the client
Cons - No control or ownership over code; vendor lock-in; typically harder to gain direct access to data
Open-source
Pros - Larger potential developer community; access to code; opportunity to take over development in-house; larger potential support community; reduced cost and stability from starting with an existing solution
Cons - Need to code against a project you may not already be familiar with; no control over project direction, so upgrades might become difficult or impossible with custom code attached; potential lack of support if project dies; starting with a generic solution can limit feasibility of new features or make implementation much harder (e.g. the project's API might not provide something)
Custom
Pros - Client has total control over code and data; tailored completely to client's needs; a framework, as opposed to a complete CMS, can be used as a starting point
Cons - Typically the most expensive solution since everything is done from scratch; no external support
Custom would almost always be the choice if cost and time weren't factors. But they are, so the other options are often chosen instead. Proprietary is almost always the least favorable choice today because vendor lock-in is a huge drawback and there are so many popular open source alternatives.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.