Spring 2022:

  • CS 169L: Software Engineering Team Project. Student teams work with real customers (nonprofits & campus units) to build SaaS. Requires CS169A or equivalent experience, as characterized by its textbook Engineering Software as a Service.

  • CS 375: Teaching Techniques for CS. Pedagogy, classroom climate, DEIBJ, and in general being a successful student teacher.

Fall 2021:

Spring 2021:

  • CS 169L Software Engineering Team Project (with Prof. Michael Ball), Wed 12:00-13:00, online
  • CS 399-006 (Supervised Teaching), class# 14225
  • CS 299-031 (Graduate student research), class# 11431
  • CS 199-024 (Undergraduate research), class# 11734
  • CS 99-005 (Undergraduate research), class# 16454

Fall 2020:

Spring 2019: 

  • CS 169 Software Engineering, Tue/Thu 2-3:30, 2060 VLSB
  • CS 375 Teaching Techniques for CS, Mon 10am-noon (through end of March), 101 Life Sciences Addition
  • Office hours: Monday 1-2pm, 732 Soda Hall, or by appointment (email me), except travel days (see at right)

Spring 2018: CS 375 Teaching Techniques for CS (with Randy Katz), Mondays 4-6pm, Woz

  • Undergraduates interested in CS375: CS375 as a graduate course requires permission codes for undergraduate students to be able to enroll.  Undergraduates hired as (U)GSIs for CS/EECS classes should contact Cindy Conners to enroll. After all CS/EECS (U)GSIs can be accommodated in CS375/EE375, other undergrads can sign up closer to the beginning of the semester.  Please consider signing up for CS370 instead, as it is better set up to handle larger enrollments.

Always available online at edX: Agile Development Using Ruby on Rails 

Previous courses

  • CS169: Fall 2017, Fall 2016, Spring 2016, Spring 2015, Fall 2013, Fall 2012, Spring 2012, Fall 2010. Often co-taught with Prof. David Patterson, until Spring 2016.
  • CS375: Spring 2018, Spring 2016
  • Fall 2013: Autograding and online education technology (with Prof. John Canny)