Tagging has been one of my recent interest fields. The concept of attaching words with objects exposes a lot of possibilities, although it is quite simple and straightforward.
While there are people who say that tagging is not useful/time consuming  , I feel this is just the beginning in information/knowledge management. I feel there should be one solution that fits all. If you don't like tagging don't tag. If you want tagging use it. And if you want more than that, have more (this is yet to come, but there are people working on this).
There are many other tools/technologies being developed in the semantic world that help this cause, but their 'complexity' has resulted in lesser adoption. So the golden rule seems like 'If it is for the web, KISS'.
Tagging in its present form has a lot of cons and so it is evolving naturally. Here is my first snapshot of the latest developments in this field.
– Explanation of flickr clusters  
About the concept of tagging
Tools built using tags