Teaching
Teaching Experience
Professor, Department of Computer Science, Worcester Polytechnic Institute. 2002-present
Teaching Assistant, Human Computer Interaction, Carnegie Mellon University. 2001
Math and Science Teacher, Ephraim Curtis Middle School, Sudbury Public Schools. 1998-1999
Teaching Assistant, Data Structures (1996), Artificial Intelligence (1997), Human Computer Interaction (2001), Carnegie Mellon University.
Math and Science Teacher, Holy Spirit Catholic School, Baltimore, Maryland. 1994-1995
Science Teacher, Booker T. Washington Middle School, Baltimore Public Schools, Baltimore, Maryland. Teach For America. 1993-1994
Amherst College, Students for Educational Equality. Developed a one-on-one tutoring program pairing Amherst College students with inner-city children in Holyoke, Massachusetts. 1989-1993
For over a decade Dr Heffernan has been teaching one undergraduate AI class each year and one graduate course in his area.
Undergraduate Courses Taught at WPI
2002 Fall B-Term: CS 4341: Artificial Intelligence. (52 students)
2005 Spring D-Term: CS 4341: Artificial Intelligence. (80 students)
2006 Fall A-Term: CS 4341: Artificial Intelligence. (40 students)
2007 Spring D-Term: CS 2102: Object Oriented Design (the first Java class students take at WPI). (69 students)
2008 Spring D-Term: CS 2102: Object Oriented Design (the first Java class students take at WPI). (64 students)
2009 Fall B-Term: CS 4341: Artificial Intelligence. (48 students)
2011 Spring D-Term: CS 4341: Artificial Intelligence. (81 students)
2012 Fall B-Term: CS 4341: Artificial Intelligence. (20 students)
2013 Fall A-Term: CS4341: Artificial Intelligence. (34 students)
2015 Fall A-Term: CS4341: Artificial Intelligence. (54 students)
2016 Spring C-Term: CS4341: Artificial Intelligence. (57 students)
2018 Fall A-Term: CS4341: Artificial Intelligence. (35 students)
2019 Fall A-Term: CS4341: Artificial Intelligence. (37 students)
Please view a full list of IQPs and MQPs.
Graduate Courses Taught at WPI
For over a decade Dr. Heffernan has been teaching one undergraduate AI class and one graduate course in his area. At the graduate level he rotates between the following three courses.
Artificial Intelligence for Adaptive Educational Technology (CS 568). (Last taught Fall 2021, Spring 2019)
User Modeling, which focuses on educational data mining (CS 565). (Last taught Fall 2022, and last taught Fall 2020)
Special Topics: Online Learning Infrastructures (CS 525). (Available now in Fall 2023, Fall 2020)