A Cost Effective Content Management System

August 2010

Towne Properties is a collection of businesses that range from land development to apartment management. We have a diverse need for websites and have entered into the Search Engine Marketing (SEM) world which encompasses Social Media as well. Towne Properties uses a SQL database from Yardi Systems as our property management and accounting platform.

When I first arrived at Towne almost 3 years ago, we had a collection of apartment websites, corporate pages and a few pages for our Condo Associations. We also had “rogue” web projects happening since there was no cohesive strategy. Towne was spending in excess of $100,000 on websites and web support. We were trying to use Yardi’s new web solution as a platform for our websites, but for a variety of reasons this was not a good solution for us. Several other Towne businesses had signed contracts with outside firms to deliver websites. There was no cohesive strategy for creating websites, maintaining content or even registering websites. I found myself being drawn into arguments defending my database vendor even though their offering was limited. There had to be a better answer to this web soup that mired us.

In all of my previous experience, there was always an Open Source solution that could at least be evaluated before choosing a commercial product. GNU Make and GNU emacs had served me well in my “former lives” and I turned again to Open Source. I spent significant time reviewing the Open Source Foundation (OSF) and the various products that OSF has to offer. I was pleasantly surprised to discover a content management system known as Joomla! (www.Joomla.org). The name Joomla! is the phonetic spelling of the Swahili word “Jumla” which means “all together” or “as a whole”.

Open Source for an enterprise-wide web solution. Really? The most important difference between Open Source software and commercial software sold by vendors is that Open Source software is published under licenses that ensure that the source code is available to everyone to inspect, change, download, and explore as they wish. This is the essential meaning of open source: the source code--the language in which the software is written and the key to understanding how the software works--can be obtained and improved by anyone with the right skills. In this case, we were able to obtain a fully functioning version of Joomla! FREE.

Joomla! has proven to be an award-winning content management system (CMS), which enables you to build Websites and powerful online applications. Many aspects, including its ease-of-use and extensibility, have made Joomla! the most popular content management system available.

A content management system is software that keeps track of every piece of content on your Website; much like your local public library keeps track of books and stores them. Content can be simple text, photos, music, video, documents, or just about anything you can think of. A major advantage of using a CMS is that it requires almost no technical skill or knowledge to manage content. Since the CMS manages all your content, you don't have to.

Another feature of the Joomla! environment is the ability to utilize “plug-ins” to add capability to websites. These plug-ins, known as extensions, also fall under the Open Source concept. The majority of the 3000+ extensions are available in two “flavors”; basic for free and enhanced for a fee.  These extensions provide enhanced functionality such as calendars, chat rooms and image manipulation.

TISI was able to obtain initial funding for consulting to kick start our effort. Patken Group, has a Joomla! expert in their organization. We used this expert, Steve, to do a proof of concept on one of our commercial apartment websites. Steve quickly delivered a website template and then spent a few hours with Luke. Very quickly Luke was realizing the power and flexibility of Joomla! and was taking off on his own. In the course of learning this CMS, Luke identified two final pieces of the puzzle. The first was an enhanced product offering from GoDaddy.com. GoDaddy.com has support for Joomla! built into its’ Virtual Hosting Machine (VHM) product offering. VHM would allow us to potentially place hundreds of websites in one “server” space saving money and development time. This server space can be manipulated, modified, upgraded and backed up from one single point. For instance, if a fundamental change needed to be made to all of the websites, this change could be made from a single point of maintenance instead of one hundred. The problem still remained that we needed a way to develop several websites and Joomla! is a single-instance CMS.

Along come the extensions. One of the advantages of an Open Source product is that there are literally thousands of developers looking to solve short comings that exist in a particular Open Source product. Joomla! is no different. An extension called Joomla! Multi-Sites (JMS) came to the rescue. JMS allows the Joomla! CMS to extend itself from one to many websites utilizing the same database instance. One administrator could now maintain hundreds of websites from a single point. Another advantage can be realized when considering web features. Since this is a CMS that supported multiple websites, changes made to extensions can be easily propagated to all of the websites. Imagine finding a new Calendar plug-in that you wanted to use on all of your websites. If you had fifty instantiations of a CMS, you would have to completely install the plug-in for each web CMS instantiation. In our case, we can add the new capability and either perform a backwards compatible upgrade or have the capability automatically available going forward from a single point of maintenance. JMS lends itself very well to sub-domains in the GoDaddy.com environment. Sub-domains allow one web address to be used for many websites. We are now able to prototype a website and gather feedback from our users before publishing the website in the final domain space. For example, if TISI were developing websites for Technology First Meadows, Salyers apartments and Jayjohn realtors, they could all be done at the same time and test websites could be published to TECHNOLOGYFIRSTMeadows.tisi-test.com , SalyersApts.tisi-test.com , and JayjohnRealtors.tisi-test.com . Once each of these customers provided feedback and gave the publishing “go ahead”, sub-domains allow the addresses to be changed to the reserved domain simply by “repointing” the ip address and publishing the DNS without changing or modifying the web pages! Another benefit is that the Master site can be copied to another multi-site “slice” and renamed which allows for fast website creation. Joomla! websites also utilize style sheets. Style sheets are an industry standard web mechanism that describes the physical aspects of each piece of the viewable content. For instance, a style sheet could define background colors, font color and font size. That would allow a user to change the color scheme for their website for each season by simply changing the style sheet that was referenced in Joomla! Each of the Joomla! components have access to their own style sheets as well lending to the customization. A hypothetical relationship of these tools is shown in the image below. Assume you have two entirely different types of websites you have to support. You might put all of your apartment websites into the first Joomla! Multi-Site instantiation and put your commercial websites onto the second. The example shows that websites # 1 has been launched, #2 and #3 are being reviewed and #4 is a demo website. All of this is running on the GoDaddy.com virtual hosting machine for dollars/day for ALL.

JoomplaGraphic

search | login