I had the pleasure of visiting Henrik and David at Readmill at their lovely offices in Berlin a couple of weeks ago. I’ve written about Readmill before and I stand by all of my comments of it being a lovely meaning full social product. I have a great deal of respect for them as a pair of founders and as a team focussing relentlessly on making a beautiful and well designed product.
As with many startups they have an API and they have hackdays the latest of which was over the weekend just gone and when in Berlin I offered to join in remotely from home and office in Oxford as I had a few ideas about what to do with their API.
The idea I ended up making for their hackday was a playful experience for starting with an API. I often find myself frustrated by a few things with new services and their APIs. They start from the wrong angle: one of “we have an API, you want to play with it, here is the unwieldy documentation”.
Often it’s a joyless experience, registering for a key, wading through pages of documentation, occassionally seeing a glimpse of a sample return as if on a wildlife safari. Often it involves diving into the command line (which I like) and using curl (which I also like) but often finding that I need to remember the arcane collection of flags and options to simulate accept headers (which I hate) and then getting back ugly unreadable JSON which has been stripped of whitespace (which annoys me and puts me off playing).
It feels like there could be a more funner way of doing it, of smoothing the on-ramp, of being accepting that there are an enormous number of APIs out there competing for people’s play time (after all there are precious few APIs that are “must learn”). It would be lovely if someone took you on a journey through the API, telling you a story of how it fits together. But one unlike those horrible tutorial videos, one in which you could cut and paste and try stuff out and experience the real thing. Learning by doing. Like a choose your own adventure, because after all, that’s what an API is.
So that’s what I attempted. It’s called Play and you can find it here. At the moment it only deals with the Book methods of the Readmill API. It has terrible copy and if you veer from the path there’s no way back. It’s quite broken really, but it’s the product of two evenings tinkering. More bits of the API need linkifying. It’s a hackday project, not a product. But to me there’s something interesting in there to be explored further.
There’s one more useful space for this sort of thing to exist in. One set of things that have emerged of late which are very interesting are coding tutorials. This could be a good accompaniment to them. Once you’ve learnt bits of coding then the next thing to do is to make something, anything, but often that gets squashed by working out where to get content or materials for your thing from. APIs do that. They’re full of content and malleable stuff you don’t have to type in or make a CMS for and populate. When we teach people how to code we should teach them how to play in APIs as then they’ll develop skills and add APIs into the things that they make and the loosely joined world will get more blocks of lego to play with.