About Me

Hi there, I'm Jeff. I'm a sophomore computer engineering student at Columbia University. As part of the EnigmaSM team I usually fulfill some role involving backend/frontend integration.

I first started really writing code some time in early high school for a C++ course in my freshman year. I had programmed in various capacities prior to that, but nothing terribly serious. Programming came pretty naturally to me - it was the only homework that I had that I actually looked forward to doing. Computer Engineering seemed like a pretty natural choice when I arrived at Columbia - I'm fascinated by software development, but also have practical/hobbying interests in electronics. My mother is a software engineer and my father is an electrical engineer, and both went to school in NYC, so clearly it is my destiny to study computer engineering.

I like to think my software development skills have matured a little since then. While at Columbia I've written the backends for Lights in the Sky and Studio-Cation (some of my friends' artistic projects), Dgr_dr (a project developed at Y-Hack with Max and Will), and Missed Encounters (a visual novel for 0hr Game Jam made with Max and Griffin). This past summer, I worked as a RHEL Kerner Engineering Intern at Red Hat. I'm excited to see where web/software development takes me in the future.

I dabble in poi, a performance art that involves me swinging around tethered glowsticks while EDM plays in the background. Actually the glowsticks and EDM are more for the spectacle - the main art is concerned with the manipulation of tethered weights.You might be interested in a video of me performing..

Missed Encoutners

Missed Encounters was a quick project done for the 0hr Game Jam. We spent about an hour beforehand throwing around ideas that we thought we could reasonably achieve. We settled on a very short RenPy visual novel — it gave us a chance to finally do some part of the game that wasn't strictly programming and let us start exploring new creative directions. I cheated a little bit - all of the art and writing was done in the allocated hour, but compiling all of it into RenPy took another half hour or so.

To be totally honest, a lot of this was written from my own personal experience. I wanted to capture that particular jumpy feeling of panicked awkwardness that goes on when interacting with a complete stranger. I plan on going back to rewrite most of it again at some point, because the dialogue is naturally pretty painful due to the fact that I'm rather out of practice on my creative writing and that it was dreamt up and written in an hour.

All of us actually felt good enough about what we produced in that first hour that we all want to go back and polish off Missed Encounters as a collection of short stories. The emotion we're trying to portray is something around "the feelings of hopelessly strained possibilities that manifest when we meet strangers and, when not acted upon, leave us vaguely wishing we hadn't been so cautious". This project really is the product of the feelings of young-adult loneliness that we who produced it relate to. The German word sehnsucht sums it up very well - a feeling of inexplicable, intense longing. It seems we were all feeling a little emotional that night for some reason.


Dgr_dr was produced for Y-Hack 2013. Despite how long Max, Will, and I have known each other, this was only the second time since the end of CTY that we'd seen each other. We fell into a pretty effective workflow. I have to say, sharing an office with the two of them for a night was one of the most memorable experiences I've had in a long time.

Dgr_dr was originally one of Max's project ideas. We decided it was a reasonable project for a hackathon because it was a fun hack that wouldn't take too much time to execute and also gave us room to play around with new frameworks. On a whim, I installed Flask a few days prior to Y-Hack, since we had settled upon using Red Hat OpenShift as our host (mostly because both Max and I had some degree of experience with it already, and because it was free), and since we had decided to use PIL to corrupt images. With the need to use a Python backend (since OpenShift wouldn't let us mix a PHP backend with a Python script to corrupt images) we decided to use Flask. To my delight, I found developing in Flask to be really fun, and incredible for rapid prototyping.

We actually got the basics of Dgr_dr done in 3 or 4 hours. I then spent the next 12 hours or so cursing OpenShift and Flask because I couldn't resolve dependency issues with PIL (as it turns out, you have to use Pillow with PIP because PIL doesn't play nice) as well as a path issue with trying to use symbolic links to OpenShift's data directory (which we have to use because we don't want uploaded images to disappear every time we push a commit, since OpenShift wipes the entire repository directory). Resolving the path to static resources through the data directory proved too much for me, and I spend the majority of the hackathon stuck on this problem. After breakfast on Saturday morning, however, I finally managed to resolve it and ran around the office screaming for a few minutes in pure unbridled joy. Despite this, I found developing with Flask and OpenShift to be a joy and I plan to use Flask in future projects. In retrospect, Y-Hack was the most fun I've had developing anything in a long time.