Zachary Tatlock


My research interests include formal verification, compilers, and security. Even outside the lab, I try to code for fun most days. If I'm not hacking, I'm running long distances with friends, riding my bike around Seattle, or making something. I can juggle and solve Rubik's cubes, but not at the same time. Also, my name has a wicked cool anagram.

I spent six sunny years at UC San Diego working on the PhD with my incredible advisor Sorin Lerner. Throughout grad school, Sorin set a stellar example of how remarkable research can be when you put students first, an example I strive to emulate. I also learned many invaluable lessons from the great Ranjit Jhala, especially when it comes to writing and presentation: Less is more!

I graduated from Purdue University back in Spring 2007 with degrees in Computer Science and Mathematics. As an undergraduate, I was fortunate to perform research with Suresh Jagannathan on the SML compiler MLton. For my Honors Project, advised by Antony Hosking, I designed and implemented a domain specific language to control a giant neon sculpture over the web. Over nearly three years, I ran the lab component of Purdue's introductory Java programming course.

Good Things

John Regehr's and Matt Might's blogs are superb.

How to give a stellar content-free talk.

This is the best writing book...

... but Orwell also had some excellent thoughts on writing.


My friend Garbo and I run Seattle's premier pizza haiku blog: Seattle Pizza Odyssey.

The department asked a fancy photographer to take a non-poncho shot for this website.

zachary tatlock

Emina and I made a video about the Neutrons project!

Once, while interning at MSR India, I got to drive an auto rickshaw.

Some folks in the department juggle stuff.

We also have a great running group that trots all over the city.

We made a cool video showing how Roboflow works.

Seattle is epic; some of our adventures show up on social media stuff: