I received a Summer Undergraduate Research Fellowship to develop this program, which allows linear algebra students to solve computational problems at the granularity of row, column, and matrix operations, rather than repetitive arithmetic. Please see here for more information about this project.
Hump Yard is a board game about data structures and algorithms in the context of a rail classification yard. I've been developing it ever since I worked at Union Pacific Railroad in the summer of 2014. I iterated on it over 30 times in the summer of 2017 and have exhibited it at the Gen Con Adventure Gaming convention in Indianapolis. I also received the 2014 - 2015 Henry Armero Award to help fund the original prototypes.
Please see here for an example rules document that is out of date, but none the less should shed some light on the mechanics of the game.
|Sim Urban. Work in Progress.
I am working with New York University Transportation Engineers to create Sim Urban, a computer game about multi-modal transportation networks. We plan to someday use the game as an academic competition for students as well as a tool for informing the general public whose lives are affected by transportation, but whom have not received any formal training in the subject.
I am currently working on a journal article describing a survey instrument that may be used to assess the effectiveness of a related class of games for stealth assesment.
|Graphics Diner. Work in Progress.
I have a dream of making the field of computer graphics more accessible through the creation of a graphic novel. I would also like it to be easier to produce compelling imagery about the various fields that computer graphics draws from, including perception, light, materiality, geometry, topology, and computer systems.
Here is a link to a pdf of a draft of the book.
Here is a link to a draft of the content of the book.
|Bryce Graphics Language.
This project is one of several that I've created on the theme of visualizing the structure and flow of executing programs. It shows the separation and connections between regions of memory while an algorithm is being executed. It also shows concepts such as scope and shadowing. I hope to make the next iteration in this line of inquiry based on the algorithms I'm developing with my Sim Urban project.
|The Robotic Quine,
A robot that types its own source code. This project tries to make theoretical computer science more concrete.
|The Bryce Visuality.
Over the past 6 years, I have been practicing the art of directly specifying images using mathematics. I use programming languages, text editors, and sometimes an integrated development environment. Please see here for a more detailed overview of a portion of my history in this endeavor and links to the code I've used to produce these images.
|Parrallel Painting. At Carnegie Mellon University, I took a class on Parallel Computer Architecture and Programming numbered 15-418. I was so inspired by my teacher that I devised a parrallel painting scheme, where a group is given the task of painting the numbers 15-418, but they have to continually rotate canvases after every couple strokes. The results were a set of 4 images.
You may see more of them here.
|Bassoon Performance. I've been playing bassoon for over 10 years now. Here is a performance of mine of Weber's Hungarian Fantasy that I am particularly proud of, although I've matured quite a bit over the past two years.|
|Undergraduate Thesis: Extracting Curves From Subdivision Surfaces.
As the precursor and first step towards my Graphics Diner research agenda, I worked with Keenan Crane on the mathematics of computing sillhouette curves from subdivision surfaces. This mathematics is the first step in reconciling the divide between 3D modeling programs and 2D illustration programs and allowing educators to more efficiently illustrate ideas about geometry.
|AlgoPipe. As a member of the Tinkercad team at Autodesk, I researched, designed, and developed algorithms for routing a pipe through the interior or exterior of a geometry representation, especially for use in 3D printed electronics.
More information about Tinkercad, a user friendly online 3D modeling software, may be found here.
Given a set of planar polyline ‘scribble strokes’, Scribble.js creates a halfedge data structure representation of and then outputs the set of closed polyline loops constituting the negative space of the scribble strokes. Scribble.js also includes several other algorithms for segmented planar graphs, such as automatic coloring, edge deletion, bezier curves, and holes.
An original C++ version may be found here.
|Augmented Hand Series.
A project by Golan Levin, Chris Sugrue, and Kyle McDonald. Originally exhibited at the Cinekid Festival MediaLab in Amsterdam.
I contributed a 2D boundary butterfly subdivision scheme using a directed acyclic stencil dependency graph, as well as a LAPACK reduction for hand deformation.
Please see the code here.
If you have an interest in my overall work, please see here.
If you have an interest in seeing more projects, please see here.
If you have an interest in seeing more of my early work, please see here.