Selected code, ranging from research-based applications to fun side projects.
Here is a brief outline of some selected programs and applications I have worked on over the last few years. Source code for each of these projects can be found on my Github profile:
flock is a cross-platform mobile application for the visualization of Swarthmore’s campus population. It consists of a client-server model for reporting location data and grouping said data with various clustering algorithms, including DBSCAN and Mean-shift. The client can be run on both the Android and iOS mobile operating systems and leverages the Google Maps API for powerful mapping abstractions.
markiavelli is a Reddit bot that generates random posts using Markov chains.
markiavelli can be trained on subreddit comments in addition to text files. It then posts generated text to a provided subreddit at given intervals. Below are some example posts that were generated after training on Machiavelli’s The Prince and The Discourses on Livy in addition to comments from r/politics and r/changemyview :
That’s why actual democracy is 1 person, 1 vote, and therefore is useless.
A government that cannot be overthrown, is a government that is unable to pay a premium in exchange for land.
He’s a savior and I can even decide how I feel. I can’t accept that it’s only because you meet older women….
I’d say they’re more qualified than the physical world. This is where you meant the internet.
pokebot is a lightweight PhantomJS program that responds to any pokes within a
given time interval.
quart is a python project that generates computer art using concepts related to
a quadtree data structure.
quart takes an image as input and then recursively
splits the image into four quadrants, filling each quadrant with its average
relax is a novel model making use of Markov chain Monte Carlo methods to
forecast the results of an upcoming lacrosse match based on team statistics from
previous games in a season. It is evident that this model presents very
promising results as it correctly predicts the outcome of 70.0% of all games
from the 2014 NCAA Division 1 season.
spine is a cross-platform framework for mHealth application development. It provides a command-line utility built using the Cordova and Yeoman frameworks and allows a user with limited technical skills to create basic mHealth applications by simply defining a JSON object.
spine contains generating, packaging, and build systems for developing cross-platform HTML5 web-applications that can then be compiled into native mobile applications. Using