Contact info

Fall Quarter 2021

The fabulous Cynthia Lee and I are teamed up to lead CS106B, one of our all-time favorite classes. Especially excited to be back in person!

An ode

To the student who missed lecture and asks did I miss anything?

A little bio

I left my rural hometown of Stevinson, CA (population: 262) to come to Stanford as a wide-eyed freshman in 1985. My undergraduate tour of duty included SLE, LSJUMB, a year on leave, RAing a wonderful frosh dorm, building an enormous sleep debt I still owe on, the beginning of life-long friendships, near-constant self-doubt, moments (brief) of glory, and, finally, a BS in Mathematical Sciences. My love of building things lead to my first job as a software engineer at NeXT in 1989. We had an incredible team, awesome technology, and a whole lot of fun. In 1997, NeXT was acquired by Apple and I continued on with the MacOS X team; my greatest achievement was part-time possession of the Smart Torch. After many wonderful years at Apple, I stepped out in 2003 to raise my kids. In a parallel life to my industry career, I went back to grad school in CS at Stanford in 1992 and got lured into teaching, first as an industry affiliate, then a teaching fellow, a lecturer, and now senior lecturer. I teach courses in the undergrad systems curriculum, including programming methodology and abstractions, language paradigms, computer systems, compilers, and object-oriented design and development, but I especially enjoy working with the section leaders in the CS106 courses. I have been the advisor to the Stanford SWE and ACM-W chapters and served on the Computer Science Advanced Placement development committee, writing and grading an exam for 20,000 students nationwide. A quarter's worth of my CS106B lectures were unleashed as a pilot for Stanford Engineering Everywhere, a project to provide a Stanford-quality education to all seekers. I am currently having great fun leading CS107, the second course in the systems core of the redesigned undergrad major, and collaborating with my brilliant colleague Pat Hanrahan on CS107E, the "embedded" variant that uses the Raspberry Pi to explores systems from the processor up. In the year of the pandemic, I joined forces with the awesome team of Chris Piech and Mehran Sahami to spread coding joy with Code In Place, a grand experement and community service project in teaching and learning at scale.


Thinking about declaring CS or CSE? The CS Undergrad Advising site has excellent information about the major, the minor, declaring, advising, and so on. The UAL site for a great wealth of resources and information for undergrads of all persuasions.

My CS undergraduate advising group is bit on the large side, but if you are looking for an advisor and not afraid of crowds, come by and talk to me about joining. Anyone, advisee or not, is welcome to come by and ask questions about courses, internships, planning, etc.

My life

I'm married to Matt Vaska, medical device engineer, entrepeneur and all-around superhero. He is also a Stanford alum (BS/MS in Mechanical Engineering) and part of his wooing involved a trombone serenade in the Flo Mo courtyard and an inspired resurrection of an ancient player piano using a vacuum cleaner. We are the proud parents of two awesome kids: our Paly senior Rein and sophomore Kalev. They attended the Spanish Immersion school on Stanford campus. Come by and school me in Spanish -- I need all the help I can get to keep up with my kids!

Rein playing the Carmen Intermezzo with the Peninsula Young Artists. (Excuse the promotion of a very proud parent, but isn't he fabulous?)