A #bl_labs Game Jam Idea


[Edit: I managed to get the game below finished – it’s a work in progress – but I didn’t finish in time to enter the jam. The game “60 second Art Heist” can be downloaded here. ]

I was hoping to get involved in the British Library game jam that’s happening this week, but my programming skills let me down. I couldn’t get past a problem that meant I was able to download all the images from Flickr as the program was running – some of them loaded, others didn’t. Anyway, I still like the idea I was aiming for, so I thought I’d share it…

It would have been called something like “Art Thief” and the idea was that it would play along these lines.

The setting is a gallery with 3 framed images on the wall. All of the images are taken from the British Library’s photos on Flickr.

gallerycroppedpaintings statue

A speech bubble appears next to the art thief (who is disguised as one of the gallery’s statues), commenting that the buyer would pay handsomely for a particular type of artwork. The particular type (eg flora, portrait, architecture, cycling) is taken from a tag of one of the 3 Flickr images that is displayed on the wall.


The player positions the cursor over one of the paintings using a joystick and presses the button to select it. Up shoots a hand and nabs the selected painting.


If the player chooses an image that matches the tag in the speech bubble a bundle of money appears and their money goes up. At the same time if they get a correct tag/image combination like this their average percentage accuracy rate increases – they don’t see this. In fact they don’t know this is happening behind the scenes.

gallerycroppedpaintings stolenFor some time the process continues with changing tags and images until you’ve played the rounds enough times for the game to determine how accurate the player is at choosing the correct tag/image combinations asked of them. Until this stage all of the images presented have been tagged already, so we know which images have been tagged with what keyword. However, now untagged images are gradually added into the game. When presented with a comment such as “The buyer would pay handsomely for a “flora” artwork.” the game can determine how likely the player is to have chosen an image to match the tag based on their accuracy score. For example, if during the earlier rounds of the game they have an accuracy rate of 92%, we could suggest that any untagged items they selected later on were 92% likely to match the tag the game has asked for.

At the end of the game the untagged items url, suggested tag by the player and their % accuracy score could be stored in a csv file along with other players scores/suggested tags.

For added variety more images could be shown at the same time. The player might also be against the clock, or avoiding moving when the gallery security guard is watching.

WordPress snapshot cards created in Processing


I’ve been getting to grips with Processing lately. Apart from creating a couple of small games and a handful of generative images I’ve also been experimenting with data feeds. One of the ideas I had was to create a visual card for WordPress blogs based on the content in them. I wanted the cards to give a snapshot of the blog at that specific time, and also reflect the content of the data feed visually.

twist2-000001The background of the card is generated by the program and contains either stripes or circles and the colour and size of the stripes/circles depends upon the size of the blog post title.

It also displays the title of the blog and the url, which it takes from whatever WordPress RSS you put in there.

Automated keyword tagging has been an interest of mine for some time (as some of my Yahoo pipe experiments have shown) and in this program I pull out all of the words in the description field of the feed and then rank the most mentioned words. I also filtered out unwanted words with a stopword list. It’s interesting to see the words that crop up the most, although as a second stage I’m considering stemming words, because for example both “library” and “libraries” appears in the top 10 words in my blog and I would reduce this problem of closely related words appearing.

When you run the program each top keyword is displayed separately for a few seconds (starting with the most popular) and then it moves onto the next one.

So, here are a couple of examples from this blog and also the Voices for the Library site.

twist-000001  voices-000001 voices3-000001The aim is really just to give a simple idea of what people might find on the blog – a simple taster of it, with a bit of creativity thrown in.

I’d like to develop the idea further – include more detail and possibly have quotes and images from the blogs, as well as using more data from the feed to generate the background. I’m also thinking that if I focused on just library and information service based blogs it might be a good idea to create a dictionary of terms to compare against, as well as having the top 10 words.

Anyway, I like the way they’ve turned out so far.

Animated Wordcloud with Tagxedo


After getting the Word extractor for my Literary Twist project working, I decided that I wanted to make some creative use of the information it pulled out. I tested it on Twapperkeeper tweets from the Middlemash Library mashup event last year and had a few ideas about creating some kind of abstract multimedia montage for it, rather than presenting just facts and figures. So I needed to find some appropriate creative tools to make use of the tweets.

