“A history of the world” – Information Architecture notes.

On the 18th of January the BBC launched ‘A History of the World in 100 objects‘, a series of 100 programmes, narrated by Neil MacGregor, Director of the British Museum, focusing on 100 objects from the British Museum’s collection, travelling through two million years time to retell the history of humanity through the objects we have made.

A history of the world - example homepage

A history of the world - example homepage

I was the Lead Information Architect on this project. I thought you might be interested in how and why some of the decisions were made :-) .

The project was built and delivered by goodtechnology in collaboration with the BBC. There were 3 of us in the user experience team. Yasser Rashid (Creative Director) , Tom Spalding (Senior Design) and myself (Lead Information Architect). There is an excellent post here, about the design process we (and other colleagues) went through for this project.

For the ‘A History of the world’ website, the BBC and British Museum decided they wanted to showcase man made objects. 350 museums from around the UK contributed objects, and the central function of the site is to encourage users to explore those objects, and contribute their own objects they care about.

I’m proud that in 3 months, we built a moderation system, an editing/uploading system, and a public facing website. Given the complexity of the site, I’m pleased with what we achieved.

This site is domain driven (hooray)

I have been in the department a couple of years, and have swallowed the domain driven design pill, together with the ‘Cool URIs don’t change’ pill and the semantic web pill. So, when it came to defining the information architecture for this site, I wanted to apply domain driven design. You can see the domain model I sketched below:

A sketch of the domain model

A sketch of the domain model

The websites core journeys are:

  1. Browse the objects contributed until you find one of interest.
  2. Examine an object of particular interest in detail (this is done on the object page).
  3. Where an object has a broadcast episode associated with it, users can listen to that objects programme whilst examining the object.

For journey 1, the flash-based ‘object explorer’ can be used, or an HTML based ‘basic explorer’ can be used. Each of these explorers allows the user to set filters, reducing a large number of objects down to just a few. Each filter is represented on the domain model. This allows us to work out what user experiences are possible, what data is required, and the relationship between the filters. If we’d had time, we could also have used the domain model to calculate persistent URLs.

Only 2 filters at once.

To try to ensure that the user is never presented with ‘no objects’ we decided to only allow the setting of a maximum of 2 filters at once. Given the hundreds of objects, it is therefore more likely that the user will be presented with some objects to explore, once they have set filters.

For journeys 2 and 3, we created an object page for each object in the site.

An example object page from A History of the world

An example object page from 'A History of the world'

Our Object page URLs are designed to last 200 years.

The Cool URIs don’t change paper (by Tim BL) suggests that we should design URIs as though they won’t change for 200 years. It’s a point of view I try to subscribe to. Unfortunately, due to time constraints, it wasn’t possible to apply this principle as purely as I would have liked. However, for journeys 2 and 3, we were able to ensure that each objects page was published at a persistent (‘cool’) URL.

For example, the “Mummy of Hornedjitef ” has a URL of http://www.bbc.co.uk/ahistoryoftheworld/objects/sogITE3FSKStlk12qd2W3w.

This can be generalised to:

www.bbc.co.uk/ahistoryoftheworld/objects/:object where ‘:object’ is a GUID.

I guess this is an example of practicing what I preach, since I’ve talked about persistent URL design before (as have my colleagues).

We could have published an object page to:

www.bbc.co.uk/users/:user/objects/:object , but the person who uploaded the object may want to change their name (:user). By using a GUID for the object, we also allow the name (and all other taxonomy attributes) to change without changing the URL of that object. In this way, I hope, Ive designed a URL that can last 200 years without changing :-) .

By using a GUID we are also better able to scale the site – we can allow many users to upload their objects concurrently, using multiple servers at the same time,  safe in the knowledge that they will not be allocated the same URL as another object, because the GUID is pretty much guaranteed to be random and unique.[OK, I'm believing what the software engineers tell me, and also what wikipedia tells me, but hopefully its true!].

Search Engine Optimisation

By ensuring the URLs don’t change over time, we can ensure that more people can link to the content, which boosts that contents google ‘page rank’. I’m pleased to see that when users search for a particular object in google, the object pages appear high in search results:

But still much to improve…..

There is lots to improve on the site, and we will be striving to make improvements over the coming weeks, but I hope you enjoy the site. I know I’ve particularly enjoyed the fact that the site seems to be attracting local newspapers to write about local history - and some of the objects users have chosen to upload have been genuinely interesting to me :-) .

Building the moderation, admin, upload and public facing site in 3 months was an awesome challenge. The team involved were truly great to work with. The good technology team, the radio 4 team, my UX+D colleagues, and many others. I thoroughly enjoyed it.

Update: 10th Feb 2010: A History of the World has just been awarded ‘Website of the week’ by New Media Age magazine. Cool! Full review here.