Why Joomla?

By Justin Kerr
April 29, 2010

The Joomla content management system has become a very popular way to power dynamic and easily maintained Web sites.  However, Joomla is but one of many worthy choices available for an open source CMS: What are the elements that might make Joomla the right choice for your Web site?

First of all, Joomla is a well-established product that displays all of the characteristics of a healthy open source project, including a thriving community, an extensive ecosystem of third parties providing related products and services, and a down-to-earth philosophy of releasing high-quality, practical software. (For more information about what makes a good open source project, see our Protoblog entry Shared Characteristics of High-Quality Open Source Projects.)

Most important, Joomla delivers where it counts in terms of features and functionality.  Out of the box, it contains all or most of the tools needed for any Web site, including core functionality like content editing, navigation elements, customizable templates, a membership system, and specific components to manage banners, contacts, Web links and more.  It also supports a plug-in extensions system which allows third-party developers to create drop-in tools that expand the Joomla platform significantly.  Indeed, just about any specific Web site need has already been addressed by extensions developers, with nearly 5,000 extensions listed in the official directory at http://extensions.joomla.org.

Joomla is also extremely versatile in terms of supporting specific Web site architecture and a custom look and feel.  The templates system allows for near-complete control over every aspect of the visual design and the HTML output comprising the Web pages of the site – Joomla's system of HTML overrides makes it a snap to customize the structure of any part of the content management system.  All template customizations are elegantly compartmentalized outside of the "core" of Joomla, isolating them from later upgrades to Joomla and extensions, and making them very portable between Joomla installations.  If needed, a single Joomla site can support multiple templates for a different variety of layout options.  Essentially, the sky's the limit.

In the experience of this correspondent, Joomla also seems to be a very well-designed system on technical and practical levels.  If a Joomla installation fails, it tends to fail gracefully, with useful error messages and a large base of community discussions and resources to fall back upon.  In all likelihood, someone else has encountered the same problem, and it's often quite easy to come to a resolution.  When a client has asked "Can I do that?" on an existing Joomla installation, most of the time, the answer has been yes, and the cost of making the change has been nominal.  And Joomla installations have remained stable – as much so or more than any other content management system.  For the most part, Joomla is a solution that just works.

Some Caveats

Of course, Joomla is a tool that needs to be learned like anything else.  Some aspects of Joomla – such as the relationship of menu items to content display and the three-tiered content hierarchy – benefit from experience and experimentation when building out a Web site.  Joomla also does not yet offer a couple major features such as a fine-grained permissions system.  (This is coming in 2010 with Joomla 1.6, and third-party extensions are currently available to provide full access control lists to those who need it.)  Also, like any dynamically constructed Web site, the Web server environment must have the proper capabilities for supporting a PHP/mySQL Web application, as well as the appropriate server horsepower to accommodate all site users.

Justin Kerr has been working with Joomla since it forked from Mambo and released Joomla version 1.0 in 2005. In that time, Justin has built dozens of Joomla-based Web sites, as well as provided related media, templates and support materials for Joomla installations.