What’s the best manner of implementing a social activity stream? [closed]

I’m interested in hearing your opinions in which is the best way of implementing a social activity stream (Facebook is the most famous example). Problems/challenges involved are:

  • Different types of activities (posting, commenting ..)
  • Different types of objects (post, comment, photo ..)
  • 1-n users involved in different roles (“User x replied to User y’s comment on User’s Z post”)
  • Different views of the same activity item (“you commented ..” vs. “your friend x commented” vs. “user x commented ..” => 3 representations of a “comment” activity)

.. and some more, especially if you take it to a high level of sophistication, as Facebook does, for example, combining several activity items into one (“users x, y and z commented on that photo”

Any thoughts or pointers on patterns, papers, etc on the most flexible, efficient and powerful approaches to implementing such a system, data model, etc. would be appreciated.

Although most of the issues are platform-agnostic, chances are I end up implementing such a system on Ruby on Rails

13 Answers
13

Leave a Comment