I have taught the freshman-level programming courses (CS 120, CS 130) regularly for most of my time at ACU. I enjoy teaching the freshmen CS majors, getting to know them and helping them to establish this important foundation for their education. I have found it beneficial to build relationships with students as freshmen and then to build on those relationships as they progress through the degree.
I also enjoy teaching upper-level computer science theory courses, especially Design & Analysis of Algorithms (CS 332) and Theory of Computation (CS 365). The theory courses embody my own interest in computer science and I enjoy teaching others these principles.
This listing specifies all courses that I have taught in the School of Information Technology and Computing. I have also taught several Honors colloquia, as described in my collegiality section and in summer 2017 I taught two special topics courses in Oxford, one of which has now been added to the catalog as a recurring course.
CS 120 - Programming I
Fall 2009, Spring 2010, Fall 2010, Spring 2011, Fall 2011, Spring 2012, Fall 2012, Spring 2013, Fall 2013, Fall 2014, Fall 2015, Fall 2016, Fall 2017, Fall 2018
CS 130 - Programming II: Data Structures
Spring 2011, Fall 2011, Spring 2012, Fall 2012, Spring 2013, Fall 2013, Spring 2014, Spring 2015, Fall 2015, Spring 2016, Spring 2017, Spring 2018
CS 332 - Design and Analysis of Algorithms
Fall 2011, Fall 2012, Fall 2013, Fall 2014, Fall 2015, Fall 2016, Fall 2017, Fall 2018
CS 352 - Programming Languages
Spring 2011, Spring 2013, Spring 2014, Spring 2015, Spring 2017
CS 355 - Compiler Construction
Fall 2014
CS 365 - Theory of Computation
Spring 2013, Spring 2014, Spring 2016, Spring 2018
CS 374 - Software Engineering
Fall 2010
CS 495 - Senior Seminar
Spring 2010
IT 310 - Introduction to Computer and Information Security
Spring 2010, Fall 2010
IT 620 - Information Assurance and Control
Fall 2009, Summer 2011