ESP Biography



JOE ZIMMERMAN, Ph.D. Student in Cryptography




Major: Computer Science

College/Employer: Stanford

Year of Graduation: G

Picture of Joe Zimmerman

Brief Biographical Sketch:

Not Available.



Past Classes

  (Clicking a class title will bring you to the course's section of the corresponding course catalog)

M5677: Introduction to Cryptography in Splash Spring 2017 (Apr. 22 - 23, 2017)
This course will provide an introduction to the concepts of cryptography. Starting with the simple one-time pad, we will give intuition for several of the most important techniques in symmetric-key and public-key cryptography. Time permitting, we will also discuss a few of the fancier cryptographic inventions of the past few decades (e.g., zero-knowledge proofs, multi-party computation, homomorphic encryption).


M2055: Undecidability in Splash! Spring 2012 (Apr. 21 - 22, 2012)
There are some problems that no computer program can solve. Not just problems like "compose a great symphony" or “print the meaning of life" -- specific, well-defined, and surprisingly natural computational problems for which we can prove mathematically that no program can solve them. In this course, we will see some of these problems; along the way, we will also discover precisely what we mean by "program", and we will explore some wacky and probably counter-intuitive facts about infinity.


M1673: Undecidability in Splash! Fall 2011 (Oct. 29 - 30, 2011)
There are some problems that no computer program can solve. Not just problems like “compose a great symphony” or “print the meaning of life” -- specific, well-defined, and surprisingly natural computational problems for which we can prove mathematically that no program can solve them. In this course, we will see some of these problems; along the way, we will also discover precisely what we mean by “program”, and we will explore some wacky and probably counter-intuitive facts about infinity.


M1441: Undecidability in Splash! Spring 2011 (Apr. 16 - 17, 2011)
There are some problems that no computer program can solve. Not just problems like "compose a great symphony" or "print the meaning of life" -- specific, well-defined, and surprisingly natural computational problems for which we can prove mathematically that no program can solve them. In this course, we will see some of these problems; along the way, we will also discover precisely what we mean by "program", and we will explore some wacky and probably counter-intuitive facts about infinity.


M1446: Introduction to Game Theory in Splash! Spring 2011 (Apr. 16 - 17, 2011)
You and a total stranger are being held prisoner, each in isolation, by the most fearsome kind of captor: the curious behavioral economist. He offers you a choice: betray your fellow prisoner, or keep silent. If both prisoners remain silent, he will release them after a month; if only one party betrays the other, the former goes free immediately and the latter is imprisoned for a year; and if both parties betray each other, they both remain captive for six months. What would you do? Starting with the classic example of the prisoner's dilemma, we will explore a variety of idealized games with surprisingly common real-world applications. Along the way, we will learn about expected utility, equilibria, cooperation, signaling, iterated games, common knowledge, and many other things. Students will get a chance to play games with each other during the seminar, and a plethora of 2x2 square diagrams will be drawn on the board.