Photo credit: Rishabh Singh.
I am a Ph.D. student at MIT advised by Armando Solar-Lezama. I received my bachelor's degree from Harvard in 2008.
I help programmers focus on the interesting functionality of programs. I do this by automating the tedious, error-prone aspects of programming. This involves designing more concise programming constructs and developing execution strategies that are both correct and efficient.
For my Ph.D. thesis I have created a programming language, Jeeves, for automatically enforcing privacy policies. Jeeves allows the programmer to separately implement privacy policies from other program functionality. In Jeeves, the programmer can rely on the runtime to produce results adhering to the policies. I have developed a formal semantics for Jeeves, proven guarantees about it, and implemented Jeeves as embedded domain-specific languages in Scala and Python. I am currently building a Jeeves web framework.
To see what my MIT colleagues are doing, you may be interested in the MIT programming languages page.
- Faceted Execution of Policy-Agnostic Programs, Thomas H. Austin, Jean Yang, Cormac Flanagan, and Armando Solar-Lezama. PLAS 2013. [Paper: pdf | BibTex]
- A Language for Automatically Enforcing Privacy Policies, Jean Yang, Kuat Yessenov, and Armando Solar-Lezama. POPL 2012. [Paper: pdf | Slides: pptx pdf | Talk: mp4 stream | BibTex]
- Secure Distributed Programming with Value-Dependent Types, Nikhil Swamy, Juan Chen, Cédric Fournet, Pierre-Yves Strub, Karthikeyan Bharagavan, and Jean Yang. ICFP 2011. [Paper: pdf | BibTeX]
- Safe to the Last Instruction: Automated Verification of a Type-Safe Operating System, Jean Yang and Chris Hawblitzel. CACM Research Highlight. Communications of the ACM, September 2010. [Full text: html pdf | Technical Perspective: html pdf | [BibTeX]
- Safe to the Last Instruction: Automated Verification of a Type-Safe Operating System, Jean Yang and Chris Hawblitzel. PLDI 2010. Best paper award.
[Paper: pdf |
Slides: pptx pdf |
Related video |
In addition to conference and workshop talks, I have spoken about the Jeeves programming language at the following universities and companies: Harvard University (Dec. 2011), Northeastern University (Dec. 2011), New York University (April 2011), Google New York (July 2011), Facebook Menlo Park (March 2012), Google Mountain View (April 2012), UC Berkeley (April 2012), Boston University (April 2012), Brown University (June 2012), Tufts University (Colloquium, Dec. 2012), and Microsoft Research Cambridge (Oct. 2013).
Awards and Honors.
- Facebook Fellowship, 2012-2013.
- National Science Foundation Graduate Research Fellowship, 2008-2011.
- A Better Way To Protect Privacy? Take The Programmer Out Of The Equation. Jessica Leber, Fast CoExist, March 7, 2014.
- Out in the Open: A New Programming Language With Built-In Privacy Protocols. Klint Finley, Wired, March 3, 2014.
- Want to build privacy into your apps? Check out Jeeves, now available in Python. Barb Darrow, GigaOM, February 11, 2014.
- New Programming Language Removes Human Error from Privacy Equation. CSAIL, MIT Technology Review, February 10, 2014.
- Cloud Trailblazers: 10 for 2013. Mission Possible? Jean Yang. Barb Darrow, GigaOM, May 28, 2013.
- What your online friends reveal about where you are. Jacob Aron, NewScientist, January 25, 2012.
I spend a fair bit of time thinking about how to help people understand how to use and evaluate their tools. In addition to serving as a Teaching Assistant for existing courses, I have designed the courses Introduction to C Memory Management and C++ Object-Oriented Programming (IAP 2010) and So You've Always Wanted to Learn Haskell? (IAP 2010). You may see my CV for a complete listing of my teaching experience.
Profiles and Interviews.
- I was on the "How I Got There" panel at the Women in Advanced Computing Summit (June 2013). Video here.
- @julialindau made this nicely illustrated profile (March 2013) about how I came to study computer science.
- I discuss graduate school and computer science in Lan Li's short documentary film rocks, bands, logic (fall 2011).
Relevant Activities and Links.
In spring 2010, I started the annual MIT Programming Languages Offsite Meeting for exchanging updates and ideas among the eight MIT research groups in programming languages, software engineering, and human-computer interaction.
In fall 2009, I co-founded Graduate Women at MIT for the promoting the personal and professional development of graduate women. As of spring 2013, we had over 1500 mailing list members and over 80 planning committee members running our mentoring program and two annual conferences. I also created the Positivity@MIT project for creating a more positive workplace environment.
As of fall 2013, I have been co-directing NeuWrite Boston, a collaborative working group for scientists and writers, with Amanda Gefter. Our goal is to improve and innovate the state of science communication.
I also have a couple of satirical photo blogs. My brogramming project examines the "brogrammer" trope in tech culture and also society's image of the programmer. My Strong Reject meme satirizes the human aspects of the scientific reviewing process.
Considering Graduate School?
I have compiled the following advice on applying for a Ph.D. in computer science:
- Deciding to Apply
- Standardized Tests
- School Visits
- Some notes on picking grad schools/advisors
- FAQ: Applying to Graduate School for Computer Science
You may also be interested in these blog posts I have written: