Let me share some interesting facts on a technical piece called CMS, Content management system. There are lot of questions that rolled around my mind before putting my hands into it, like is it all about reuse-ability? or a framework? or a customizable system? and bla bla. I would like to call CMS as a voluminous pack that hosts the contributions of huge group of users (usually open source) that allows us to reuse the existing features and customize it for our needs to build a system, usually refers to a website or a web application.
There are several content management systems available like Drupal, Joomla, word press, amilla for php ; JAPs, OpenCMS for java; umbraco for ASP.net; Slash, Scoop for perl etc. Their functionalities differ based on the programming languages and the applications.
They are advantageous with features like code reuse-ability, flexibility, simplicity,manageability etc and apart from these it also saves your time and brain spent on available features. They allow you to contribute to the CMS community which will be published after reviews for the use of others.
Its recommended to learn the languages before going into CMS’ since they abstracts various basic functionalities in that helps you at advanced levels of programming and customizing the applications.