My first impression of Concrete5 is that it is a much more user-friendly and user-centered content management system than I have seen in a while. I remember having dreams of developing something like this, something more functional, something more logically integrated with the front-end GUI than the more recent systems to hit the web.
Years ago, before the days of the huge Joomla and WordPress boom, I recall looking into an enterprise grade content management system for Zestra Laboratories (before the purchase by Semprae Laboratories). The system I was interested in was built on JSP (JavaServer Pages) and had an extremely advanced GUI for the day and age, allowing you to manage the content directly from the front-end, much like Concrete5 now gives you the ability to do now free with open source PHP.
On a side note, Magnolia is also a very robust CMS with features such as Concrete5, Magnolia strives itself on being extremely simple though may lack certain features and a large community supporting it, though it is a very clean content creation and enterprise style publishing tool, the problem with Magnolia is that it just can’t keep up with what these PHP systems are capable of pulling off. But this blog post is not about the Magnolia CMS anyway, we are focusing on Concrete5, check out this video for a quickie on what Concrete5 is all about:
It seems that they have really brought together the ability for a basic blog user to be able to start beginning to create more advanced web applications directly without any developer expertise. The most impressive part of Concrete5 is the ability for you to logically understand what element it is that you are adding to the page visually, this is going to be a key part of the trend that I see web publishing following in the course of the coming years.
The only thing that I would like to see extended onto Concrete5 is the ability to create your own types of data models, data grids or other types of media and form controls. Since I haven’t spent much time in the back-end programming of Concrete5 yet, I can only assume that they have built it cleanly on an objected oriented architecture and have some form of API (Application Programming Interface) built into the application framework.
Being able to integrate something like Concrete5 with QCubed/QCodo would give the average user the ability to edit and create more advanced web applications as well as advanced database manipulation without the intervention of experienced programmers. Currently the only CMS that has been integrated into QCubed/QCodo is a module that integrates the QCubed PHP5 Framework with Drupal called QDrupal.
With the ability to extend Concrete5 with more AJAX based, user-centric tools, users will growingly have direct access to the way data is created and stored, and ultimately how web applications are born.