I teach courses and create materials for programming, data science, and cognitive science.

Teaching Materials

Quick links to teaching materials that I have (co-) developed:


The following are full, undergraduate level, courses that I have worked on.

COGS18: Introduction to Python

I developed the introductory programming course ‘COGS18: Introduction to Python’ for the Cognitive Science department of UC San Diego, which I taught in Fall of 2018. The class is designed as a hands-on programming course to introduce cognitive science students to using the Python programming language. This course us now taught and developed by Professor Shannon Ellis.

Materials for the course are available on Github. These materials are also hosted on a course website for students in the class, as well as on a public facing website.

COGS108: Data Science in Practice

I worked on and developed materials for the course ‘COGS108: Data Science in Practice’, a hands on class working through introductory data science using the Python programming language, for the Cognitive Science department of UC San Diego. This course was created by Professor Bradley Voytek.

Materials for this course are available on Github, and are also hosted on a public facing website. We also described the goals and design of this course in this paper.

Other Teaching Experience

The following are short courses and teaching programs that I have participated in.

Clubes de Ciencia Mexico


Clubes de Ciencia is a program that offers hands-on, research focused, science based short courses in Mexico, taught by a combination of local and US-based instructors. These courses are offered to local undergraduate and high school students who are interested in learning more about scientific research.

In 2017, I taught a Clubes course called ‘Bots on the Brain’, in Monterrey, Mexico. In this course, we investigated brain-computer interfaces and the interface between robotics and neuroscience. In 2019, I returned to Clubes, co-teaching a course with Antonio Garcia called ‘Inteligencia Biológica y Artificial: ¿amigos o enemigos?’ (Biological and Artificial Intelligence - Friend or Foe), in Ensenada, Mexico. In this course, we explored the similarities and differences between biological and artificial neural networks. Materials for this course are available here.

Working with Clubes has been a fantastic experience, and I highly recommend the program. I wrote more about my experiences here.

Academic Connections: Introduction to Cognitive Science


With co-instructor Eric Leonardis, we created a class for the Academic Connections program at UC San Diego, which offers intensive (75 hours of class over 3 weeks), undergraduate-level courses to advanced high school students. We taught this class together for three iterations, from 2015 to 2017. Details on this course, which continues to be taught, are available here.