Playing with competition data from SparkFun’s Free Day

Yesterday, SparkFun Electronics had their annual Free Day, where this year they gave away $200,000 in credit to their customers just because they felt like it.

The Metricfire founders are big fans of SparkFun, we both love electronics and tinkering. One of my desks is covered in microcontrollers and other components. When I’m not working on Metricfire, I’m soldering! (Or ordering parts from SparkFun…)

This year, people entered the competition to win a $100 credit by repeatedly solving captchas to prove their humanity. The competition was set to run for several hours. Several hours solving captchas? That sucks. A lot of people are going to get bored after a few minutes and wander away, but many will come back. If I don’t want to spend several hours solving infuriating captchas, can I figure out the best time for me to compete?

Wait... this is to prove I'm *not* a robot?

The answer is yes, we can work it out! SparkFun published some live statistics about the number of winning and losing attempts using Pachube. This is cool, but I didn’t find the graphs very useful. Here’s what it looked like:

That’s cool, but not very useful. It’s vanity data, and not even very pretty. We can do better and pull some meaning out it. I set about scraping this data from Pachube and getting it into Metricfire where I can better work with it.

After some quick tinkering in Python and applying some data transformations in Metricfire here’s what I ended up with:

Much better. Now can I see some trends in that data. Most importantly, I had a graph of how tough the competition was as people entered/left:

I used this graph to figure out when I should invest a few minutes in solving captchas. It looks like the best chance of winning was almost 0.06%, about five and a half hours into the competition. Watching this graph change as the day went on was fascinating – a little like watching a stock market graph.

I didn’t win anything from Free Day this year, but I had a lot of fun crunching the numbers during the event. Metricfire was a big help with that – once I decided I wanted a graph of something, it was only a couple of lines of code to get my data into the service and on a graph. This is why Metricfire exists.

- Charlie


Comments are closed.