The nature of what we do as a custom development agency means we talk to a lot of different people from a wide range of industries who are all trying to figure out what software is going to make their website or application a success.
All too often, when we bring up the idea of building a custom CMS to fulfil their needs, the knee-jerk reaction we get is skepticism.
Look, we get it. The perceived technical complexity alone is enough to make a person’s eyes glaze over. And for a lot of folks, the necessity isn’t immediately obvious. Not to mention that the price tag often doesn’t look anything like what a more average developer might quote them for a basic off-the-shelf solution.
In reality, those who balk at the idea of creating a system from scratch are missing the point.
It isn’t about who will charge you the least or get it done the fastest (talk about a recipe for disaster). It’s about creating a system that is going to serve your needs the way you need it to.
So if you’re one of those people who side-eye the idea of going custom, or if you’re in a situation where you can’t decide if you should jump ship on your current off-the-shelf CMS, here are some important points to consider.
More Flexibility = More Creativity
We’ve talked a lot on this blog about the 90/10 problem. That is, when a solution gets you 90% of the way there in terms of your business requirements, but the other 10% is left out to sea.
Unfortunately, that 10% often comprises some of the more critical needs for many organizations.
Off-the-shelf CMSs like WordPress or Drupal are built to please the masses. They’re designed to serve the most basic needs, typically that of the lowest common denominator. As such, there’s only so much bending and breaking of the core platform you can do before its limitations start forcing you to bend and break your own workflows around it.
What this often results in is the horrible affliction of sameness—when every site you encounter isn’t much different under the hood from the next, and every competitor is doing the same exact things as you.
So if the game you’re playing is differentiation, why settle for being part of those masses? You know exactly what sets you apart from your competitors; having the flexibility in your CMS to build tools that will help showcase those differences can be a game-changer.
Aside from that, imagine how much more agile you team can be if the system they’re working in can be customized exactly for their day-to-day needs. As a marketer, I can vouch for the importance of this one. Being able to test and iterate front-end content quickly and easily within, say, a modular system that allows me to create pages on the fly makes optimizing for results a much less painful process than if I had to pack everything into a stiff, pre-fab template (or worse, wait for the team to design and develop a new template for the specific type of content I’m trying to create).
10% might not seem like a lot at first, but setbacks and limitations can compound over time and completely overshadow the efficacy of that other 90%.
Custom Is Way More Secure
If you’ve taken even the quickest of glances at tech news these days, you’ve undoubtedly noticed the alarm that’s ringing in every industry over cyber security. More specifically, organizations on every level—from small businesses to huge national systems—are getting hit when they least expect it and suffering grave consequences.
(If you avoid the news, you don’t have to go much further than this post by Pete.)
It’s nice to think that you can fly under the radar either due to the size of your company or the inherent unremarkable nature of your industry, but that just isn’t the case anymore. While the hackers in movies tend to go after the feds or huge, evil corporations, in the real world, no one is 100% safe. In fact, a lot of cyber attacks don’t even have a legitimate reason behind them—sometimes it’s just a matter of someone wanting to see if they can do it.
So what can you do?
For starters, you can not build on a system that’s highly visible and therefor highly vulnerable. Common platforms like WordPress often have to scramble to release updates that will patch security holes, and that’s usually only after someone else has found them and exploited them.
What’s worse, we only have to look back as far as February of this year for an example of an instance where a patch was released before hackers became aware of a vulnerability (in this case, a serious zero-day flaw) and yet people still got hacked because they didn’t run the update that fixed it.
This sort of thing is much less likely to occur when you build a custom CMS.
Ideally, you would do this by going headless, where your front-end site is actually separate from the back-end platform that powers it, allowing the latter to be locked down. In fact, we’ve covered this decoupled approach extensively on this blog because we truly believe it to be the most reliable, secure way of going about content management.
Integrated systems can be secured, of course, but it simply isn’t the same. If security is truly one of your top priorities for your organization (and it damn well better be), a custom solution is the best way to ensure you can lock your data down without relying on someone else to maybe release a security update that might come too late.
It Has a Longer Shelf Life
Presumably, if you’re in the process of procuring this type of software for your organization, you’re not planning to shutter your website or application within a year or two. You’re probably gonna want it to stick around for a while, right? This is especially true for those of you who aren’t just shopping for a way to update your site pages, but for a system that can help run the day-to-day operations of all your teams.
As such, you need to consider the shelf life of your options. How long can you make it after launch before you have to completely overhaul the entire system all over again?
The need to overhaul arises for a few different reasons, and will often vary depending on the exact stack you’re running and the ongoing needs of your organization. You might need to completely gut your CMS if:
- You tweaked an off-the-shelf solution so much that a major global update breaks the plugins you use to run it or worse, the entire site.
- The technology upon which you’ve built the site isn’t being updated or supported because newer iterations have taken over (Drupal 6, anyone?).
Luckily, when you build a custom CMS, you’re actually tacking several years to the lifespan of your site or app. This is because you are much more likely—after a proper discovery and architecture process, obviously—to start out with exactly the tools you need without sacrificing the ability to expand in the future.
This brings us back to my earlier observation about price tags and how people react to them. The need for instant gratification often drives people to go for the cheapest option, thinking they can sacrifice a few functions here and there to keep costs down. Unfortunately, minor inconveniences eventually turn into major operational bottlenecks, and the money you think you’ve saved will end up going into adding in functionalities that you could have had since Day 1 with a custom solution.
You Can Avoid Technical Bloat
This is another thing that eventually ends up burping its way up to the surface long after you’ve convinced yourself you did a good job keeping costs down with an off-the-shelf solution.
Any organization that needs something beyond a simple informational site will need tools to help accomplish their goals. This could be an ecommerce platform or a complex registration system or even a video publishing solution. As you can probably guess, platforms like WordPress don’t come out of the box with these components built in. To add that functionality, you have to install plugins that are usually built by third-party developers and pray that they don’t suddenly stop updating them down the line.
Furthermore, by integrating these non-native features, you’re stacking code on top of code on top of code. And we all know that not every developer follows the same coding practices, so what you end up with is a tenuous beast that could be felled by a single update.
Bloat can also occur on the back-end user side in instances where you have a lot of different people using the system to perform various tasks. One team might not necessarily need the same tools as another, but when all that functionality is just tacked onto a CMS that already doesn’t have a sophisticated user and permissions system, what you have is a lot of people wading through crap that doesn’t apply to them or that they shouldn’t be touching.
When you build a custom CMS, you can not only control what type of users see which tools, but you can avoid bloat by building only the stuff you need into the base. No more plugins. No more incompatible code structures fighting with each other. And no more worrying that one change is going to bring the whole house of cards crashing down.
Making a decision when procuring software for your organization isn’t easy. It would be nice if it were, but there are a lot of different factors that you must weigh to make the right choice for your specific needs.
Building a custom CMS may sound daunting or like an overkill solution to you at first, but if you’re looking for something that’s going to work for you right out the gate and continue to expand and grow as your requirements evolve, it’s an investment worth considering.
The trick is to find a development partner who will take the time to truly understand what it is you’re trying to accomplish. That way, the time and budget that goes into building the system from scratch will be well-spent on something secure and adaptable to the future growth and needs of your business.