The actual title of “The World’s Drunkest Programmer” may never be given out in any official capacity, but thanks to the Arduino prototyping platform, the availability of cheap kegerators and the wanton need for frosty refreshment buried deep within the programmer psyche, any team with about US$1,000 can figure out who is the drunkest programmer in the office. The title, of course, can be given out through data analysis.
When Felix Sargent and Chris Gilmer, software engineers at Rackspace, were informed by human resources that the company was moving its San Francisco offices into the trendy district south of Market Street, the pair decided they needed to build something special for the forthcoming office opening party.
That something special was a homebrew Kegbot. The term comes from kegbot.org, where this open-source project’s creator, Mike Wakerly, has stationed the project’s information. Its specifications and software can be used to turn an ordinary kegerator (basically, a mini-fridge with a tap coming out of the top) into a tablet-driven, RFID-using, beer-dispensing open-source project.
But while Sargent and Gilmer were inspired by Kegbot, they ended up building their entire project from scratch. Under normal circumstances, such a whole-hog rewrite would seem nonsensical, but the pair had a very good reason for trying it on their own: They could get everyone involved.
“We wrote it all. We decided to get everybody to chip in,” said Gilmer. “A couple of people worked on the Arduino code, and I wrote the Python code to talk to the Arduino. We have great developers and front-end designers, and they wrote the interface for the computer. We did a computer connected via USB to the Arduino. The Arduino was polling the machine, and we took updates from the machine and saved them in a database. You could log in and see what was going on.”
Just what was going on? The software allowed users to view the keg’s temperature, pressure and fullness level based on the amount consumed. But most importantly, it could track who drank what.
“We issued everyone an RFID card,” said Gilmer. “We bought several hundred—and some subsection of those we hand-painted—one for every employee in the office.” In theory, each user’s exact consumption, to the liter, would be measured and recorded.
But, of course, there was beer involved, and the project encountered a major snag. “Someone at the party must have gotten drunk and left their card there,” said Gilmer. “The RFID had the property of making the kegerator light up, so at that point the flow meters were broken anyway, so we decided every swipe was a glass of beer. So this one poor person, a guest, looked like they had 20 liters of beer.”
And in that statement, he hints at another major problem the team ran into: The flow meters, essentially a small propeller in a piece of tubing, with magnets in each propeller end and a sensor coming out of the top of the tube, were a constant problem for the team.
At the center of this metering problem was the fact that beer is already compressed. When the pressure varied in the kegerator’s many tubes and systems, the beer would suffer. “We tried shrinking the amount of tubing. We tried keeping the beer much colder,” said Gilmer.
“This is an unsolved problem for us. I think two things would have helped: One was bigger pipes, and bigger flow meters.”
Fortunately for the more adventurous folk in the development world, the Kegbot project offers a very detailed specification, software package and parts list for building such a device on your own. Gilmer said he wouldn’t necessarily recommend starting from scratch, but he definitely recommends the project as a great way to involve the entire office.
“Do it! It’s a lot of fun!” he said. “It’s also a great way to get everyone in the office involved, in that the outcome is exciting for everyone. There are probably better flow meters, and probably better methods than we used. But there’s some great hardware people have put a lot of time into in the open Kegbot project. You can pick and choose the features you like.”
And, of course, Gilmer added that “We don’t drink on the job, obviously, but when you’re being social, it’s fun, and there’s no reason why a good hardware and software project shouldn’t involve a little beer.”
As for the Rackspace kegerator project? It’s on indefinite hold. Someone spilled beer on its internals.