Welcome. My name is Jimmy Koppel. By day, I am a Ph. D. student at MIT in programming languages. By night, I run a business training professional software engineers how to write better code. You can read more about this at my business website and blog.
My research focuses on making programming tools easier to build and more general, including automatically generating parts of program transformation and synthesis tools (“programs that write programs that write programs”). I also have a secondary focus on the application of causal inference to program analysis; I write more about both on my interests page. My largest project to date is the Cubix project, which allows you to build a single program transformation tool that works on multiple languages. I am a member of the Computer-Aided Programming Group, advised by Armando Solar-Lezama.
I spent my time prior to grad school in the startup world, and still keep one foot there. In 2012, I received the “20 Under 20” Thiel Fellowship and founded Tarski Technologies, a startup building program repair technology (“automated bug fixing”). In 2014, I became the third employee of Apptimize, where I worked primarily on their visual editor for A/B testing mobile apps , now used by apps totalling well over a billion installations. I continue to consult for several companies, both in software development and developer training.
I enjoy random E-mails from strangers about startups, research, and life in general.