Captain Cook’s First Voyage: We spent a fun Saturday in the BERG offices a few weeks ago, hacking publications aimed at Little Printer, a fun Internet Of Things device that creates and delivers its owner a tiny customised newspaper – every so often.
Remix of the Century was our submisison for London’s Music Hackday 2012. (Submission here).
We got the idea from the beginning of the movie Contact. At the beginning of the film, we zoom out from the earth, and hear the radio signals get older and older, until we end up staring at Jodie Foster’s bloodshot eye… So we thought we’d do the same thing, but without the eye.
We found a dataset on Andy Baio’s waxy.org showing every song in the Billboard charts going back to 1890. To make the dataset a bit easier to work with we trimmed it down to just the highest ranked song from each year using Google Fusion Tables.
Once we had a nice clean dataset, we wrote a PHP script to fetch 30 second previews of each song with the 7digital API. Not all songs were available in the 7digital catalogue but we got enough to continue with the next step in the project: creating one long seamless remix of all the songs.
To do this we used a Python script by The Echo Nest, called Capsule, which uses the Echo Nest Remix API to automatically arrange and mix a list of songs by beat matching, time stretching and cross-fading. After some initial problems with getting the script to run due to varying bitrates in the preview MP3s, we eventually managed to generate a nice long remix of the Billboard charts starting with “Semper Fidelis“ in 1890 and going all the way up to “Aston Martin Music“ in 2011 (listen to the whole remix on Soundcloud).
Now that we had a remix done we wanted to explore a way of representing the dataset visually. None of us had done anything using D3.js before so this seemed like a good opportunity to give it a try. We built a small single-page webapp using Backbone.js (with Yeoman providing the scaffolding) and added D3 scatterplots to the views. Once we had some simple scatterplots showing, we decided to extend the dataset to include the top five songs from each year to make it a bit more interesting.
Although the original dataset contained a lot of interesting data already, we wanted to augument it further with data from the Echo Nest API. Using the Echo Nest song profile method we fetched metadata and acoustic properties for each song. Again, not all songs in the original dataset were recognised by Echo Nest, but a large proportion were.
With the extra Echo Nest data, the scatterplot visualisations suddenly became more interesting. Now we could use the visualisation to answer questions such as “has the danceability of the top Billboard songs changed over time?” or “were the songs longer or shorter back in the day?”.
The last step was to connect the remix and the visualisation of the dataset, the idea being that you should be able to listen to the remix with the currently playing song highlighted in the plot. This would allow exploration of the dataset in two ways, visually and aurally. The remix is unfortunately limited to the top charted song from each year, but we’ve added links to Spotify, Tomahawk, and 7Digital to all songs where available.
Have a play around and let us know what you think, and if you’re interested the code is on Github.
This musichackday hack was inspired by Occupy Wallstreet’s Human Microphone. Because megaphones are banned at the protests, one person shouts a message, then everyone else repeats it.
Our hack circumvents the “no megaphones” rule. The protester shouts a message into their phone. It gets uploaded to a server. Then it gets sent to the other phones nearby. The phones are synchronised, and then they are all triggered to play the message back at the same time.
How it works
We created an iPhone app using Phonegap to record and upload the audio (the “protester” in the scenario above).
Fanyrd was a hack made for the Over The Air Hackday 2011. It won the prize for best user-experience. The name is supposed to be a slightly inappropriate-sounding fusion of “Fan” and Lanyrd, the excellent conference directory.
What does it do?
It allows you to continuously rate a presentation, in realtime, by sliding your finger up and down on an iOS screen. The results are shown on a webpage as a “wiggly worm” line graph that responds rapidly to the changing mood in the room.
Here’s a short video showing Fanyrd in action. This video was made after the hackday, when we refined the app a little.
The Lobster App was a hack day experiment built at the Over The Air hack day in 2010. It won two prizes – “Audience Favourite” and “Cheekiest App”, although was sadly never released to the public, due to its dodgy nature.
What does it do?
The app is really a social hack. Bus drivers don’t watch their oyster card readers very carefully. So if you appear to tap something against the sensor, and an appropriate beep occurs, they will assume that the machine has verified your ticket. The app generates exactly the right beep, at the right pitch and duration, to mimic a successful ticket verification.
Here’s a short video showing Lobster in action. At about 1m52s, you can see us successfully getting on the bus, despite the rather nervous tester making it beep three times in front of the bus driver.
Here’s the video of the presentation at Over The Air 2010.