Phil Bradley mentioned Tagxedo – a word cloud generator – in a few tweets and it was only when he posted an interesting Mona Lisa and Wolf tag cloud that I realised you could do more than just create a basic word cloud. It allows you to upload not only your own text, but also your own images and the word cloud fits inside the image. I had a play with it and wondered if I could create an animated word cloud. I wanted the animation to be appropriate to the words, but I couldn’t think how to use the Middlemash tweets.

I still haven’t decided exactly how I’ll use it for the Middlemash tweets, but along a different track altogether, I remembered the Grand National was on last weekend. I also remembered about the old zoetrope image of a horse. So after getting a list of the runners and a commentary on the race I put them into tweaked zoetrope images one by one, added the images to Windows Moviemaker and was really pleased with the resulting animation. I have to admit that the images aren’t perfect, as I had to cut them from the orignal image via screen capture and resize them manually.

So there we have an animated Zoetrope Tagxedo word cloud of the Grand National 2010 created using information from the race itself.

As another stage, it would have been good to create a longer animation that removed horses along the way and just left the winner at the end.

It’s given me plenty of inspiration too. All sorts of animated tag cloud ideas buzzing round my head now.

Knobbling the Winter Olympic Catalogue Results


In my role of ‘Keeper of the Keys to the Catalogue (once removed)’ for a public library service and ‘Man with Access to Official Twitter Account’, I thought it would be a good idea to promote some of our books around the Winter Olympics. This included trying to get a few more loans out of the curling books we bought after Team GB did so well some time ago. 🙂

I wanted to point our Twitter followers to a few handpicked books on our library catalogue, rather than a huge wodge of titles and I wanted to do it as simply and quickly as possible. However, as I tried to pull out a few relevant skiing books I knew it wasn’t going to work using any of the search methods available, despite working out different combinations of words.

In the end I realised I was trying to make the search methods work for me, when the catalogue records should be doing the work instead. As a cataloguer/classifier I’d always been taught that cataloguing/classification should be consistent. The sacred laws of UKMARC should be obeyed. I can’t complain with this as a general principle, but in some cases if you want to achieve something different, you need to do something different to make it work. As long as it doesn’t affect the end user, as far as I’m concerned it’s fine to do it. In fact, in this case, it was for the benefit of the end user that I decided to take a different angle with this.

I decided to hashtag the catalogue entries I thought would be of interest. I know cataloguers and classifiers commonly tag records anyway, but the difference in this case was that I only tagged a handful of records, rather than tagging the entire stock with these new hashtags. Using the hashtag format would indicate that these tags had a unique purpose. It’s the same idea as giving a Twitter message a hashtag only if it’s related to a particular event ( eg ‘#van2010‘ for the Winter Olympics). You don’t need to tag all of your Twitter messages and, in the same way, you don’t always need to tag all of the records on your catalogue.

Winter Olympic Catalogue Search Results

I suppose it’s like partial/filtered indexing, where you limit the results to a subset of items, based on rules you define, rather than retrieving the full set of records. If I’d just searched for ‘skiing’ for example it would have given me 208 records. I didn’t want our users to have to trawl through all of these records. Using my method I limited the results to a single page of 7 items. Anyone searching the catalogue could still retrieve the 208 skiing records if they wanted to, but my tags pointed our Twitter followers to this limited set, as a sort of mini promotion. In fact, as I only tagged about 35 titles out of the thousands of titles on our catalogue you could say it was almost micro-indexing.

I basically pre-weighted the catalogue records so that they give me exactly what I wanted. If it was an Olympic event it might call for a stewards enquiry for knobbling the competitors!

The tags didn’t need to make any sense to anyone, as they’d just be used to query the online catalogue. They just needed to be unique, so the more obscure the tag the better – I didn’t want any unrelated items in the search results. In the end I created tags such as ‘#woski10‘ (skiing), ‘#woiho10‘ (ice-hockey), ‘#wotd10‘ (Torvill and Dean). There were about seven hashtags in the end.

After running each hashtag search, they were saved as bit.ly links (bit.ly shortens long url’s). The links were added to appropriate Twitter messages, which were scheduled to run at various times over the Winter Olympic period.

Twitter Olympic Tweets

I’ll be checking the items a few weeks after the Olympics are over to see if this has increased their use.

I’m also wondering if I could have made extra use of these hashtags via a Yahoo pipe mashup, but I’ve no firm ideas at the moment about what would be useful. Maybe a link between books and related Team GB/ Winter Olympic web pages, Flickr photos, Youtube videos would have been a good idea.