I am interested in the teaching and practice of Computer Science. My teaching drives everything that I do, and I love to try new techniques to help students learn in my courses. My research involves using technology, machine learning, human computation, and collaboration to improve the way that we teach computer scientists at the collegiate level.
I can be reached via e-mail at firstname.lastname@example.org.
Meeting with Me
Due to the online nature of this next term, meetings with me have changed slightly. I still intend to be very available, but it'll be via Zoom instead of my office. Please feel free to jump into this Zoom meeting and see if I'm there.
Feel free to stop in whenever my door is open; I'm happy to meet with students whenever I have free time.
When requesting a private meeting with me, please make sure to explain in as much detail as possible why you are requesting it. I'll do my best to accommodate as many students as I can, but it's important for me to remember why I'm meeting with you.
If you would like to request a recommendation, please read this first.
If you would like to meet with me for any reason, please use this website.
LaTeX Tutorial (and the accompanying homework template). Many of the courses I've worked on have required that students submit their solutions using LaTeX; so, I wrote a short tutorial which also acts as a LaTeX reference.
Advice for new TAs. Back when I was TAing, I found that many first-time TAs had no idea what to expect. I've been told this document has helped some people. It offers advice for new TAs who want an idea of what pitfalls to avoid.
How to ask for help. I've found a really common issue for freshmen is that they get stuck for the very first time, and they aren't sure how to get help. This document outlines ways in which students can turn "getting stuck on homework" into a positive experience.
Research projects I have worked on in the past (and, for some, am still working on) include:
- a programming language and compiler for teaching introductory discrete mathematics (Setty),
- improving submission, annotation, review, and feedback of proofs (ColorMyGraph and "Whiteboard"),
- using abstract interpretation to help students learn (output and time complexity analysis of programs),
- peer grading of proofs (verifications),
- studying the effects and implementation of formative assessment, and
- modifying production compilers to help students learn.