http://designorati.com

Joomla! Content Management System: Making Open Source Proprietary
By Pariah S. Burke On 4th April 2006 @ 05:00 In Web Design, Features, TOP STORIES | 37 Comments
Question: What happens when programmers go it alone, running their own company, without administrative oversight, a documentation team, or a perspective grounded in the markets served by their product?
Answer: The Joomla! content management system.

Joomla is a new open source content management system. You may be more familiar with Mambo, named “Best Open Source Software Solution” at LinuxWorld Australia. For the last few years, Mambo has been highly regarded as the best. Joomla effectively is Mambo. In August 2005 the entire Mambo development team walked out on the company and formed their own, carrying the Mambo code with them. After integrating already planned Mambo enhancements and bug fixes, they dubbed their repackaged CMS Joomla.
Both systems are, by all accounts, solid, stable, reliable systems. The problem is, they’re written by programmers, for programmers. Mambo has better help and resources. As of mid-2004, it allegedly had actual documentation team, although their efforts (if any) are not apparent on the official [1] Mambo Web site. [2] Joomla has even less (read: none), despite listing two staffers as co-leads of a documentation team of two (it’s unclear if these are the same two people that formed Mambo’s documentation team).
Mambo’s site has a few meager Flash tutorials that explain how to write an article or swap pre-created templates, but no where on the site can most new users find instructions on how the system works and how to customize it. But don’t say that to the Mambo or Joomla communities! They’ll bury you in links to novice-level, generic HTML and CSS coding articles that are little more than over-wordy rehashings of posts to A List Apart and WebDev.com. Both Mambo and especially Joomla poorly choose to let their communities document their products through crowded bulletin board forums, and the communities are themselves programmers. To them, “customization” and “layout” are synonyms for CSS (an apparently new concept to the shared Joomla and Mambo community), and “structure’ means CSS floats and making sure the DOC TYPE heading is correct. Asking the question of how to customize a template so as to include or alter the positioning of certain types of content is invariably met with responses like: “Change your presentation by altering how it floats in the table cell. Use Cascading Style Sheets (CSS). Here’s a link to a CSS tutorial on floats.”
Joomla’s site lists on every page a link to a lengthy style guide to help its team write articles conforming to the company standard, and they also link to a brand manual; yet the Help section of the site doesn’t even link users to a function reference. Instead, you’ll find this minimal nugget of information buried in the Downloads section of all places. But don’t actually look for it there; it isn’t linked from other pages in the Downloads section, which focus solely on smoothing the transition to Joomla for existing Mambo users (new users be damned apparently). I found the [3] File and Function Reference page by crawling through the forums—one post linked to another, then to another, then, eight links deep, on a post totally unrelated to function variables, I stumbled across the link to the File and Function Reference. It was given in response to a question that had nothing to do with the contents of the link, not only demonstrating how ineffective Joomla’s peer help can be, but also how difficult it can be for anyone to find information in their forums.
Good luck finding definitions and allowed variables for Mambo and Joomla functions like mospathway, mosLoadModules, and mosCountModules—this last one no one, not even the development teams, seem able to explain because all the forum posts asking for a definition begin with “I think…” and usually contradict each other. Because there are so many confused people in the forums who typically post the entire contents of their index.php template, searching on just a function reference like is impossible. Even if the search doesn’t fail with a warning that the search was too broad, you’ll get hundreds of messages in the results—most having absolutely nothing to do with the definition of the function. What is “user1″? Judging solely by the code of the default index.php, it’s some kind of container. Currently it holds the “Latest News” section of default Joomla and Mambo Web sites. How “Latest News” got in there is unknown because the admin CMS does not list user1 as a module. Nor does it list user2, user3, or user4, all of which are present in the default template and which contain different types of content (user4 contains a navigation menu!). After a few hours of digging you’ll discover that the last part of that reference, “-2″, is one of six esoteric codes that determine whether the content of user1 is to be wrapped in HTML table code of various styles, empty DIV containers, or nothing at all. (I’ll save you a few hours: -2 specifies no containing element.)
Frustration levels are high because these CMS systems are widely regarded as the best, but the available help is arguably the worst, as one user recently discovered on the Mambo forums when he [4] asked simply for an updated manual. In that thread, the helpful forum veterans zeroed in on specific terms while ignoring the poster’s real question. One has to wonder if the respondents were too busy to read or were simply employing that time-honored Internet tradition of dazzling with bullshit to cover up the fact that they didn’t know real answers. The questioner was ignorant of the Mambo and Joomla lingo—as any new user would be—so respondents dragged out the pointless and repetitious discussion for 45 posts before someone finally told him to go buy a book.
In that thread, the questioner became understandably frustrated. He obviously had a short fuse, but anyone would have blown eventually during that discussion. Regrettably, he’s not alone in finding no help among the allegedly helpful communities. Searching the Joomla forums for the word “frustrated” returns seven pages of results. That’s twice as many as a search for the string “what AND mosCountModules” (”mosCountModules” alone errors out as being not specific enough).
Next, The real price tag of Joomla.
Both Mambo and Joomla are open source, which means they’re effectively free. They do ask for donations, of course, as do most open source projects. I use a few open source applications and systems—WordPress on my personal blog, for example—and donate to the ones I use. I encourage others to do the same.
However, I recommend against donating to Joomla. Why? Because Joomla isn’t really free.
Donations to open source software takes the place of licensing fees for commercial software. You pay a licensing fee for Photoshop—it’s commercial software. But with Photoshop, you get a help file, PDF manual, and access to someone who can answer your questions. Anyone is given the means to quickly educate herself in Photoshop and get up and running relatively quickly. Fewer hours spent learning equates to fewer unbillable hours you have to absorb.
Open source software rarely has a technical support department, but better programs always provide a user manual, help file, and/or on-line WIKI. They also grant access to knowledgeable people who will (eventually and usually) read user questions and respond with reasonable help. Often this is in the form of an online forum, which is generally a wise choice because it enables one person’s answered question or solved issue to benefit others with the same question or problem.
Joomla offers none of the above. There is no manual or online WIKI. Although the Joomla CMS includes an integrated help file, it’s breezy and minimal, and really only usable by those who already know the answer they seek. It’s a refresher course, and focuses almost entirely on the user interface of the admin back-end without regard to the unique variables and programming calls one must master in order to edit, build, or even just rearrange content on the site templates. Joomla’s online forum is massive, as is the selection of independent sites devoted to supporting and appreciating the CMS, but, again, they’re only useful to those who know Joomla well enough to phrase the exact question they need answered—in Joomla terminology. A new Joomla user, not already very familiar with Mambo or Joomla, is quickly lost in the forest of unhelpful detritus and misinformation whose darkly thick canopy blocks out tiny rays of shimmering knowledge.
Joomla requires total and complete self-education through trial and error and meticulous picking apart of its 6MB of files and thousands of lines of code. While licensing the product is free under the GNU Public License, the time involved in figuring out how to use it—the cost of ownership—is a significant investment. You can download Joomla free, but be prepared for a high initial overhead nonetheless. And, if you’re going to invest so much in learning it all by yourself, the Joomla team doesn’t deserve your cash. If there were a licensing fee for the product, you could send them a bill for your time instead of a donation check.
If you’re willing to invest your unbillable time, and do manage to figure out how to use Joomla, there is a rich selection of third-party add-ons available to extend or replace functions both in the public view and behind the scenes. You’ll need to learn a whole new lingo (of course): these aren’t the familiar plug-ins or scripts, they’re modules, components, and mambots.
All three classes have a specific function. Modules are sections of content, which can mean anything from a menu or poll, to a list of articles or the article bodies themselves. Components are applications or plug-ins that operate only on the back-end, in the CMS admin area. Adding a genuine blog into Joomla or Mambo, for example, requires both a component and module—the first to put the blog management system into the CMS, and the second to display blog content on the face of the Web site. Lastly, Mambots are what anyone traditionally thinks of as plug-ins (Why aren’t they just called plug-ins, for Pete’s sake?). They add new functionality to the system or extend existing functionality. If you’re familiar with blogging software, mambots will make instant sense to you (once you get past the name). They are plug-in scripts that intercept and alter content before display. For example, one popular plug-in for the WordPress blog is Textile, which enables content creators to type special codes into their blog bodies. Those codes are replaced at display time with predefined content—two hyphens become an em dash, for instance. In the real content stored in the MySQL database, there are still only two hyphens; it’s just when the content is displayed on the site front-end that the transformation takes place. Mambots do the same thing for Mambo and Joomla.
There are literally thousands of modules, components, and mambots floating around to help you change or extend your CMS—with more being developed daily. Be aware that, in the fine Mambo and Joomla tradition, almost none of these come with instructions. Many don’t even carry a one line explanation of what they are or do. This is the ocean—now swim!
There’s a secret to the Joomla/Mambo dynamic that might—and I stress might—save you a little frustration if you decide to try out either one. Joomla 1.0x is Mambo 4.5.2 with just a few minor tweaks. Joomla is the newer, better product, but it has zilch for documentation (this should be amply clear by now). With very few exceptions, the modules, components, and mambots that work on one will work on the other. More importantly, Mambo does have some documentation. It’s not much, but it’s better than nothing (think about the documentation in terms of food: you’re starving in the forest, and after a while, a meal of grub worms would be a delicacy). Thus, if you can’t find help on Joomla’s site (and you won’t), try Mambo’s. Start here, with the over confidently named [5] Comprehensive List of Mambo Documentation. After that, you’re on your own. I recommend asking Google far and above asking the internal search engine on either CMS’s site.
Next, the final word, and where to go to see Joomla, Mambo, and other CMS systems in action—free.
If ever there was a case for not allowing programmers to run the show, Joomla would be it—in spades.
There is no concept among the Joomla development team—nor, apparently, its army of ardent supporters—of how someone with a job to do might actually begin using Joomla. The prevailing attitude seems to be that everyone should already, instinctively understand Joomla’s proprietary lingo, unique PHP functions and variables, and entirely alien (but efficient) method of content organization and presentation. If you were sleeping when Joomla came door-to-door training the world, then simply heed the advice Joomla forum veterans and moderators most frequently give to new users seeking help: “play around with it until it makes sense.”
Surely, this is a genuine pearl of wisdom for, after all, why would someone with lot’s of work and limited time have an interest in professional-grade content management systems?
The Joomla tag line is: Because Open Source Matters. Well, I’ve got news for you folks: Open source only matters when it’s documented, accessible, and open. Otherwise, you’re just a different kind of proprietary.
If you are a programmer whose manager allows you plenty of time to “play around with” software until you stumble across all the right answers, or if you have no problem using one of the countless free, tables-based Mambo or Joomla templates available from coders of various skill levels, give Mambo or Joomla a try. If, however, you work for a living and would like to actually have control over the design and appareance of your own site, stay far away from Mambo or Joomla. Keep an eye on them; they’re one excellent CMS, and some day, may even have documentation that actually makes them usable to the average professional content creator.
If you’d like to try out Mambo, Joomla, or one of their dozens of competitors free, visit [6] OpenSourceCMS.com, an amazing new site that enables anyone to freely explore and try out dozens of open source CMS and blog systems.
Article printed from Designorati: http://designorati.com
URL to article: http://designorati.com/articles/t1/web-design/759/joomla-content-management-system-making-open-source-proprietary.php
URLs in this post:
[1] Mambo Web site: http://www.mamboserver.com
[2] Joomla: http://www.joomla.org
[3] File and Function Reference: http://help.joomla.org/content/view/33/125/
[4] asked simply for an updated manual: http://forum.mamboserver.com/showthread.php?t=76360
[5] Comprehensive List of Mambo Documentation: http://forum.mamboserver.com/showthread.php?t=42100
[6] OpenSourceCMS.com: http://opensourcecms.com/
Click here to print.