Joomla is one more CMS-in-the-box and we have successful experience of using it. But being technical experts we do not recommend to use CMS-in-the-box solutions for medium-sized and big projects.
Joomla has a widespread range of modules and features. Among them are payment system, statistics, content management system, etc. This is a universal solution well-known by developers. It also has collections of already developed designs and themes which can be easily applied. Custom design can be quickly developed and applied as well.
Well, what is wrong with it? Why not to make software development nice and easy using such kind of platforms? And the central question is why not to make it cheap?
The main disadvantage of CMS-in-the-box in general and Joomla in particular is their universality described above. Let’s agree that your own business has its own business logic, unique for your company and you are going to differ from your competitors on the market. I’m sure you are going to be better than your competitors by ordering a web project as you have better vision and new ideas. So, how you can differ and how you can be better using the same solution? The same solution which includes same functionality can be customized but what is the price of the customization?
Yes, the first iteration will be very quick and you can be extremely happy after CMS installation as you will get numerous ready-to-use features. But as soon as customization begins the project will go slowly. And the worst thing is that your unique business logic will be subordinated to the third-party solution starting from the first string of the custom code.
The other problem is security. Each code has logical bugs. It is impossible to develop software without bugs. Otherwise there were no quality assurance departments. Upon customization of CMS-in-the-box the quality assurance is looking for bugs only in custom changes developed by R&D department. So, releasing the project to the customer we can guarantee that our code is bug-free. But we cannot guarantee that 95% of the project consisting of Joomla is bug free. Or we can do a very expensive Joomla testing which annuls the cheapness advantage of Joomla.
So, using Joomla you receive a potential security problem. Anybody can find the vulnerability of Joomla’s engine and all projects based on it will be vulnerable. There is no guarantee that CMS developers shall fix the bug faster than the intruders use it to crash your system. As a result your clients’ private data can be damaged and you can lose out.
The end of this problem is the beginning of the new one. As soon as CMS developers will release a new version you would have to update your system. But CMS developers can guarantee the compatibility only between their versions of CMS engine and they cannot guarantee the compatibility with custom changes of your project. That’s why after the update you can get the crash of the entire project and your developers will need to fix all incompatibilities which lead to the avalanche-like changes of the system. And of course it will be additional expenses for you. You can leave old version of CMS but then you will have to face risk of security described above.
Do you think this is all? No, it is just the beginning. Please let me ensure you that my mission is not to scare you but to explain the risks and find the best solution together. Well, let’s talk about the risk of integration.
There are too many special third party systems and services you might need even at the late stages of your project. Such systems can be unique for your local country or market, e.g. we have integrated one of our projects with the Economics – a unique system presented on the Denmark market. The CMS-in-the-box is developing for everybody, for all customers in all countries. That is why it does not assume the usage of some unique systems. I can guarantee right now that integration of custom solution will be really cheaper, faster and safer than integration of CMS-in-the-box. And do not forget the risks mentioned above that can also be dangerous after the new updates.
By the way, the custom solution will be more elegant in all cases. So, in case of a small budget and temporary solution, the CMS-in-the-box can be a really good idea. Joomla is too powerful to provide customers with a lot of useful and useless modules which can be used as a basis for your business logic implementation. But never agree to use such systems if you need something more unique.
The logical question you may ask is what about the frameworks? For example, we love to use Zend Framework in our projects. Framework is also a universal solution, so what is the difference? The answer is simple. The CMS-in-the-box is an attempt to unify the business logic while the framework is unifying the programming logic. Programming logic consists of the very small details of the program like database drivers, different libraries for localization, multiple classes that implement basic entities, etc.
Developers know programming tricks better like you know business tricks. Trust your developers. Trust Ultima Creative!