What Is This Thing Called Joomla?

Web Design For Dumbies or The Way of The Future?

Leo Laporte (The Tech Guy) repeatedly rhetorically asks, why would anyone develop a website from scratch anymore when Content Management Systems (CMS) exist that do it better for free?Leo Laporte

Thousands of geeks around the world freely contribute multiple hours to create, innovate and improve the functionality, usability and aesthetics of many popular open-source CMS’s like Joomla, Drupal, WordPress and others.

Why…? Because they love doing it. Initially, there may be an element of selfishness, an attempt to fix something on one of their sites. But after the epiphany and breakthrough that magically happens after hours of stubborn, obsessive, frustration-laced concentration, rather than keep it to themselves, they share what they’ve learned. In what I term the “True Spirit of the Internet”, many then spend countless hours on forums answering questions and trying to help.

The cliche “Labor of Love”, comes to mind.

So to reword; A collaborative effort by dedicated and intelligent individuals sharing freely of their time and expertise for the simple common goal of self-improvement, improvement for the sake of their peers and further discovery and learning. If you can conjure a downside to a project with this ideal as it’s sole motivation, you’re free to go, because that is a determined negativity and trolls aren’t welcome here.

Joomla is such a project

I’ll spare you the Joomla history lesson, if you’re interested check out the wikipedia entry here. The basic idea is to offer a web development system that can be created with a minimum amount of technical knowledge and allows the individual complete control over numerous powerful and effective web components.

Bulletin Board SystemIn the 80’s and 90’s the average web viewer or user was highly UN-sophisticated. We were easily amused, and there really weren’t that many actual websites. I remember being thrilled after logging into a Bulletin Board (BB) and the Sysop broke in to say “hello” on my Apple IIe. We were dial-up, monochrome and working on 64kb’s of memory, wow.

In those days, just having a website was impressive and “Search Engine Optimization” (SEO) didn’t really exist, so you could build a 5-page website with Dreamweaver and get respectable traffic.

Today, just having a website is not good enough and website viewers are growing substantially more sophisticated by the packet.

Relevancy in cyberspace today requires dynamic content, semantic html markup, meta tags, keywords, nomenclatures, site-maps, link building, social network cross-utilization, etc, etc…Who has the time to learn all that stuff?

Joomla developers and coders have built many of those assets into the framework.

Learning Curve

You still have to familiarize yourself with the terminology and system, but in that it is a system, once you figure out how it works, that part doesn’t change.

Web sites are a series of files and folders on a computer called a server. Web pages are a series of boxes systematically and aesthetically organized that hold different types of content. The typical web page is broken up into 4 or 5 basic display elements which are organized by TABLES, FRAMES or DIVS:

Header – Top of the website that usually contains the logo or banner

Left Column – Traditionally an area that holds menus or navigation

Main – Area where the content resides

Right Column – Banner ads or ancillary information typically goes here (although navigation elements are increasingly being used here)

Footer – Further navigational elements, copyright info and validation or sitemaps have historically gone here

TABLES or FRAMES were the most popular way to organize these sections of the webpage in years past. More recently DIVs are the method of choice for serious coders because of their superior configurability and flexibility.

My usage of the term “boxes” in this article equate to the same function as TABLES, FRAMES and DIVS.


The Joomla system is comprised of Templates, Components, Modules and Plugins. There is a front-end, which is what the web surfer sees when finding your site online. And there is the back-end, which is the web-interface or Graphical User Interface (GUI), which is the administrator area where you develop the site and add content. Joomla, like most CMS’s, is database driven, cross-platform and uses server-side language. For our purposes, that means that you can log into your Joomla site from any computer that has internet access and add content and/or perform any function necessary.

In Plain Language

Templates – Templates are the basic framework of the site’s aesthetic design. The template is like the map of where all the boxes on the page are located. You can put almost any element in any box. below are a couple examples of templates and their modpositions or Module Positions.

EXAMPLE 1Template Module Positions

Joomla Template Module Positions

EXAMPLE 2 – Template Module Positions

Module Positions

Components – components are applications that process data, usually from another GUI within the admin area, and display the result of that formatted information typically in the main content area of the site. In “EXAMPLE 2” above, you see all the module positions, but there’s a blank space in the middle. That space is typically where the component data goes, that is the “Main” area. Many Joomla extensions offer Component, Module and Plugin versions of the application so that that particular element can be available for display in any of the positions.

Modules – generally, modules are slightly less complicated applications that are designed to be placed in any box or module position on the site.

Plug-ins – plugins are also applications that are designed to be placed within content posts or Articles.


In the Joomla framework, Articles are the main content. Articles are the basic resource that feed many of the modules within the framework. The Articles are the meat of the site itself.


Hopefully you’ve gathered that if you choose Joomla as the delivery method for your website, that certainly you can place any element in any module position, thus exhibiting total control of your site. But what are the elements? Here are a few (not anywhere near how many actually exist)

  • Forums
  • eCommerce
  • Business Directory (Sobi2)
  • Ad Management Systems
  • Videos
  • Slideshows
  • Gallerys
  • Contact & Feedback Forms
  • Menu Systems
  • Calendar & Event Management
  • Communities & Groupware
  • ETC…

Implementing any of these features into your “hand-coded” site can be really expensive, let alone incorporating several of them. One of the several advantages to utilizing the Joomla framework is that all of these features are offered free, but not only that, there is support available as well. The power you’ll be able to harness for a simple investment of time is astonishing.

Join the Conversation


  1. While you have a somewhat valid argument from a technical standpoint (though many business owners still have difficulties with CMS programs), the reason I see many businesses still hiring professional web developers is simple–they want to stick to their knitting, by doing what they do, and not be pulled into a project that will take tons of their time–where their time is without question, money. Preston Ehrler, Webvantix

  2. Thanks reeljerc for this post. This is a really good insight into using Joomla. I have been looking into this for some time and have worked with WordPress but I will definitely look into working on Joomla very soon.

    Thanks again.

  3. Preston, I agree that in most cases it makes perfect sense for a web developer to play a part in any professional site. To make the site truly unique, proper customization requires code modification. Lately I’ve been building the sites in a CMS, then schedule a training session with whomever is tasked with updating the site. The backend is user-friendly enough for the average web user to complete the day to day stuff, but any major changes in design or additional functionality should be handled by a pro. Thanks for your input.

Leave a comment

Your email address will not be published. Required fields are marked *