this is aaronland

ice cream is my subfloor

Flickr (App) For Busy People

The Thing (with the Stuff) is taking longer than planned because life has gotten in the way and I haven't been able to work on it since before leaving for Amsterdam.

The Thing (with the Stuff) has been squirting out over time, though, in small chunks like the I Am Here Map and more recently the FlickrApp package, a library for use with Google's AppEngine platform that lets you treat the Flickr Auth API as a single sign-on and validation service. FlickrApp was in fact the spark for the Thing (with the Stuff), when I realized that one of the side-effects of treating the API that way is that you get a user-scoped Auth token for free. This is no different really than OpenID or any other SSO service, if you're wondering. It's just you get to do stuff with the Flickr API at the end of it.

It's true that Google creeps me out, a little, these days but it would be unfair not to point out that AppEngine is a pretty awesome piece of work. It is not a magic pony but it does make writing small, fast and bespoke tools incredibly easy. As I write this I am still counting on the promise of AppDrop to allow me to keep running stuff outside of Google's warm embrace if, or when, AppEngine goes sour. This probably needs to be proven sooner rather than later but assuming that it works I am happy enough to keep using AppEngine even at the cost of avoiding some of the fancier features that may never be supported elsewhere.

A few weeks ago, mroth showed me Twitter For Busy People. The site itself doesn't interest me that much because that's not the way I want to use Twitter but the way in which the data is aggregated and presented does interest me. Some of this goes back to Dan Hill's Big Floating Informatics but the short version is that a quick high-level roll-up of the activity of the people you're interested in is really useful.

In my case, photos my contacts have uploaded to Flickr (especially while I'm sleeping).

So I wrote Flickr For Busy People.

It does very little, by design. It uses the Flickr API to fetch the list of contacts who have uploaded photos in the last 30 minutes, two, four and eight hours and displays their buddyicons along with the number of photos they've uploaded. When you click on a buddyicon the site will load thumbnails of those photos. And that's it.

I have resisted (am still fighting) the urge to display larger photos inline with lightboxes and things like a fave this button. I want to try and keep the whole thing light and simple, a prism to reflect activity on Flickr rather than a replacement or alternate version of it. This is why we have hyperlinks, after all.

(It does automatically reload the page every 15 minutes because I am lazy that way.)

The finishing polish on Flickr For Busy People took longer than the initial prototype which I built in an afternoon. No surprises there. That's just how it works (thanks go to George and Cal for their ever-reliable attention to niggly details) but it was really nice to get something up and running in the time it takes to have a meeting. Kellan did pretty much the same thing building Photos That Matter, on top of FlickrApp, in pretty much the same amount of time.

I did it again today, during a meeting, wrapping the topia term extraction library that everyone's been talking about in a brain-dead stupid AppEngine web interface.

This makes me happy.

Flickr For Busy People should work in any web browser (including the iPhone) and is free for anyone to use, at least until it starts to become a financial burden, but if you'd rather run your own copy the source code for both FlickrApp and Flickr For Busy People are available on the GitHub:

The FlickrApp packages contains a Hello World style example which is about the easiest way to get started using the package. The documentation is still a bit sketchy while the dust settles but if you want a complete example of how to use it then the code that runs Flickr For Busy People is a good place to look.

In the meantime, I've started to work on a similar SSO-like package for OAuth based APIs. I'm totally thrilled with OAuth the idea but, so far, eveything else about the spec makes me cry so it's still sort of mostly an exercise in just trying to build something with it. Since more and more people are using it, though, it would be a handy tool to have with which to treat the web like a big and shiny shell script. The code, such as it is, totally doesn't work yet. I'll get around to finishing it eventually but if someone wants to do it first that would also be great.

We now return you to the margins of the day.