In middle school, I was on my school’s science bowl team. It’s a team based competition where a moderator reads question and you press a buzzer to try and answer it as fast as possible. In high school, me and a friend of mine were on the science olympiad team, which is very different, but we had a lot of friends on the science bowl team as well as many on the history/general counterparts, history bowl and quiz bowl. My friend and I frequently teamed up at hackathons together so when we were thinking of an idea for Stuyhacks 2017, we thought it would be a good idea to build a kahoot inspired buzzer system for these clubs. Since these competitions require 8 people, these buzzer systems are typically used. But they cost a fortune ($300+) and break frequently (which baffles me since the electronics are trivially simple).
So our idea was to create a web app that had two components. A scoreboard/host which would be run on a laptop connected to a projector. This would create a room code which the players could enter in the second part of the web app on their phone. They would put in their names and what team they were on, and they could use a button their screen to buzz. This seemed like a pretty easy project, just send a packet of a socket connection and then the first one wins. But that’s not entirely fair. What if someone’s internet or phone is slow? Our solution would be that in these packets we would send the local time on the device, so it doesn’t matter how long (within reason as there should be a timeout after the first packet is received). But then what if peoples phones are slightly off. Or even worse, what if someones phone is in European time from their recent vacation or something. So what we ended up doing is when the buzzers are opened, we sync all the local times and calculate the offsets so we can have the fairest system possible. And honestly, it works great. You can create a game here and join on your phone here, or check out the source code here.
We also added all the standard components of a science bowl scoring/timing system so this platform could replace the timer, scoreboard, and buzzer and be an all in one solution to your pick-up science bowl needs.