A full list of courses I have taught is below. Many of these courses have had different course numbers, including the CS 451 and 4501 numbering for special topics; only the current course numberings are listed here.
If you are interested in registering for CS 2150, but are having problems doing so, please see this page.
- CS 1110: Introduction to Computing (5 semesters: spring '05, fall '05, spring '06, fall '06, spring '07)
- CS 1111: Introduction to Computing, advanced section (1 semester: fall '04)
- CS 2102: Discrete Math (3 semesters: fall '04, spring '05, spring '07)
- CS 2150: Program and Data Representation (20 semesters: every fall and spring semester from fall '07 through spring '17)
- CS 4102: Algorithms (2 semesters: fall '10, spring '11)
- CS 4240: Object Oriented Design (3 semesters: spring '06, spring '08, fall '09)
- CS 4501: Advanced Algorithms and Implementations (1 semester: fall '11)
- CS 4610: Programming Languages (1 semester: fall '05)
- CS 4630: Dark Arts (8 semesters: spring '09, summer '10, summer '11, spring '12, summer '12, summer '16, summer '17, fall '17)
- CS 4730: Computer Game Design (3 semesters: fall '08, spring '10, fall '11)
- CS 4810: Computer Graphics (3 semesters: fall '06, fall '07, summer '09)
- CS 4970: Capstone Practicum I, a.k.a. Service Learning Practicum (7 semesters: spring '12, and each fall from 2012 to 2017)
- CS 4971: Capstone Practicum II, a.k.a. Service Learning Practicum (4 semesters: each spring from 2013 to 2016)
- ENGR 3580: The Science Of Beer Brewing (3 semesters: spring '08, spring '09, spring '10)
- ENGR 3580: Wine Engineering (2 semesters: fall '07, fall '08)
I maintain the Computing undergraduate handbook, which contains all of the requirements for the three computing degrees: BS CS, BA CS, and BS CpE, as well as the minor.
I am the advisor of the local chapter of the Association for Computing Machinery (ACM), the coach for UVa's teams in the International Collegiate Programming Competition (ICPC), and the advisor for the UVa High School Programming Contest (HSPC). Our ICPC team has qualified for the world finals in 5 of the last 7 years, and our HSPC group will be hosting it's 5th annual High School Programming Contest this spring of 2015. Read more.
In the spring of 2005, I took part in a Teaching Resource Center workshop that focused on the creation of a teaching portfolio. The result is here. The course materials have generally not been updated since then, though.
I've won one or two. I have the list here somewhere...
I believe that who fills out a teaching evaluations should be kept anonymous, and then the entire evaulation made public, and I do so with mine. I aim to include all of my course evaluations, not just a few selected "good" ones. Occasionally, however, some students submitted comments that were not appropriate for public viewing (due to inappropriate language, or mentioning themselves or somebody else, evaluating a teaching assistant, etc.). These parts of the comments have been redacted, and clearly labeled as such. Any responses that are not about me are also redacted -- this is particularly true when, in my CS 2150 courses, I ask them to comment on the teaching assistants; all of those answers have been redacted. Some of my evaluations are awaiting redaction (I just haven't gotten around to it yet), which is why they are not available. They will be there eventually...
- Spring 2016: CS 2150 lecture section 001 and labs 101, 102, 103, 104, 105, and 106; CS 4971: SLP
- Fall 2015: working on redacting them...
- Spring 2015: CS 2150 lecture section 001 and labs 101, 102, 103, 104, and 105; CS 4971: SLP
- Fall 2014: CS 2150 lecture section 001 and labs 102, 103, 104, 105; CS 4970: SLP
- Spring 2014: still to be redacted...
- Fall 2013: CS 2150 lecture section 001 (section 002 was taught by Mark Floryan); CS 4970: SLP
- Spring 2013: still to be redacted...
- Fall 2012: CS 2150 lecture sections 001 and 002, and lab sections 101, 102, 103, & 104; CS 4501 (SLP)
- Spring 2012: still to be redacted...
- Fall 2011: still to be redacted...
- Summer 2011: CS 4630 (Defense Against the Dark Arts)
- Spring 2011: CS 2150 (Program and Data Representation) lecture sections 001 and 002, and lab sections 101, 102, 103, & 104; CS 4102 (Algorithms)
- Fall 2010: still to be redacted...
- Spring 2010: still to be redacted...
Course evaluations from fall 2009 and earlier can be found on my teaching portfolio page.