Hashtags are controversial: not necessary and/or irritating for some, useful for others. I find them useful for three reasons: they simplify machine treatment, they reduce noise and, most importantly perhaps, they teach humans how to interact with machines.
Hashtags simplify machine treatment
Hashtags simplify machine treatment because they make tag detection, or keyword detection, straightforward. Keywords are unambiguous, from a machine’s point of view, if they’re explicitly identified as such. The alternative solution to detecting keywords in a message is to analyse the text, which involves complex, more expensive, coding and architecture. Furthermore, results aren’t really accurate. A same word can be used in different messages and only sometimes act as a keyword or tag. The context in which the word is used is what helps determine it, and context is precisely what it is tough for machines to figure out. Google’s billion-dollar operation is great at doing it, for example. But Twitter’s tracking feature, for example, isn’t.
Hashtags reduce noise (and increase signal)
In Twitterland, if I choose to track, say, “Microformats”, I’ll be alerted when “randomtwitterdude” tweets that he’s reading the microformats wiki. If I use Twemes.com or Hashtags.org, or any other, I’ll be alerted when someone decides to broadcast to people interested in Microformats (or simply archive what he’s saying in context), because these sites track hashtags, not words. I can safely say that I don’t really care about randomtwitterdude’s incursion to the microformats wiki, and that I do care when people use the #microformats hashtag. Information is put in a context, can be stocked in a library, can be delivered to me the way I choose and I can easily access it later. Randomtwitterdude probably didn’t even realise that he was broadcasting his message to others than his followers. By using hashtags, you explicitly declare your intention: machines, please act upon my message. Logically, you help reduce noise, even increase the signal.
Hashtags teach humans how to interact with machines
So we get to my last point: humans learn how to talk to machines using hashtags. Using a specific vocabulary, a # in this case, people know they’ll trigger a set of actions, enabling more uses from a simple message. This has great potential, since it means you can actually send a message to a computer, written in a slightly extended human language, and the computer will act on it. It carries a somewhat different cognitive meaning: don’t click, speak. Don’t be intimated by the buttons, tell this thing what it should do.
Hashtags are a nanoformat; there are other nanoformats, who tell machines other stuff: instead of a tag, you can explicitly mention a date, a location, a person, etc. So, while the computers that are great at speaking human languages are still expensive, relatively unreliable and dreadful to use (e.g talking to a robot on the phone), hashtags and other nanoformats are efficient enablers of more powerful human-computer interaction: inexpensive, accurate and precursors to what’s coming next.