August 18, 2007 9:45 AM

For a long time I had an interest in writing a personal philosophical tract, some kind of representation of all of the transient yet important ideas that arise to my consciousness from some unknown place in my head. They're usually quite terse, almost to the point of meaninglessness, but they often don't require much more than that to make sense to me. I've tried to sit down and write bigger things out in a standard, linear form, and even a loosely structured, subject-based style, but my interest usually doesn't last very long -- these formats are too demanding, too rigid to properly reflect the spirit of the ideas. If it's to be a philosophical tract that I'm responsible for, it needs to allow for terseness, incongruity between thoughts, yet somehow retain some sense of logic to be digestible.

Not so long ago, I went through a personal crash course on PHP and MySQL, in creating a website and friendly content-managing backend for my community radio station. It occurred to me that these technologies could very easily serve my long-time interest in creating a philosophical tract. With PHP and MySQL, the content can be dynamic, self- and extra-referential, non-deterministic, and chaotic, without much effort.

My initial idea for the database structure is this:

- idea
- metatag
- usage

The idea is, obviously, the thought that I want to keep. The idea may be a paragraph, a sentence, a sentence particle, a list, maybe even a sound or image.

The metatag is a way to group these small ideas into larger, roughly connected ones, much like any of the social networking systems utilize tagging. These metatags are responsible for generating "articles," compilations of thoughts, out of ideas that are tagged as related or unrelated. This will be how the philosophical tract will be actualized -- in a compilation form.

The final definition, usage, is to specify the where, when, and how the idea may appear in the articles. It controls the idea's behavior and appearance, in relation to its tags and the visual space. The articles could be simple text-based entries, or more graphic in character, depending on how the individual ideas are defined.

For example, say I have two ideas: "my dog has a bone," and "my head itches." I could tag the first idea as "dog, bone, ownership", and the second as "head, itch, problem" (the tagging is non-systematic, don't think about why I chose those tags too much!). I might define the first idea's usage as "v.floating, introductory" (let it appear anywhere in the visual space of the article; prioritize it so that it appears with greater, 'highest' importance in the article), the second as "i.random, v.random" (let it become internally non-deterministic; let it become visually non-deterministic).

Alternatively, the usages definition, maybe even the metatag system, could be further sublimated into the ideas by creating a markup language (perhaps in accordance with XML standards) that allows me to define how the ideas are moved around. For instance, the tags and usages could be represented like so:

<idea="dog, bone, ownership">
<use="v.floating, introductory">my dog has a bone.</use>
</idea>
<idea="head, itch, problem">
<use="i.random, v.random">my head itches.</use>
</idea>

Regardless of how I choose to incorporate the idea's classification and behavior, the result will be roughly identical. The article of these two ideas might look like this:

This is only a rough example of what could happen. The usages, and how the article reflects these usages (visual placement, non-determinism, etc.) will all deeply affect the character of the articles. In this theoretical example, the image was taken from Google Images, the first result for "my head itches" (A curious one at that!). The text of "my head itches" has been obfuscated, randomized both visually and internally. "My dog has a bone" has been given the visual priority, in accordance with its "introductory" usage definition. I think you can see how the usage definitions might help add complexity, interest, and logic to the final articles that are generated, and free them from the strict determinism of their tags.

While I initially concieved this program to be used to hold my philosophical ideas, I'm realizing now how useful this same process might be for any other creative work (sound, images/video, etc.). I probably will want to start prototypes as strictly text-based, to make its initial development quicker and easier for me. There are also some assumptions I make in outlining this program, that I want to actively re-evaluate in development:

- Will a tagging system produce the desired results? What are the desired results? What are other ways to organize information?
- How else can idea 'behaviors' be defined, explicitly or inexplicitly?
- How might the ideas of other generative-type work be applied to this program?

What do you think?