# David Pritchard

daveagp@gmail.com

Software Engineer

Google Los Angeles

**Recent Projects**

**Websheets**: scaffolded exercise frontend with
fluid fill-in-the-blank areas, allowing instructors to easily define new exercises. Java and C++ backends/exercises available.

**C++ draw Library**: an API for drawing in C++, suitable for beginners, capable of sophisticated animations. Sample assignment.
See also the

`picture`pixel-oriented class.

**Java Visualizer**: a new backend for the classic Python visualizer. Shows all steps of a program automatically. Fake C++ visualizer available.

**Computer Science Circles**: learn Python from the comfort of your own browser. Teach a student or a class, see their progress, and answer their questions. 600000+ exercises solved. More…

**Research**: My research includes web software for education, combinatorics, linear programs, approximation algorithms, probabilistic methods, and computational methods. Click here for my papers and talks.

**Teaching Notes**

- Introduction to Programming in C++ at USC
- Individual topics: Linked Lists, Ajax, Java Threads
- Mathematical Software (LaTeX, Maple, GeoGebra), Sept–Oct 2012, University of Waterloo (online)
- Game Theory & Algorithms, Spring 2011, EPFL
- High school enrichment, math circles, and programming.

**My Blog**: QED and NOM

**Where I've Been**: USC (CSCI 103), Princeton (COS 126), CEMC (CS Circles), EPFL (Post-doc), Waterloo (PhD w/Jochen Könemann), MIT (M.Eng & B.S.), Scarborough

**Small print**. If you're not 100% satisfied, get a full refund on your visit and try a different David Pritchard: MIT physicist | Toronto roaster | Microsoft exec | transportation planner | wildlife painter | blogging math prof | self-worm-infecting Dr. | Hollywood fraudster