Yesterday I needed to play Family Fortunes (a.k.a. Family Feud) at our church youth group. Our church doesn't have internet connection, so I needed something that would work offline.
There were quite a few versions you could download – for a fee. But as well as the price, getting the computer to do it all is often not so much fun as something with humans more in control, and you're limited to what the computer can do – not easy to fix when you type something in wrong.
So in the end, with a couple of hours to go before the club started, I reckoned I could code up a simple implementation of the score board in a web browser. I scraped some questions from here, used a bit of Python to parse and convert to JSON, then used jQuery and HTML5 audio to get something that works pretty well for our purposes and doesn't need an internet connection.
Usage and source code on GitHub. In brief:
n - next question
p - previous
1-5 - correct answer
x - wrong answer
We set up my laptop as the screen, with some speakers for increased volume, and one of the other leaders used a USB keyboard to control it and decide on correct answers, while I was the game show host. It ended up being pretty fun, and I can imagine re-using on a church holiday etc, with a projector perhaps.
I was also impressed by just how much you can do in a browser these days, with so little time and effort. Recently the brilliant flot library made me realise the same thing – more and more, web development is beating desktop development in terms of APIs, speed of development, ease of development, and even the performance of the result. I very quickly produced a great set of graphs gathering some stats on a website — both attractive and interactive – and realised that even with many of the easiest charting solutions for the desktop, I would not have been able to produce anything like the results.