A small team of elite developers, designers and project managers spent two days last week in a hardware hacking workshop. Yasser and I ran it as something to get people thinking differently, to provide inspiration, to get people away from their day job for a bit and to actually build something.
We had come up with a fairly broad brief - "build something that accompanies a radio, and allows the listener to rate the current track playing. But it should require some effort to rate, thus increasing the listener's engagement with the process" (something we'd been kicking about recently). We also had a big pile of kit (Arduino boards, a Phidgets board, a load of sensors, lights and motors, and a nearby Maplins). And we'd also managed to borrow Room 101 (!) in our building which provided us with a space where we could spread out and not disturb anyone.
We spent the first morning brainstorming ideas, eventually converging on the idea of a Tamagotchi-like toy which, if you remember them, were electronic pets that required care (i.e. button-pushing) or they would die. The "DABagotchi" would behave similarly but the care consists of the user rating what they're listening to. If you don't rate the song (whether good or bad) then it loses energy, eventually dying. Similar in some ways to the Otoizm which feeds on the music going through your headphones (via Matt Webb).
There was then a bit of a struggle with how to make it loveable. A teddy bear with glowing eyes was deemed a bit demonic. The basic outline was to have something which displayed health (a glowing heart and some kind of movement) and something which displayed emotion (the face). We decided we would use a wireless Pocket PC to provide a screen in place of the face. In the afternoon half of the team went off to a toy shop to try to find an appropriate body for the DABagotchi. The other half went down to Maplins to look for a few bits and pieces we needed. Here's the toy they found, cute for the moment...
Nic took the bear home that evening and impressed us with his sewing skills, bringing it back the next day with the PDA being neatly velcro'd into the space that the face once occupied. And a port in the side of its head.
The following day we split up the tasks. Tim worked on the animated GIFs (!) that would provide the face graphics. Nic worked on a Rails application that would accept ratings and track the health and mood of the DABagotchi. Ant and Yasser started on the Arduino board, sensors and lights. And I worked on interfacing an Arduino with the Rails app, via Processing. And Stephen kept us all on track with a big list of tasks.
We had a deadline of 5pm when there was a team meeting due. It was pretty tight and a number of features were dropped, most notably the bend sensor, with which we could have detected the listener bending the arm of the DABagotchi to show disapproval. So what did we end up with?
The final DABagotchi prototype lets the listener rate the track playing on the radio by squeezing its hand. If you don't do this enough then it will fall ill (its glowing heart will beat less and dim) and eventually die.
The death animation
If the listener does rate a track then this data is sent to a webserver where it is compared to their previous ratings and other peoples' ratings, causing the DABagotchi to express appropriate emotions (surprise, confusion, anger...) on its face. Not bad for 2 days work and the whole team came away pretty excited.