Content Management Systems

How Do I Choose a Content Management System?

From the start of iBCScorp™, we have focused on specialized custom web development work mainly using open source technologies.  Most of our work has been done using popular Internet technologies including PHP, Cake PHP and Ruby on Rails. We have used these technologies successfully to deliver quality solutions from the ground up for the needs of our clients.

However, over the past few years we have recommended content management systems to more and more of our clients is a website that they can manage themselves.  CMS solutions allow our customers to manage the contents of their sites, while we cater their custom requirements.

Sometimes, clients, both end users and development companies come to us with the idea in mind already that they want a Content Management System for themselves or for their client.  In that case they usually ask for WordPress or Joomla and we build on top of that. This is an indication how popular those two systems are among the web community.

Before deciding which Content Management System (CMS) will best meet your requirements it is a good idea to review your criteria and compare content management systems. We have provided some information here to help you know which CMS might work best for a given scenario. These are notes about how we feel about each of these systems. All of these are freely available open source systems; we have installed, implemented and tested each of them and are familiar with the internal architecture and workings.  We have each of these in production for clients and have a team devoted to each content management system accept Browser CMS.  What we have written here may not 100% correct so your comments and suggestions are highly appreciated.

PHP Based CMS Systems


WordPress is a simple but powerful blog aware CMS. With a little knowledge; once the site is up you can start creating content. The interface is easy to understand and it has very good support for content management.

WordPress has many commercial and freely available WordPress templates which can be used and modified for your site, or companies like iBCScorp™ can create them custom for you.  There are also many useful plugins contributed by the WordPress developer community.  These can be simply installed and used or modified for specific needs. Because of SEO plugins Google search engine can easily index pages and these pages can appear on Google within couple of days after a site is released; provided the site is done correctly. When it comes to extending WordPress for custom requirements, WordPress is less flexible than other options. Plug-in modules can be built, but we feel, it is not as easy or  straight forward when there are lot of custom requirements compared to other options.

One example of a site that we have done which uses WordPress, but which also uses extensive custom application development is a travel site which allowed agents to have their own profile and back end tools.  In this case so far, rather than customizing WordPress, the customized modules were built outside of WordPress using Cake PHP.  However as the customer's budget allows for additional integration between the custom code and WordPress, it will be done.

One downside of WordPress is performance.  For larger sites we feel that WordPress does not perform as quickly as other options.  Also the quality of plugins varies and sometimes even though a plugin may seem to meet a clients needs, on implementation we discover that it is buggy, incompatible with browsers or clunky in some way.


Joomla is another popular and matured product which mostly focuses on content management. Like WordPress, most people know the product since it has been around for a long time. It has a sensible flow of managing content and with some advanced knowledge you can extend it for for custom needs.

As a developer, touching the code however, one finds that the code structure is brittle and clumsy. We feel Joomla doesn't have a good modular architecture.  We also feel that compared to other systems, that Joomla is harder for the client to use and takes more time to learn.

Another down side is the limitations within its template system when compared to other content management systems.   The Joomla template system is not easy to modify when making a pretty looking web site for the average skilled web developer.

The core system of Joomla is also very complex.  This puts high demand on server resources. If the database is not adjusted for better performance and if a couple of fancy external plugins are added, chances are that the site will break down when considerable amount of traffic begins using the site.

We are comfortable doing Joomla sites if there is a specific requirement which it is the best suited for if the project is already in Joomla, or if the customer is already familiar with Joomla.  If none of those conditions exist, we find ourselves steering clients towards other options.


Drupal is a content management system (CMS) is a platform which you can use to build powerful web solutions. The architecture we feel is flexible and extensible compared to Joomla or WordPress. We see lot of good features in Drupal and the ease of managing content. Drupal provides a module system to extend the core functionality and also to add new features. There are also many community provided modules that can be used for specific requirements.  And if we can't find something that meets the customers requirements, we can write our own modules for custom requirements. The flow of content handling is easy for the content editors. However as with other well modularized systems, when it comes to development, there is some learning curve.  We think that is reasonable for the flexibility and the clarity it offers for serious development.  New developers will need to try and experiment before Drupal can be understood well and used fluently. Here is an interesting review comparing Drupal, WordPress and Joomla.

Java JSF Based CMS


PrimeAgile™ is a Java based content management system.  It is built on an enterprise level framework that allows distribution of content across any number of servers.  It is by far the most scalable CMS we know of.  It also is the only CMS that we are aware of that provides tools to translate pages as well as keywords and other metadata.  One of the large advantages of it is that as it is part of the PrimeAgile™ building block set of tools, it can be easily included with and used in other applications rather than being a third party plugin or clumsy off-site based content management system.  It also has a sophisticated use management system, and the ability for one company to manage as many sites or clients as they want to from one login.  

When Not to Use a CMS

Just as it is important to choose the right content management system, it is also important to know when not to use a content management system.

We have seen projects where people have done things using a content management system which should have never been done in a content management system, and which should have been done using custom code.

Publishing flexible content is done very well in a content management system.  Transactional Processing such as accounting, Customer Relationship Management, ERP type systems - things which are highly structured, maybe should be managed using some other type of application or even custom code.  PrimeAgile™ is an enterprise level development environment not just a CMS, so it is probably the only exception.

We add this caution because we have seen customers and developers alike try to use content management systems for things which they where never designed to handle.  In the end they ended up with expensive projects which don't scale, or which can never help the customer reach their end objective.

Please contact us if you have a project you are considering doing and lets discuss it.  Maybe we can save you a lot of trouble down the road whether you choose to use our company or not to do the work.