Skip to main content

Introducing Noisevote, or "A Democratic Rock Concert"

A little duo I'm part of these days, 1bisHill (What's with the name you ask? It is a long story...), was asked to play some songs at a gathering at my work the other day. (With a guest star from Brazil.) So, without thinking, I asked my partner in crime, and he said yes, so I said yes. And then I thought about things, and realised that we have lately drifted towards more and more... noise - less, what might be regarded as, ... music... Perhaps not compatible with playing at people at a party at work. So I got scared. And then I did what I always do when I get scared - tried to find a programmatic solution! This time I created a tiny web service where people could vote for more or less noise. Noisevote, if you want.

Pedals with  NSFW names like Big Muff and Swollen Pickle en masse.
Basically, server side, it is a really simple Ruby and Sinatra web service with a sqlite database to store votes (running on my Raspberry Pi at home). Client side it is Bootstrap and D3.js with AJAX calls to refresh the data. Instead of logins I just store unique random keys in people's sessions so that only the last vote of anyone is "active" at any time. Max. (I'm guessing this is not really incognito-mode safe, but we are not creating a super-democratic system here, and the pragmatic need to make something super-easy to use won. This time.) In this first, quick, and dirty version each vote lose influence over the overall vote in a linear fashion, and after one minute the vote is dead.

Behind us, on, in lack of a better word, the stage, we had a screen displaying the current results of the vote (along with a short and simple URL in large friendly letters for people to access the service) - in form of a gauge (going 'till 11, of course). Like so:
Beautiful D3
During the "concert" we could then adjust our way of playing (and what pedals we used) depending on where the gauge was pointing. And between songs we could adapt the play list accordingly. That's it. And, interestingly, people did vote. Some did, at least. During our 15 minutes or so of performance, we got 52 votes, from 29 unique voters.* Not bad, methinks.

Some possible, and potentially interesting, improvements:

  • A better attenuation function. (A linear taper off,  like it is now, is not particularly interesting.)
  • A visual setlist. (For example with a tree structure in the veins of good old Out Run - choose left for "easier", right for "harder", "left and then right" is the same as "right and then left". (I realise that this structure probably has a name I should know.))
  • Vote for other metrics could be fun to try as well. Faster/slower? Louder/quieter? (A friend suggested "more/less A minor", why not? :-))

*38 votes were for more noise, 14 for less noise.

(Thanks again to Mike Bostock for the D3.js library, and the code that the gauge is based on: )


Popular posts from this blog

Fix your rapid blinking Marantz SR-6004 using nothing but 3 fingers - and a thumb

A couple of years ago my (most of the time excellent) Maranz SR6004 acted up. It did't want to turn itself on. Properly. Just stood there and blinked rapidly. Its little red light that is. At me. The solution was so simple that I didn't bother to write it down as I was sure to remember it. Alas, no. Some weeks ago it did it again. (Can it be the heat?) Just stood there blinking rapidly at me. The manual just said - as it said last time around - that it was time to return the unit to it's maker. Or similar. Some googling led me to this page:  The technical term for what I had experienced seems to be "The Pop of Death". Aïe. But!, humongous letters said: YOU CAN SOMETIMES RESET THE UNIT BY PRESSING SURR MODE, CLEAR AND EXIT SIMULTANEOUSLY And so I did. And so it was fixed. And all was well. (And now I have written it down for the next time.)

Fix upside down Skype video in Ubuntu 12.10 [UPDATED]

When launching Skype in 64-bit Ubuntu 12.10 on my Asus U35J the webcam image was all topsy-turvy. Since I don't live in Australia, or something (tsk-tsk), this was not really cutting it for me.  Some quick googling led me to this forum post:   After making sure that the necessary packages was installed (notably  libv4l-0) I adapted the command from the forum post to: LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/ skype and voila, the image was OK. Next step is for this to be set to default, which seems to be outlined here (in steps 2 and 3):  (Actually this post seems to cover most of what is useful from the forum post above...) UPDATE (19/04/2013): Since my laptop was working fine, I decided it was about time to fix it. Also I wanted to

Using a Raspberry Pi as a MIDI USB/5-pin bridge

In my constant... need... to get everything music instrument related to communicate with each other, I wanted to look into ways to get some of my keyboards/synths with only MIDI over USB to talk to devices with regular good old-fashioned 5-pin MIDI ports from the eighties. Cables! First I had a quick look at off the shelf solutions. The most interesting one being the Kenton MIDI USB Host – providing MIDI host functionality for USB devices as well as regular MIDI in and out in a small box. Unfortunately it is rather expensive (~125 €) and a reliable online source warned me that it was not entirely stable in collaboration with my OP-1, so I started thinking of more... home-grown solutions. I decided to try to use my old Raspberry Pi and see if that would serve as a USB host with a borrowed MIDI USB adapter. (Thanks Simon.) A cheaper, and, as an added boon, a nerdier solution. Step 1: Get the USB MIDI device up and running This was the easy part. The device I have been lent