Toward a Taxonomy Based Development and Management of Online Content, Scripting, and Design

07.12.2005

My professional forte is Drupal. For the uninitiated, drupal is an open source platform at making the lives of content producers easier by improving the process of

  • creating new content
  • organizing content
  • ensuring that as few variables as possible will interfere with future improvement of the site

This blog is one example of how drupal can be used. However, today, I built the beginnings of what will end up being an entirely new use of drupal: modular design and development of websites by calling libraries of modular CSS and XHTML code through drupal's taxonomy system.

Provided that more people than myself will recognize the advantage of css and XHTML libraries which are applied on the basis of easily selectable categories, we might see this concept change drupal's scope dramatically.

Contrary to understanding of most drupal novices, the taxonomy system is not merely an easy way to file content under categories. Categories, in the widely understood sense, are obsolete, thanks to the liberation of information and media from the physical realm. That might sound like crazy talk to a lot of people, but if you bother to look around, you'll see that what I'm saying is fairly obvious.

Take the local video store for example. The system of categorization is the perfect example of "the old way of thinking" when it came to organizing content. All of the videos are categorized into "action", "comedy", "adult". All of the vidoes in a category are alphabetized and placed together. The system was simple and effective, and was very suited for situations in which people were forced to find a which could not exist in multiple locations among thousands. However, this system has its obvious drawbacks. Take the movie Pulp Fiction. That film could be classified under no less 6 different sections, action/adventure, comedy, drama, or even, employee recommendations. If a video store existed online, most likely, you could expect movies to be classifed by no less than 10 variables:

  • Title
  • Year
  • Director
  • Average Review
  • Multiple Genre(s)
  • Sub-Genre(s)(i.e. cult, standup, TV-series)
  • Actors
  • "People who enjoyed this movie, also enjoyed...
  • ect...

The point is that the human mind has a tendency to classify objects, people, and situations along multiple, unstructured, unedited, and overall fuzzily coneived axis. The video store's classification system is like an on/off switch -- vidoes could only have one descriptive term, and either it has it or it doesn't. Such systems are frankly unjust to our capacities, and could only be legitimized by our technological limitations. Those limitations have disappeared, and the Internet is singularily responsible. This is rampant speculation, but I think the Internet defines this new era we find ourselves in -- much as the airplane, radio, atom bomb, and automobile defined the previous one. One key concept seems to be the shift from seeing knowledge as a structure, maintained by a strong foundation of academia, and libraries to seeing it as something like water, flowing and not flowing based on how open, the channels are. Or scratch that, back to web development.

Its time that we web developers let hard coding go. Why write out an XHTML Transitional document declaration, when we have PHP; we can dynamically control, and produce all of our declarations, stylesheet imports, metatags, pagetitles on the fly, yet many of us still start with templates, and continue to spend the majority of our time looking over our hard coded pages, trying to figure out why the pages aren't working. More often than not, its something like accidently capitalizing a css class's name in the stylesheet, and writing it out in lower case in the html document. I'd rather spend my time solving real problems, like design, user interface, content presentation. Our goal should be to create an enviroment to develop in that minimizes the number of errors that are bound to happen as a result of us being human. In addition, ease the process of experiementing with live web pages.

My goal is not to create a system which makes it easy for beginners to code webpages -- anything built for beginners is going to be humbug to professionals. At the moment, XHTML, CSS, PHP, and MySQL powered web pages are far too complex to have a tool that both opens the door to beginners, and allows professionals maximum flexiabilty.

I don't know if this made much sense -- I think it did. However, I'll wrap up this evolving idea in one line for those that are still trying to understand what I'm blabbering about:

Approaching the building and development of XHTML and CSS templates by using PHP to generate code from libraries of user-tagged layouts, properties, and tying that into a large well organized development enviroment that is controlled by easy drop down boxes, checkboxs.

Who knew? CSS and XHTML can be radically enhanced using the same concepts and existing platforms as we use for content management.

More on this later, believe me...

Comments

I have to disagree with you

I have to disagree with you that categories are a thing of the past. (Not for data as least)Categories are very beneficial especially when designed to support n-tier nesting.

http://www.sitepoint.com/article/hierarchical-data-database

To solve the problem of video store's categorization I would create 3 tables category(adjacency list model) <->  lookup table  <-> videos

The lookup table provides the means of many to many relationship.  This way a video can exist in multiple categories.  Now when a manager enters the movie pulp fiction it can be classified in all the appropriate categories.(not just 1 level)

I do believe that attempting to classify users is the thing of the past though.This is actually how I ran into your site.  I'm trying to find out more about the authentication system for drupal.  (as i'm evaluating joomla and drupal - I've developed my own CMS running blogsyndrome.com and robusthaven.com  ) Users status change every year and are very complex therefore simpleclassification no matter how nested would not help in seperating the users.  The biggestreason is because how do you handle exceptions.  I've come up with my own solution... to encourage discussion I'll post pone until a later time. leblanc [at] tamu  edu

rails on ruby

Hi Nick, Recently - as a result of my drupal forays, which are very empowering, I began to get the desire to start programming again. Looking around at todays state of play (when I last did this I was doing prolog! - badly) it seems that the best thing may be to learn ruby and the rails on rub. meant to be extremely enjoyable and efficient programming, even makes ajax a synch apparently. So my question to you is - does that make it impossible to get involved in drupal module development? Would I have to learn php as well? I want to learn ruby/rails whatever. BTW, regarding your nav tool for drupal, I saw somewhere a simple trick for generating curved edges on the fly. Might make your dynamic nav bar even prettier.. if youre interested let me know and I'll try to track the details down again.. BTW, hope you get the right opportunity and works out well for you. I myself quit a good paying job in Singapore for a change of lifestyle, was a bit more complex than that really. But basically headed to Indonesia where Ive finally followed long held plans to set up my own business. Anyhow along with the need for income, I also share your inspirations to see an empowered and equitable world. Reading your post was strangely like reading my own thoughts. If you do by chance happen to end up taking the road to Indonesia, please let me know! Im in fact in the process of creating a plan/proposal for a leapfrog project in Eastern (less developed) Indonesia. Im looking 5 years ahead, first year is about developing people skills in prep for later tec related developments. aim to introduce wifi/wimax and then mesh network, and bottom up - grassroots self organizing communities atop. would welcome your input if you were interested. All the best, mark

Mark, we must talk more.

Mark, we must talk more. I've just signed away my papers to do a years service as an Americorps Vista. I'll be working on a list of projects, and will have so many responsibilities that I cannot fit them into this space. However, I think its important for all people who are minded like us to connect and to constantly share and bounce of ideas... even in cases, such as ours, where we are literally on the otherside of the world from each other. I'll most likely be sending you an e-mail soon

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options