Since APP (understand here) is mainlined in WordPress, it makes sense to use it in DiSo efforts. I doubt that my OAuth plugin will work here, but it’s worth testing. It may mean using headers, but with comment and discovery support we should be able to build a distributed commenting system, at least for WordPress.
I’ve thought about other APIs that would be useful for DiSo. For example, adding friends or groups. APP does not fit this, but the general concepts do. Perhaps APP can be abstracted into more of a CPP.
GET on main endpoint to list items (ATOM can always be the main wrapper here).
POST to main endpoint to create new items.
PUT to node to edit.
DELETE to node to delete.
Authentication unspecified (HTTP Basic or OAuth work well).
If the content of your POST and PUT requests is ATOM, you have AtomPub. The same basics can easily work with other content. (The other content types could be encapsulated in ATOM entry bodies on the GET list, or XOXO).
For example, a POST body of XFN+hCard could add a friend. A PUT body of hCard could edit a profile (ie, to add groups).
I would also like to suggest that POST on a node could be used to add comments (create new content on a content node).
Don’t get me wrong, I love Google’s Social Graph API, it’s a great way to speed up the discovery of XFN data by using Google’s cache. What does not make sense to me, however, is their ‘NodeMapper’ concept that is built in to the API. It maps multiple URLs from a site on to, not a single URL, but a SGAPI-only URI scheme. It maps using URL patterns that are known about the site, so it doesn’t even work on the web in general. When it does work, what is it useful for? URL consolidation. The problem is, that the only thing you can do with a nodemapped URI is (1) use it as a unique key or (2) turn it back into a URL to get data.
I don’t get it guys. How is this better? Is there even a reason to consolidate things like FOAF files backwards to the main page, since most people will enter the main page itself as input anyway? Even if it was useful, shouldn’t it actually map to the main page and not to some proprietary URI scheme?
Thoughts? Anyone see a use for this that I’m missing? Or is this misfeature just adding a layer of data that someone might use and that we’ll have to hack around again later?
I got back Manday morning from SGFooCamp. This is a sort of himp of my thoughts of the event and the results.
The first thing, for me, was the actual networking that went on. I met lots of people that I’ve followed online for some time and many more. The informal discussions that “just happened” were, I think, informative to all.
The talks I attended were all excellent. I was inspired with a number of ideas that will make it into my DiSo plugins. A lot of insight goined into what users expect vs what I tend to to think of as a Geek.
Two specific points of awesome:
1) Talk-turned-flame-war about DataPortability Workgroup. Good to see the air cleared at least. Way too much hype there.
2) Witnessing one of the first usefully federated XMPP PubSub messages. Seeing just how fast it can be.
If I got one thing from the (un)conference it would be the value of a demo. Onward to DiSo hacking!