Options & Sideblog
-
- svgweb - Project Hosting on Google Code
- Raphaël—JavaScript Library
- Lifehacker's Complete Guide to Windows 7 - Windows - Lifehacker
- Rustic Creek Ranch | THE SHINING STAR OF NORTH TEXAS
- Usability.gov - Usability Home
- The Facebook app is dead, long live Facebook apps
- We've Got Technology Covered // OtterBox.com
- Callies Charleston Biscuits - Welcome
- Bayou City History | Blogging Houston's history with J.R. Gonzales
- Stack Overflow
-
- RSS 2.0 Feeds
- Journal
- Portfolio
- All Articles
- Atom 0.93 Feeds
- Journal
- Portfolio
- All Articles
TAMUSigmas.org: Introduction 10.27.2004
- Article Summary
-
Every designer has a project that marks a significant transition in their life. In my experience, no project is a better representation of this than TAMUSigmas.org.
As a member of the Alpha Lambda Alpha Chapter of Phi Beta Sigma Fraternity Incorporated, I've served as a webmaster of sorts for the past few years of the chapter's history. Through this time, brothers have graduated and moved on, and membership and leadership of the chapter has transformed a number of times. With each new induction of members comes a new method of doing things, and new personalities that alter the collective psyche of the organization through time.
With all the change that went on since my involvement in the fraternity, one thing that rarely changed was the Alpha Lambda Alpha Chapter website. The original design by Bro. Teddy Sanders established our presence on the web, while a slight redesign by myself in 2000 updated the appearance of the website. Intermediately, small updates were done by either of us to post new events, new photos, and add to our list of alumni and current brothers.
As you can imagine, all of this was accomplished using the tried and true method of editing static HTML files. Hindsight being what it is, this was the only solution for us since our only option for hosting the website at the time was on the free servers set up for student organizations at Texas A&M — and as you may have guessed, none of these servers were configured to allow student organizations to deliver dynamic websites.
As time went on, and I learned more and more about building dynamic sites through my experience with ASP and SQL, I found the process of being bugged endlessly to update parts of the website to be quite cumbersome. There had to be a way to allow current and former members to update things they wanted to update on their own! I began to focus my time on researching possible solutions to this dilemma.
Preliminaries
The first action I undertook in finding a solution to this problem was to think through my ideas for the website and write them down. I can't claim that the brainstorming process I undertook was exactly orderly, but the little structure that was there allowed me to progress from thinking about elements of design to thinking about structure to thinking about the easiest way to combine those thoughts into a workable solution. The key parameters that helped me focus my search for a solution were:
- Users must be allowed to submit content.
- The mechanism for allowing users to submit content must give me granular control over the types of content users are allowed to submit.
- There must be a mechanism that would allow me to import our current phpBB message board, and allow the current users of that message board to use their current roles to login and contribute content to the new website.
- The solution must allow me to use standards-compliant code for all tasks that will be sent to a browser.
- The solution must give me reasonable control over the overall look and feel of the final product — preferably, full control over behavior, presentation, style, and content.
- The solution had to be low-cost — preferably free.
- The solution must store its information in a database to allow more efficient storage and retrieval of content.
- The solution must be dynamic in nature.
- The solution must allow for users who are unskilled in HTML to still be able to contribute content while ensuring that the content submitted adheres reasonably to web standards.
Searching for a Solution
The criteria above suggested that some form of content management system would be an ideal solution for the problem. This conclusion led me to research a menagerie of content management systems software solutions on the web. So I signed up for some cheap web space and tried out a variety of them. For various reasons, there weren't many solutions that satisfied all of my criteria. Many of you are already familiary with these solutions, so I'll cut right to the chase and explain why they didn't work for me instead of giving you background information about them.
Movable Type
As one of the most popular blogging tools on the internet, it was a given that I'd give Movable Type a try. Knowing from the outset that Movable Type would not satisfy the message board criteria I had set, I researched ways that Movable Type could be hacked to allow it to share a user database with phpBB. There weren't any viable solutions for that problem. In addition, I found Movable Type's method of generating static HTML files each time an article was updated or a template was changed cumbersome and inefficient, though they have recently offered the option to create content dynamically in their newer versions. The final nail in the coffin for Movable Type was the inability to have strict control over user permissions for different content sections.
Mambo
Mambo's major weakness for me was the inability to finely control user access to content contribution, along with its inability to create standards-compliant code. For the latter, this problem was further exacerbated by Mambo's insistence on not allowing me to determine my own structure for content, which would have inhibited my ability to develop a design to my liking.
Drupal
At first glance, I thought that Drupal would become the solution I was looking for. Drupal had a robust permissions system, a forum, ability manage user access to content, and a templating system that followed web standards. Unfortunately, I was unable to find a way to import my old phpBB forum over to Drupal, so I had to give up using this CMS for this project.
PostNuke & PHPNuke
When it comes to modules and extensions, I don't think there's a CMS out there that can compete with the 'Nukes. Instead of importing my phpBB forum, I'd be able to use a wrapper function to call the forum from within 'Nuke, and I'd also be able to import my phpBB users to the Nuke database. However, the one vice of the 'Nukes is terribly unforgiving — there's no way to output valid HTML using these products. In addition, structure and presentation are so closely intermingled that it's impossible to change one without having a significant effect on the other.
Wordpress
Wordpress is actually a very nice blogging tool, but (as expected) it's not as effective as a full-blown content management system. As with many of the previously mentioned tools, administrative ability to control user access to content submission is limited, and there was no way to integrate this software with the phpBB board. One additional weakness is the inability to manage more than one section (weblog in Wordpress terminology) in a single installation; managing more than one section requires you to install the software in an additional directory. However, the templating system is very nice; structure (HTML) and presentation (CSS) are separated, and almost all output is templated, giving you the option of changing how you want output to be displayed.
Textpattern
Textpattern is quite a handy tool for projects that require a limited number of users to contribute content. Separation between content, structure, and presentation is taken to another level in Textpattern; in the admin screens this separation is visually reinforced by having separate tabs for each of these elements. Because of this, standards-compliant content can easily be created. Unfortunately, the permissions system isn't robust enough to handle finely tuned access levels, and there is no way to integrate my phpBB forum with the software. And it's such a shame, because Textpattern is easily one of the most efficient, beautiful pieces of open source software I've seen.
And that leaves us with…Xaraya!
Eventually, after scouring the list of content management systems over at Open Source CMS, I discovered Xaraya. There are many that consider Xaraya to be a slow, bloated tool, but not me. Even on my shared hosting account, Xaraya has decent response times, and with output and template caching enabled, the software performs even better.
Xaraya satisfied all the requirements I had, and even came with a few additional ones:
- Ability to dynamically add data to content sections, allowing me to add as many fields as necessary to extend modules and sections as necessary.
- A meticulously planned templating scheme allowing for a level of complexity unmatched by other systems.
- Ability to use PHP code into a template whenever the templating language isn't able to accomplish a particular feat.
- Default templates can be overwritten to allow you to structure content as you please, down to the finest details.
Unfortunately, the experience of getting used to such a flexible CMS was not without its difficulties. I managed to keep track of a number of the difficulties I experienced with this project. These difficulties will be the topic of discussion over the next few days, so all of you who are considering using Xaraya should pay close attention. Some of the problems I experienced were due to bugs that have since been fixed, and others were submitted as feature requests that have since been implemented. When either of these situations affects the validity of content, I'll make note of it in the corresponding article.
posted in Xaraya at 11:47PM on October 27, 2004.