Another buzzword has invaded my thinking with regards to The Product Idea and its name is Tagging. Let me give you the background story...
One of the reasons I want to design this CMS for the common man is that I'm in dire need of this product myself. When I think of content, I don't just think of web content. I think of everything I create, receive and download on a day to day basis. Email, tasks, class notes, meeting notes, blog posts, contacts, forum posts, web sites I like, music in my collection, ebooks, appointments, install programs, source code and other things I can't think of at the moment. I'm talking about most everything I have digitally that I'll want to reference and/or share out at some later point. When I add all that up, I'm producing, receiving, and sharing out an enormous amount of content week to week. This is the problem I was thinking about that lead up to this idea.
I normally organize things within each program. For files I just use the standard hierarchical folder structure as best I can. For email I can arrange them in a hierarchical folder structure and by conversation (along with various sorting options). On my web site the pages just go up based on the category I assign to the post and what month and year it was published. If I want to go back and find something later I'm stuck with either remembering what folder I placed something in or the search utility in the program or on Google. The search option seems to work great but it doesn't scale well after you have a large amount of content to search through. You just get too many hits. My idea to make this all better for myself is tagging. Tag absolutely everything I put into the CMS.
I expect that right about now I'll get flamed by everyone for using the latest buzzword. KC (of Casey Software) briefly mentions the phrase as part of the latest hot VC jargon. Well despite it being one of the latest Web 2.0 catch phrases, I think the technology has great use. The only thing is, it's been around for years. Anyone remember the metadata craze of the late 90's? Tagging is just metadata in a sexier dress. Well metadata seems to have failed miserably (I'm not counting ID3 tags and program metadata that are embedded as part of the file structure). How can I avoid the same failure in this product?
- Make it insanely easy to tag things.
- Tag things automatically based on where they get uploaded or created.
- Make finding content through tags easy.
- Let people stick with the old hierarchical model if they want.
- Integrate with other services.
- Keep the data open (no vendor lock-in).
I like the whole hierarchical model. It gives you the option of having a specifically defined path to get to or find something. Search just doesn't have the same capability when you're dealing with an ever expanding data set. The only problem I have with the hierarchical model is that it's a little inflexible. Search is all about flex and being dynamic. I think we can bridge the gap with tagging. The product can just dynamically build a hierarchical folder structure based on tags. Thus you get the advantage of a fixed hierarchical model but the flexibility to place the same item in other places of the hierarchy when it makes sense. You can also use tags to create a more informed deterministic search.
I'm sure there's more to this, but I just wanted to get a few things down. I think tagging is going to be an integral part of this product. Am I going buzzword crazy or am I on to something here?