I am implementing a news feed similiar to Facebook's.

Essentially, the feeds are stored as individual items:

1 Nov 2012 9:00 AM [John] was [tagged] in [photo album "Halloween 2012"]
1 Nov 2012 9:20 AM [Andrew] was [tagged] in [photo album "Halloween 2012"]
1 Nov 2012 1:00 PM [Jerry] was [tagged] in [photo album "Halloween 2012"]
1 Nov 2012 5:00 PM [Anne] was [tagged] in [photo album "Halloween 2012"]

1 Nov 2012 9:00 AM [John] [committed change 0e5s8d2e8s] in [code repository "XYZ"]
1 Nov 2012 9:20 AM [John] [committed change 3afasdfa3] in [code repository "XYZ"]
1 Nov 2012 1:00 PM [John] [committed change fdghd5h323] in [code repository "XYZ"]
1 Nov 2012 5:00 PM [John] [committed change 090df0dsasf] in [code repository "XYZ"]

Displaying each feed item individually is pretty naive and would be quite repetitive and hard to use. It also inhibits content discovery.

Thus, feeds like Facebook will perform aggregation on the feed item's object:

[John], [Andrew], [Jeffy], [Anne] was [tagged] in [photo album "Halloween 2012"]

[John] [committed 4 changes] to [code respository "XYZ"]

Given the above aggregation, what time and date should be displayed for each aggregated news feed item?

Finally, let's say I have a series of feeds like so:

1 July 2012 [Julie] was [tagged] in [photo album "Mike's Wedding]
30 June 2012 [Jack] was [tagged] in [photo album "Mike's Wedding]
20 July 2012 [Mike] was [tagged] in [photo album "Mike's Wedding]

Should all of those feed items be aggregated together when they occurred quite far apart from each other? If not, what is the maximum time interval for aggregating feed items? Should the time interval be absolute to the user's timezone, or should it be relative (starting from when the first feed item to be aggregated is generated)?

1 Answer 1


For a group of identical tags like your last example where only the timestamps vary, feed aggregators typically only display the most recent timestamp, often using the work "Updated". For example:

[Julie] was [tagged] in [photo album "Mike's Wedding"]
  Updated 20 July 2012

This indicates that the most recent activity occurred on July 20th, but there may be other previous activities.

If it is necessary to show all of the dates and times, I would recommend only showing the most recent date, with a "+" or "show all" or similar link that will drop down a list of all of the timestamps.

Since you are comparing your format to Facebook, you can see that this is actually how Facebook does it to. Go tag a friend in 5 photos at noon, and it will say "[friend] was tagged in 5 photos, Today at 12:00 PM". Then go back that evening and tag them in 5 more, and the entry now says "[friend] was tagged in 10 photos, Today at 8:00 PM". Although they were only tagged in 5 at 8 PM, it is counting all 10 photos and using the latest timestamp.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.