I like making cool stuff. Maybe we can make something cool together.
doucet.damon@gmail.com · Github · Resume
Benchling 2016 – present
MIT Computer Science 2012 – 2016
Internships: Benchling 2015, Dropbox 2014, Khan Academy 2013
USACO 2010 Finalist
Fall 2015, Spring 2016 · C++ · PDF · ACM Digital Library · Github
Writing race detectors is hard. Even using a framework such as Cilk, which drastically simplifies the algorithm for computing races, a significant amount of engineering still needs to be done as either binary or compiler instrumentation to capture memory reads and writes of tested programs. Other tools such as call-graph generators and code-coverage analyzers require similarly Herculean efforts. My senior thesis was to build a highly-performant LLVM/clang framework so that tool-writers can focus solely on writing their tool, and not compiler internals. It won the Outstanding Research Project Award and was published in SIGMETRICS.
May 2015 · HTML5/Javascript · Github
2D HTML 5 Canvas game in which the player controls a circle and shoots polygons, attempting to stay alive as long as possible. I tossed this together over a few days in my spare time at home.
May 2015 · Java · Github
6.824 Final Project. Collaboration with Anubhav Jain and Merry Mou
Modern screen-sharing applications fall into one of two patterns. One pattern is the broadcaster sending its screen to some distributer (e.g., Twitch or Azubu), which requires trusting that central authority. The other requires each client to open a connection to the broadcaster, a clearly non-scalable protocol that forces too much load onto the broadcaster's CPU and network and has no tolerance of network failures. This project solves the lack of fault tolerance and provides mechanisms for solving the performance issues as well.
May 2014 · C#, XNA · Github · Youtube
Collaboration with Kevin Yue (game designer)
A three week challenge to make something awesome (two previous iterations took the first week; current iteration is about two weeks of work). No libraries besides the XNA framework. 2D 1v1 Platformer for Xbox 360 (playable on PC). 3 roles, each with 4 abilities, a dash, and a jump. Hitting an opponent removes their shield; hitting again before the shield recovers wins you the game.
Splash 2013 · C++, Cheat Engine · Github
Proof-of-concept for my Splash class on hacking PC games. Uses Windows API to read the memory of the solitaire process and displays the cards in each pile. The class taught students how to find the structure and addresses of the cards.
Spring 2013 · C#, Kinect SDK · Github · Youtube
Created to advertise MIT techx. Initially, particles will spell out "techfair" (configurable for any font/string pair). Raising one hand will make all particles follow that hand; raising two hands will split the particles into two. Dropping both hands will cause the particles to rearrange to the spelling.