The Big Idea

Published 19:12 on 19 December, 2006

It’s been a while since I blogged - mainly due to the awesome news that Meegan and I are pregnant, my new job at Yahoo! Europe and the impending Christmas period. For this reason, I thought it was about time I got motivated and started working on something new and exciting.

So, during the train ride into work this morning, whilst staring out the window at an awesome morning mist, my thoughts turned to API’s; more precisely, to writing an application entirely based around an API. I was thinking about how fun it would be to try to write an effective API and then use PHP and JavaScript to manipulate that API to build an application. I also thought it would be an interesting exercise in best-practices; from planning and documentation, through to responsibly using AJAX.

Woah! Where did that come from?

I guess I’m partly spurred on by Jeremy Keith’s excellent presentation at d.Construct06 entitled “The Joy of API”, as well as Drew McLellan’s presentation “Can your website be your API?” at the last WSG London meet (listen to it via the WSG podcast). API’s are sexy - all the popular kids have them in one form or another; from REST style Flickr and de.licio.us through to the Microformat heavy Corkd. It’s all happening out there and I want a piece of the action.

So what's the big idea?

As an amateur cook, I’ve recently been thinking about purchasing a scrap-book so that I can collect and collate recipes, however, I’d much rather be able to do this online since I tend to plan meals in my head whilst I’m at work. There are a huge number of recipe sites out there but they tend to be over complicated, drowning in adverts, ugly and not quite what I want - so I thought, what the heck, I’ll write one and try to do a good job! What’s more, I’ll try and work to a Web2.0 ethic and promote a community environment.

I’m well aware that I might crash and burn half way through the process - but since I’m approaching this as a learning experience, I’m going to get something out of it even if it is a few harsh lessons.

What do you hope to learn?

Quite a lot really. I’m interested in improving my understanding of user interface design, of web application design, of information architecture for the web, and, at a technology level, of Microformats and the YUI. I’m also looking to discover new things about the languages I’ll be using; from the potential minefield that is PHP through to the responsible use of JavaScript, as mentioned earlier.

So what next?

Over the next couple of days I’ll start to look at planning the project and I’ll try to blog the process. I’ll also include all my documentation and will hopefully get some feedback (including ideas - let’s open up the floor here).

Hopefully, by the end of this, I’ll have learnt some stuff and created a handy application.