With Twitter and other microblogging sites becoming more mainstream, the need to deal with noise volume becomes more and more critical. One of the unique components of Nouncer is the ability to slice and dice live data streams with very elaborate subscriptions.
While Twitter success is driven mostly by casual chatter, Nouncer as a platform is focused more on content than its social networking aspect. The distinction is important because it sets the tone for the way message metadata is created, added and managed. It is part of the difference building a platform rather than a service.
Jaiku was among the first sites to add channels, the ability to create a micro-blog group where people join, and everyone can send a message in real-time to everyone else. This was a natural evolution of the format – so natural that Nouncer started from that concept instead of the one to many format used by everyone else.
My first pitch was “Yahoo Groups over IM and SMS”. Jaiku channels are good but didn’t go far enough with regard to more complex access controls and subscription model which are critical in a group producing vast amount of daily updates. Channel administration can be complex as it is done by few and usually once.
With Twitter as the ruling king of real-time people oriented chatter (and I say ‘chatter’ with immense respect), it is only natural to expect some form of groups to be added. It is the way people create communities and interact. But the Jaiku model of channels might not be the best fit for the current Twitter crowd. Chris Messina recently posted an interesting proposal for adding an ad-hoc grouping functionality to Twitter using hash tags, with good feedback from Stowe Boyd.
Chris’ idea in a nutshell is to use #tag in Twitter messages (as in “I really want to buy an #iPhone but have no use for it”), and allow users to search and subscribe (follow) tags. This means you will be able to receive (in real-time) all messages with the #iphone tag regardless of who sent them.
On the other hand, Nouncer uses full metadata infrastructure to create a completely customized template for messages. The idea is that use cases such as the Amazon Twitter specials need a stronger platform to really take off (currently Amazon have 181 followers). Think about announcements like “Milk is now 10c off” in supermarkets making it onto the web where Amazon can sell overstocked items at a discount for 5 minutes.
Woot does this for one item a day and it is usually a tech gadget. But if Amazon wanted to do it, they would either have to create hundreds of Twitter profiles, or force their followers to get hundreds of messages a day with promotions on stuff they really don’t care about.
There are three main approaches: channels, keywords, and metadata. Channels are the Jaiku solutions which is the Yahoo Groups analogy. I think channels will be the most popular solution among non-geeks as it doesn’t require any extra work once you join a group and it is how everything else works today.
Keywords are very similar to Chris’ idea – using words within the message itself to create dynamic association of people and messages. The keywords approach can be implemented using any word in the message, or only those marked as proposed with hash tags. I think the keyword solution is best for the high-frequency Twitterrers using mostly mobile devices to enter their messages.
Third is the Nouncer approach of using metadata, that is, tags and other information that is not part of the message body itself. Metadata will not work on mobile device and is an overkill for chatter, but is a perfect fit for the Amazon special of the minute use case and other corporate needs.
At the end, all three formats will be offered (Nouncer includes all three) and used differently by different people. What I like most about Chris’ proposal is that it is simple to use and is built upon existing practices (you can even use it now before it is even supported). Twitterrer already use @someone to indicate a message is a reply to a particular individual – like this.
The Twitter reply does not lose the public timeline concept – even replies are public for all followers to see. I would probably make one small suggestion for tags with all numbers to be excluded to prevent phone numbers from being indexed.
The trick with all this is the engineering challenge. Working with fixed subscriptions is a known problem which has good solutions. Both Jaiku’s channels and Twitter’s followers create a fixed list of subscribers for each incoming message. It is a single lookup and then a single iteration over the subscriber list sending a copy to each interested party.
But to create dynamic subscriptions (send me all iPhone related messages about Facebook) is an expensive service to offer. It is still coming our way – and will become part of the basic microblogging product we use – how soon is the question.
At the end, microblogging success will depend on one thing – the ability to filter out the noise. Tags are one important way to do that and find more relevant content, but it is just one piece of the puzzle.