Exporting Iusethis data.

One of the things we appreciate about some of the new web services, is the concept of open data. That you can take your data, and use it in another application for whatever purpose suits you. This is about empowering the user, and I think it's one of the most important changes in the mindset of web developers.

OPML

Naturally, we want iusethis to be a part of this. That's why we expose almost every view on the site as rss. Of course, this isn't enough, so we also provide an OPML list of your used apps, as well as Sparkle appcasts for every app in use. OPML is a simple standardized outliner format, the same format in use by bloggers for blog rolls, for instance.

The OPML file is linked from every user page. The direct url is:

http://osx.iusethis.com/user_opml/<username>

This file contains two groups, apps and loved. Each app has the app name, as well as a link to the app page. We'd be happy to add more data here if required. You can use this file to backup your own app list, but more importantly, this can be used by application authors. A simple example of usage would be an app to keep all your apps up to date , but I imagine this can be used by other apps like visualization,with neighbor data as well as usage counts. (To get neighbor data, add ?neighbour=1 at the end of the query).

Appcasts

Appcasts is a pretty new concept among the OS X software development community. Basically, it provides a standardized way of generating the server-side data for use in providing auto-updating applications. It uses the RSS 2.0 enclosure support to include the new version data, and provides changelog information in the description field. Iusethis.com now automatically generates appcasts for your application.

There have been diverse formats of appcasts in circulation. We have decided to support the format supported by Sparkle, with the changelog as HTML in the description, and the binary as an enclosure. The url to the generated appcasts are like this:

http://osx.iusethis.com/appcast/<appname>

JSON

We now provide JSON data for individual app entries. JSON, or JavaScript Object Notation is a standard data exchange format which can be used directly in Javascript. It's also supported by most server side languages.

Our JSON feeds can be found on this url:

http://osx.iusethis.com/json/<appname>

We also support using a callback function. Here's a simple example of that:


<div id="appinfo"></div>
<script type="text/javascript">
function present_app(data) {
	document.getElementById('appinfo').innerHTML=data.app.name;
}
</script>

<script type="text/javascript" 
	src="http://osx.iusethis.com/json/firefox?callback=present_app">
</script>
		

And it will look like this:

Of course, there is more data we can export from iusethis, for instance, we've got JSON exports of the user profiles on our near future TODO list (Together with support for consuming existing appcasts). If you have a cool idea about how you'd like to interact with iusethis, please contact me.

--marcus