Ostracon

Inspired by Twitch Plays Pokemon, Ostracon is a library for real-time voting over the internet. It used Erlang’s lightweight actor model so that each connection could be represented with a single actor. After a certain time period, a reduce function would take all the values and compute some arbitrary aggregated value that can be used in application logic.

My team built a couple of examples to demonstrate the library, starting with a pie chart that could resize in a live demo where each participant could join a vote every second.

A voting pie
A voting pie

We decided to also use the library to build a simple distributed game where players vote to control a professor in a quest to get grant money.

Ostracon in a simple game
Ostracon in a simple game
Annabel Lee

Annabel Lee

I’m a student at Duke University majoring in Electrical & Computer Engineering and Computer Science. More importantly, I’m a lifelong maker with a thirst for acquiring new skills and exploring novel ideas.