Category Archives: Work

You might find this helpful - you’ve been able to browse schedules by radio station or TV channel for a while now which is great, but what if you don’t care where the BBC broadcasts your favourite Olympic sport, music genre or SciFi programme?

To help you find programmes, no matter which station or channel they are broadcast on, we’ve started publishing schedules for all our genres (sport, music etc.). These views are being used as part of the BBC’s Olympics coverage - specifically to drive the TV schedule and individual sport pages. But as you might be able to guess a little bit of URL hacking gives you more. All you need to do is add /schedules to the end of any genre aggregation, so for example:

A schedule for your favourite music genre :
www.bbc.co.uk/programmes/genres/music/classicpopandrock/schedules

What’s happening on the Olympics:
www.bbc.co.uk/programmes/genres/sport/olympics/schedules

Drama on radio:
www.bbc.co.uk/radio/programmes/genres/drama/schedules

Or science and the environment on Radio 4:
www.bbc.co.uk/radio4/programmes/genres/factual/sciencenatureandenvironment/schedules

And obviously you can get this data both as HTML and as XML, JSON, YAML just by adding .xml .json or .xml to the end of the URL. So the TV coverage for sailing as XML is:

www.bbc.co.uk/programmes/genres/sport/sailing/schedules.xml

Hope that helps you find your favorite programme.

UPDATE

As Duncan has previously discussed on the BBC’s Radio Lab blog you can also get this data in your Calendar via iCal - just add .../upcoming.ics to the above URL. For example:

www.bbc.co.uk/programmes/genres/sport/sailing/schedules/upcoming.ics

www.bbc.co.uk/radio4/programmes/genres/factual/sciencenatureandenvironment/schedules/upcoming.ics

Mike Butcher wants the BBC to open up. To make its data available, to provide lots of APIs, well as he puts it:

Dear BBC,

What we want is your data, a lot more APIs, developer tools and your traffic.
We’ve paid for it already in the license fee.
Now get on with it.

Yours Sincerely,
The UK’s Startups

I do largely agree with Mike’s central premise - the BBC does need to make its data more accessible, it does need to provide more APIs. And as Matt has already noted there are people at the BBC working to open things up. Now I don’t want to get into the debate about what the BBC does well vs what it doesn’t - but I did want to highlight some of the work that the team I work in is doing and to give some perspective on why Mike’s objective isn’t as simply as it might appear.

I work in the “FM&T for A&Mi” bit of the BBC (as James has rechristened it) - in other words the ‘new media’ team embedded within the radio and music department. We’re currently working on a couple of projects (programmes and a revamped music site) that I hope might give some of the UK Startups some of what Mike is after. And in due course we’ll be adding more data that will make more startups happy (hopefully).

So what are we doing? It’s probably easiest to start by looking at the current programmes beta - the objective is to ensure that every programme the BBC broadcasts has a permanent, findable web presence. The site provides data for the eight BBC TV channels, ten national radio stations and the six stations covering Scotland, Northern Ireland and Wales.

To enable the sharing of this data in a structured way, we are using the linked data approach to connect and expose resources i.e. using web technologies (URLs and HTTP etc.) to identify and link to a representation of something, and that something can be person, a programme or an album release. These resources also have representations which can be machine-processable (through the use of RDF, Microformats, RDFa, etc.) and they can contain links for other web resources, allowing you to jump from one dataset to another.

OK so that’s the theory - what are we doing?

Currently the pages are marked up with microformats: hCalendar on the schedule views and hCard for cast and crew on episode pages. That’s OK - but hardly the APIs that Mike is after. But what’s coming very soon will hopefully be a bit closer to the mark. Our plan is to make all resources available in a variety of formats: XML, Atom, RSS 2, JSON, YAML, RDF etc. (We’ll announce these on Backstage as they become available.)

And to help folk get direct access to the actual data backing BBC Programmes, we designed a Semantic Web ontology covering programmes data, The Programmes Ontology. This ontology provides web identifiers for concepts such as brand, series, or episode and is released under a creative commons license so anyone can use it.

But there are limitations of such a web interface. To provide a more expressive API we are also investigating using D2R Server, a Java application for mapping relational databases to RDF to make the data accessible through SPARQL. SPARQL allows you to carry out more complex queries than would be possible with simple RDF representations of the resources - think of SPARQL as SQL for the semantic web. It allows you to semantically connect to external data sources such as DBpedia to provide extra information that is not present in our dataset, such as date and place of birth of cast members.

So what about music data? We’re not as far ahead with this work as we are with programmes but you still shouldn’t have to wait too long.

As I’ve written about before we are using MusicBrainz to provide GUIDs for artists and releases and; to give us core metadata about those music resources. The use of MusicBrainz IDs means that we can relate all the BBC resources about an artist together; and others who also use these GUIDs (e.g. metaweb) can use them to find our resources.

In terms of making the data accessible - it’s a similar story to programmes. We’re currently marking up relevant pages with microfromats (hReview and hCard) but the plan is to publish BBC music resources in a variety of different representations (XML, Atom, RSS 2, JSON, APML etc.)

What resources are we talking about? In addition to the core data from MusicBrainz we’re also talking about album reviews (released under a Creative Commons License) and data from our music programmes, for example:

  • views aggregating the artists played on each station into both charts (most played that day, week and since the prototype started running) and artist clouds;
  • programme views which are similar to the station aggregation views but for each programme and links through to each episode;
  • programme episodes with track listings which link through to artist pages;
  • artist pages with biographies pulled in from Wikipedia (MusicBrainz include links to Wikipedia) and links back to the programmes that have featured that artist.
  • And much more…

