My approach to education & learning is grounded in the lovely examples of science as a collaborative practice that I experienced as a mathematics major at Harvey Mudd College. A former math professor of mine, Francis Su, puts it well in his piece “For Human Flourishing, Build Mathematical Virtues, Not Just Skills”. My overall view on the discipline of computer science—& thus how to approach it pedagogically—is similar to Randy Connolly’s in his Communications of the ACM article on “Why Computing Belongs Within the Social Sciences”. As Mayank Varia likes to say, "cryptography is a social science masquerading as mathematics". Some courses that I would aspirationally love to teach include:
Pure Mathematics for Cryptography: Applied Abstract Algebra & Number Theory (upper-div undergrad/early grad)
Undergrad pre-reqs: Discrete Math, Abstract Algebra I
TCS Methodology: The Computational Lens & Algorithmic Thinking (upper-div undergrad/early grad)
Undergrad pre-reqs: Discrete Math, Algorithms
Public-Interest TCS Clinic: Bridging Theory & Practice for the Public Good (upper-div undergrad/grad)
Undergrad pre-reqs: Algorithms, 1 additional upper-div TCS course
Human-Centered Cryptography: Theoretical & Applied Cryptography in Societal Contexts (advanced undergrad/grad)
Pre-reqs: Grad Cryptography OR Undergrad Computer Security/Cryptography/Complexity Theory, Grad Computer Security/Complexity Theory
Science, Technology, & Society Studies for Theoretical Computer Scientists literature seminar (grad)
Grad pre-reqs: Demonstrated interest in the humanities & interpretive social sciences
What Comes After Critique: Multidisciplinary Critique as a Generative Research Practice methodology seminar (grad)
Grad pre-reqs: 1 advanced humanities or interpretive social sciences course
If you know of any similar existing courses please let me know!
In Spring 2023, I was a Graduate Student Instructor for CS 170, the introductory undergrad Algorithms course at UC Berkeley.
In undergrad, I was a Grutor (grader and tutor) for the introductory undergrad Computability & Logic course as well as for the advanced topics undergrad Computability & Computational Complexity course at Harvey Mudd College.