About 95% of my income as a front-end web developer comes from large ad and web agencies that hire me to be a part of project teams. These teams build websites that cost anywhere from 10,000 to 1,000,000 euro.*
The other 5% is from small jobs, and the smallest of those are when other freelancers hire me to update their websites. About ten years ago I wrote a couple of custom content management systems (CMSes) for some of these small customers, because A) that is the sort of thing fledgling web developers do, and B) at the time there weren’t really any good off-the-shelf products I could use.
Lately I have been trying to tempt these customers to switch to off-the-shelf** products like Drupal or WordPress because every time I have to update their custom websites I basically have to learn to understand my own code all over again. This grates.
I have found my customers to be remarkably resistant to temptation, however. The best part? I cannot really blame them.
The main reason my customers resist the switch is simply one of cost. If their sites were simple affairs that consisted of a bunch of static pages and a contact form, the switch would take somewhere between half a day and a day, and even that would be fairly costly for them, considering that any gains for them would be difficult to envision. Sure, site updates and extensions take me longer to implement, but we are talking in the region of hours here. If I have to build them a new feature every year, that might cost six hours instead of four. That means they have to envision major changes to their sites over the next five years, which is tough to do for anyone.
But we’re talking about sites that have evolved, that have acquired all kinds of neat features over the years that do not have third party alternatives in off-the-shelf products.
And who is to say that my customers will even be using that off-the-shelve CMS five years from now? Switching to an off-the-shelf product simply is not a wise investment from their perspective.
Having said that, all my customers who started with an off-the-shelf CMS are still happy users. (Their only problem being that they do not update often enough so that they need to hire me now and again to remove damage caused by hackers.)
I made the following list a couple of weeks ago to discuss this very issue with one of my small customers:
Advantages of using my custom CMS:
- I know it well.
- Does not require much maintenance.
- Every conceivable extension possible.
- Log-in system uses safety through obscurity.
Disadvantages of using my custom CMS:
- Extensions can be pricey because sometimes I need to reinvent the wheel.
- Log-in system becomes unsafe once discovered.***
- Becomes difficult to extend or maintain as soon as I am no longer available.
- If new legislation applies, implementation is expensive.****
Advantages of off-the-shelf CMSes:
- Are regularly extended with current web technologies.
- Security is an ongoing matter of concern.
Disadvantages of off-the-shelf CMSes:
- Are popular targets by hackers and law enforcers alike.
- Require continuous updating.
In short, you trade a relatively high price for new features for recurring payments for updates. If you are on a budget and you already have a website, it makes little sense to switch.
The only reason why small customers would have to switch, as far as I can tell, is when they stop being small customers.
*) I don’t think I’ve ever actually worked on a million euro website. I have been involved in million euro projects though. Usually what happens in those cases is that a company is involved in a million dollar effort to transition to the web, and in all those cases this involved multiple websites. Note that I don’t make millions, those pies tend to be divided among a great many people.
**) See also: The blog systems that made it as CMSes.
***) Not, I hasten to note, because I write unsafe systems. Rather because I am the only coder who ever looked at my system, making small flaws more likely to persist. As the saying goes, many eyeballs make excellent eyeball soup. (Hm, I may have remembered that incorrectly.)
****) The EU has just adopted a directive that outlaws most browser cookies. The advantage of a custom CMS is that it only uses the cookies it needs though.