The SUP validated. I'll post it in a comment with http: changed to p: so autolinking doesn't mess it up.
- Bruce Lewis
{"since_time":"2009-11-04T21:01:03Z","updated_time":"2009-11-04T21:03:13Z","available_periods":{"600":"p://ourdoings.com/sup.json?seconds=600","300":"p://ourdoings.com/sup.json?seconds=300","60":"p://ourdoings.com/sup.json?seconds=60"},"period":120,"updates":[["2ab","1f98"],["2aby","2009-11-04T21:02:58Z"]]}
- Bruce Lewis
"For smaller publishers, it may be easier and more efficient to contribute updates to a shared SUP feed hosted elsewhere, instead of generating their own SUP feed. FriendFeed provides a public, shared SUP feed that is open to updates from anyone."
- Mike Chelen
from Bookmarklet
Thoughts and comments on oSync http://www.osync.org - oSync is a RSS/Atom like content syndication specification in JSON and takes into location, tags, commonly used namespaced elements (iTunes, Yahoo) and especially SUP baked right in! Not to mention JSON from end-to-end.
Its not compatible at all with atom-json. The approach with atom-json was to take all of Atom and make it onto a json object which is fine if that is what you want. To me atom-json feels like XML being represented in JSON. I took a more the same approach as Dave Winer did when he created RSS and tried to make it really simple to syndicate content but in a very JSON way.
- Ray Slakinski
Updated some of the elements here based on some comments I got back
- Ray Slakinski
3. I expect to see update at http://friendfeed.com/martyno... - but nothing happens. No new enrty for at least half an hour after ping. It appears only when I go to my "services" page and manually press "Refresh Custom RSS/Atom". Where am I wrong?
- Сергей Мартынов
Sorry for the delay and thanks for the bug report. Public SUP should be working now.
- Benjamin Golub
@bgolub, thank you! Thanks to this problem I learned how PubSubHubbub works and implemented it :) By the way - currently I support (and ping) both SUP and PSHB in my feed - may it lead to some problems or is it okay?
- Сергей Мартынов
I'm speculating based on this outage and the one during Gnomedex that you're actively working on something SUP-related for FriendFeed. Any comment? :-)
- Bruce Lewis
И так далее: it should be fine to use both. Bruce: this is actually a lot less exciting than that. A machine got hung up over the weekend and we only just noticed :(. The Gnomedex outage was also not very exciting...they just tripped the IP limit because so many users were making requests from the same IP.
- Benjamin Golub
I actually meant the other Gnomedex outage -- the one that kept SUP-enabled feeds from showing at all.
- Bruce Lewis
Enjoysthin.gs now supports SUP. If you're importing your RSS feed from enjoysthin.gs to FF, it should happen a LOT faster. I have a couple more kinks to work out, but it should just start working for anyone already using it. Huzzah!
Nice, glad to hear. Software by committee doesn't generally work work. It's best to have a king at the top, even if he/she listens very closely to what people are saying.
- Ted Roden
Anyone know how long it takes for FriendFeed to notice that an RSS feed has started supporting SUP? I've added it to a site, but FF hasn't picked it up yet.
Hey Bruce, could you elaborate on why you think SUP is more fault tolerant? Hubbub will retry to deliver updates in the event of a failure.
- Brett Slatkin
Partly because I didn't know that, and partly because I don't want to implement retries on my (publisher) end, because I'm lazy.
- Bruce Lewis
Well, retries are pretty easy I think. The ping is such a light-weight operation that it usually can happen in less than 200ms. So doing it synchronously, even with retries, really doesn't slow publishing down very much.
- Brett Slatkin
It is possible (given sufficient resources or even just using a web search) to infer the resource from a resource token. The resource might be password protected but by tracking the SUP document it becomes possible to perform
traffic analysis: http://en.wikipedia.org/wiki... on private resources because you will know how often and when they update. The spec should point out the potential risk.
- Adewale Oshineye
I've given this issue a lot of thought because it affects OurDoings. The risk is negligible. I don't have time for an extensive comment now, but hopefully can fill in details later.
- Bruce Lewis
from fftogo
Briefly, if you don't already have access to the resource, the resource token won't lead you to it. If you know enough about the resource to do traffic analysis, you might be able to figure out what token goes with said resource, but you won't have any more info than when you started, i.e. you'll know when the resource updates. You already had that knowledge or you couldn't do traffic analysis.
- Bruce Lewis
Given a private resource at example.net/1 (perhaps discovered through the Referer header) all I can tell is that there's something there. Given an Update Document that points to example.net/1 (perhaps because the publisher has decided not to use opaque tokens because all the urls are password protected) it becomes possible to tell when this private resource is being updated. Moreover it...
more...
- Adewale Oshineye
If people know your URLs and you use a hash of your URLs as the token, then yes you're telling the world when each was updated, no traffic analysis necessary. Seems obvious to me, but you're probably right that implementors should be warned somewhere. (I take back what I said about having thought a lot about this; I used opaque tokens and didn't think about the risk of non-opaque tokens.)
- Bruce Lewis
Would adding this paragraph to the Security section of the spec help: "SUP does not require that a site MUST encrypt its resource tokens. The resource tokens may be rendered opaque through strong encryption, hashing or they may be non-opaque. In a scenario where a SUP document is being used to indicate that private or password protected resources have been updated and the resource...
more...
- Adewale Oshineye
Regarding traffic analysis: you can place fake updates in the SUP feed. Consumers won't be able to tell the difference between a real update and a fake one.
- Benjamin Golub
That will only work if you do something very clever to generate realistic looking fake updates without causing consumers to hammer your server looking for updates that don't exist.
- Adewale Oshineye
Traffic analysis is also complicated by the fact that a given resource token can be used by more than one feed.
- Gary Burd
r33 (Fixed the typo caught in the review of r32 by adewale at htt...) committed by dclinton - http://code.google.com/p...
Maybe I've been spoiled by Mondrian and Rietveld but I couldn't figure out how to comment on that CL. Anyway the line that says "private or password resources. This is one way adoption of SUP can" should say "private or password protected resources. This is one way adoption of SUP can" The word "protected" is missing.
- Adewale Oshineye
I added you as a committer, Ade. See if it works now?
- DeWitt Clinton
Is it possible to get a SUP_ID on entries. I would like to monitor a large set of Friendfeed entry, when they are commented on, liked etc, i.e, whenever it is updated. (via http://friendfeed.com/friendf...)
Not currently, but you could monitor the SUP_IDs of the feed and re-check the entry when the feed is updated (entry updates are also feed updates).
- Paul Buchheit
Thanks Paul, I might be following 1000 entries and if each is over 1000 individual users then I may check to see if my entry is updated when in fact it is another unrelated entry on that users feed that has changed - I effectively polled the feed for no reason.... I honestly do like the idea of treating an entry as a feed in its own right.
- Paul Kinlan
I agree, it would be nice. Monitoring the feeds would probably still be helpful though since most feeds don't update very often.
- Paul Buchheit
I am also thinking of using SUP_ID of users feeds to invalidate the caches on the Friendfeed version of Amplifeeder (http://paul.kinlan.me as an example). I need to cache for as long as possible and polling a SUP feed I hope will allow me to use the cache more effectively.
- Paul Kinlan
"At Google I/O 2009, we demoed a nifty sample application that tracks updates to any number of YouTube user activity feeds. The technology behind the application is the Simple Update Protocol (SUP), a simple and compact "ping feed" that enables your application to efficiently monitor changes to a large number of user activity feeds. If you run a social network with tons of users who also happen to be active on YouTube, you should consider using SUP to let your users easily share their updates on YouTube with their friends through their social graph on your site."
- Paul Buchheit
from Bookmarklet
Paul, how important do you believe SUP is vs. other initiatives on the Web today?
- Louis Gray
Louis, SUP provides a very simple way for sites such as YouTube to expose update information to bulk consumers such as FriendFeed. Obviously this is just one part of what is needed to make everything realtime or at least more realtime, but it's a very important part. My hope is that other realtime efforts (such as PubSubHubBub) will also add support so that SUP will also become easier to consume, especially for smaller sites and projects.
- Paul Buchheit
It also removes the need for RSS, or a custom API for many things
- Jesse Stay
Jesse, SUP does not replace RSS, it accelerates it :) (though it can be used for all HTTP resources and media types, not just RSS)
- Paul Buchheit
Oh - I haven't really looked at the spec. So my guess is SUP is what notifies servers to pick up the latest RSS?
- Jesse Stay
Can someone summarize for those of us in a low-bandwidth situation?
- Bruce Lewis
Summary: YouTube has a SUP feed (http://gdata.youtube.com/sup) which was announced at Google I/O. As far as I can tell it hasn't been documented yet but it sounds like they are working on it. FriendFeed has been consuming the feed since a few days before the Google I/O announcement.
- Benjamin Golub
Couldn't see anything immediately so i'll ask. I want to be able to create my own FriendFeed SUP so that i monitor say 1k feeds/60 seconds. I know the SUP ID's you assign so i'd like to optimize my querying by asking my own URL for any updates e.g . http://friendfeed.com/api...
If you monitor http://friendfeed.com/api..., then you get all changes at FriendFeed including the 1K feeds that you are interested in. We do not provide a way to get a subset of the changes.
- Gary Burd
I've check the API call per the previous post and can confirm that X-SUP-ID is set (http://feeds.seesmic.com/sup...), that the sup.json file validates and I even see in the apache logs it being requested. But I don't see my updates until I tell FF to refresh the service. Any hints?
Hi Mike, there is an issue with the FriendFeed code that crawls Seesmic that I hope to have fixed soon. I see nothing wrong with your SUP implementation. Sorry for the delay.
- Benjamin Golub
It may take up to 1/2 hour before SUP is active on all seesmic feeds though. Also, if you want to make ff find seesmic entries even faster, you should add more available_periods (like 30 or 60 seconds).
- Paul Buchheit
we should definitely optimize it for seesmic videos to show in 30 secs on Friendfeed
- Loic Le Meur
btw we're almost done updating our player too so that it is lighter
- Loic Le Meur
my logs show 6 hits earlier today but then nothing and the sup.json file has already been validated (and is still valid). (update: a single sup.json hit followed by two hits for a user file)
- bear (aka Mike Taylor)
well I'll be - uhhh, hmm - thanks -- I thought it was reading atom files so I added the link tag to them. ok - let me go tweak the header for the user's json response
- bear (aka Mike Taylor)