As you can see we’re not only making the data available as discrete resources we are also linking them together - and making that data available in both human readable and machine readable views. This is a big job - it involves a lot of data, a lot of systems (both web and production systems) and it all needs to work under a high load.

And what about the future? As Michael recently presented at the Semantic Camp our plans are to join programmes, music, events, users and topics. All available on the web, for ever, for people to explore and open for machines to process. If you would like to find out more then Nick and I will be discussing this further at XTech next month in Dublin.

So I hope, in our way we are ‘getting on with it’ - sorry for the delay.

Photo: Please open door slowly, by splorp. Used under licence.

This year’s XTech conference in Dublin, Ireland will see a gathering of software engineers, information designers, and managers that work with web and standards-based technologies looking at the worlds of web development, open source, Web 2.0 and open standards.

Over the last few months our corner of the BBC has been working on a couple of projects that aim to expose BBC metadata for others to use: Programmes and Music. Our work on the new music site isn’t quite ready for public consumption yet, but programmes has been up and running since last autumn. So a few of us thought that we should share what we’ve been up to, why we’ve done what we’ve done and hear what folk think of it all.

Our hope is that by exposing our data in a variety of accessible forms (including ATOM, JSON, XML and RDF) other developers can do interesting stuff with it. If you would like to find out a bit more you can read my previous post about the ontology, the abstract for XTech or better still come and listen to Nick and myself in Dublin on the 8th May.

Photo: Somewhere in Dublin, by pierofix. Used under licence.

Over the last few weeks the /programme’s team, but mainly Jamie, have been working to bring the site inline with the BBC’s new online visual language (as rolled at on the BBC’s home page). Today we’ve launched the upgrade.

programmes.png

In addition to the new shinier, wider UI we’ve also linked up the schedules which should be helpful. And fixed and tidied up a bunch of things under the hood which has improved the applications performance.

Episode Page

Hope you like it!

I’ve being spending the last few days on the shores of Loch Lomand at the BBC’s Innovation Labs. Although the BBC has been running the labs for a while now this round is the first time I’ve got involved.

Loch Lomand

Having worked on both sides of the fence so to speak - having worked in the private sector for a number of years pitching for work and now at the BBC listening to others pitching their ideas I’ve found the whole experience really interesting.

The idea behind the Innovation labs is to help foster creativity by getting companies with a track record in innovation to pitch their ideas in response to briefs set by the BBC. The ten best in each region are then invited to come along to a week long creative workshop where they work with mentors to develop their ideas before pitching to us BBC folk. If successful the project gets funded and built or at least prototyped.

What this means is that the companies get some funding to develop their idea and time with BBC staff and mentors to help hone their idea. That’s really good - it increases the chances of getting projects that meet the BBC’s objectives, good for the BBC; good for the companies, who have a better chance of succeeding and winning work; and good for the license fee payer who see an improving online service.

But… when we started the process I couldn’t help thinking that we were missing an opportunity, I thought that what would be really good is to spend less time developing the idea and more prototyping the idea.

I have always found innovation to be a contact sport. It works best when there are constraints, objectives and tangible deliverables. Spending too long conceptualising your idea can leave you short of Oxygen, you need to get down from the abstract and deal with the actual. Doing so helps your idea to grow and mature. Rapid prototyping helps not only test the validity of your idea but also helps develop it.

There were some really very bright people at the Innovation Labs, cool ideas and some fun technology. I would have loved to have had a relatively short burst of effort working up the ideas and then a healthy slug of time prototyping the idea, bringing together a team of editorial and technical staff from the BBC with the design and technologists from the companies.

However, having just finished listening to the companies pitch their project to us and seen how all the projects have being improved since Wednesday lunchtime. I have to admit that I was at least in part wrong. The process does add value, the ideas are better as a result of the process and I’m sure the services we will be able to launch are going to be really great. So watch out for lizards on Big Ben, improved user interaction and navigation around our programmes and much more.

Photo: If only Loch Lomand always looked like this..., by Ben Matthews. Used under licence.

We’re on a bit of a roll at the moment with our work on /programmes, so quick on the heals of the work to integrate iPlayer and programme credits onto our episode pages I’m chuffed to announce another batch of new features: QR-Codes, schedules and um calls to inaction.

Torchwood episode page

QR-Codes, if you’ve not come across them before, are a bit like two-dimensional bar codes created by the Japanese company Denso-Wave. But unlike bar codes you can encode any string you fancy (up to 4,296 alphanumeric characters) into an image and this means you can convert a URL into a QR-Code.

You can then print QR-Codes on posters, t-shirts, scarfs, whatever. People can then decode them by taking a picture, using specific software installed on their mobile phone, to read and convert the code back to the URL - so they can easily visit the web site.

Anyway - every BBC programme now has a QR code. You can get it by adding …/qrcode to the end of the URL for any programme page. For example, this is the URL for Platoon:

	http://www.bbc.co.uk/programmes/b007mcgw

And this is its QR-Code:

	http://www.bbc.co.uk/programmes/b007mcgw/qrcode

QR Code

A more mainstream feature that’s also gone live today are schedule pages for some radio networks. For example:

	http://www.bbc.co.uk/asiannetwork/programmes/schedules

And because of the way the technology works we also get a bunch of new pages for free:

	http://www.bbc.co.uk/asiannetwork/programmes/genres/music

And finally we’re flagging when episodes are next due to be broadcast, when we don’t have any media and links to the iPlayer so you can download the video.