Providing online Programme support has a long history at the BBC. Tom Coates (now with Yahoo! Brickhouse) announced the launch of the Radio 3 website in 2004. Then Gavin Bell (now with Nature), Matt Biddulph (Dopplr‘s peripatetic CTO) and Tom spoke [pdf] about Programme Information Pages (or PIPs) back in 2005 at ETech. At the time it was hoped that PIPs would be rolled out to all BBC programmes so that every programme the BBC broadcast had a permanent web presence. Things didn’t quite work out that way.
For a bunch of reasons this early version of PIPs wasn’t going to scale across the entire BBC programming output. At the time the only solution available to the team was a static web publishing solution and trying to collapse the entire graph down to a series of static webpages was, frankly, a nightmare. But this work did show the way forward and put in place much of the intellectual framework for what followed.
What followed was a new version of PIPs. This new version had, from certain perspectives, a much simpler brief: to provide a repository of programme metadata for all BBC programmes. Of course from other perspectives it was a more complex brief, but that’s another story. What this left however was a public representation of this data.
iPlayer of course is one representation, but iPlayer is trying to solve a different problem. iPlayer is incredible successful at delivering BBC’s Radio and TV content over IP. What it doesn’t solve is a permanent, persistent, web presence for all BBC programmes one that could support the archive and the existing BBC broadcast brands.
Last October we launched BBC programmes with the aspiration to build a true web citizen. One that would enhance the BBC’s web presence, making it a more useful place for people using bbc.co.uk and, at the same time, provide a useful service for external developers.
The last year has seen the service grow and develop at quite a rate (we’ve tried to release updates every couple of weeks), which especially given the modest size of the team is very impressive. I have tried to chart the major functional changes here on this blog. But what I’ve not tried to report on is the work of other teams who have styled and integrated the service into the existing broadcast brands, such as Springwatch, Last Choir Standing and now the TV Channel and Radio stations. This most recent piece of work – integrating the service into the relaunched TV sites – has also seen the service come out of beta which is truly fantastic.
As I mentioned the team is small, however, it is also incredibly talented. I have learnt more from them, and enjoyed working with them, more than I suspect they will every truly know. Consider that 6 people have, in addition to designing and building the service, also designed and built a light weight MVC framework and laid the foundation for a highly interlinked, modern web offering. The credit for the site lies with:
Paul Clifford [Lead Software Engineer]
Duncan Robertson [Software Engineer]
Dave Evans [Software Engineer]
Michael Smethurst [Information Architect]
Jamie Tetlow [Designer]
Stephen Butler [Project Manager]
Should you find yourself in a similar position, needing to design and develop a complex modern web service, then if I were you I would make sure your team is small and full of really smart, T-shaped people who understand the domain and care deeply about the quality of the product they are developing.
So where next? Since although we’re now out of Beta there is still much to be done. At a high level we will be working on two fronts:
Firstly we will be making the pages at /programmes richer and the navigation between them more coherent and consistent. So for example making schedules by format in addition to schedules by genre and generally linking everything up. We’re also going to be adding the missing views – those where we have a view in one format but not others.
We are also working to link between, and transclude data from, other domains. For example, tracklistings on episode pages, aggregation of programmes by artist and more programme information on artist pages.