When creating online solutions there are two ways to go about it. One is using an existing product and the other is developing bespoke technology. Understanding the difference is crucial.
Configuring a system is not development
When you configure a system, e.g. a content management system like WordPress or Joomla, you use existing tools like add-ons, skins. plugins and themes. These have to all work together and the person tasked with the configuration can make the right settings to adjust any discrepancies. Configuration requires an understanding of how things work together but not necessarily about the actual coding. When you configure a system you’re limited to what’s provided by others in terms of functionality, but in return you can expect stability and resilience.
When you develop a system you must have an understanding of code, coding standards and scalability, of databases, queries and a whole lot more. The upside is that you have a huge array of tools at your disposal to increase functionality or to extend it to your requirements. This allows you to do whatever you like.
But is there a middle ground?
Yes. You can extend existing products. Does that mean you have all of the benefits of both and none of the downsides? Sadly, that’s not completely true. You can get some of the upsides as well as some of the downsides. Obviously, a combination will mean more functionality, but also a higher maintenance cost. You’ll get more flexibility but less resilience. And depending on your needs, those could be really valuable options. So….
Consider the middle ground. What’s not to like… you get a bit more and you pay a bit less!