Teaching

For current office hours, please see my schedule.



Current Courses (Spring 2014)

Teaching History

  • CSCI 370: Data Communication Systems and Networks (Fall 2013) [Syllabus] [Exercises] [Lectures]
  • CSCI 385: Introduction to Information Systems Security (Fall 2013) [Syllabus] [Exercises] [Lectures]
  • CSCI 416/516: Linux System Administration (Fall 2013) [Syllabus] [Exercises] [Lectures]
  • CSCI 135: Introduction to Programming (Spring 2013)
  • CSCI 415/515: Systems Administration (Spring 2013)
  • CSCI 434/534: Digital Forensics (Spring 2013)
  • CSCI 356: Operating Systems (Fall 2012)
  • CSCI 370: Data Communication Systems and Networks (Fall 2012)
  • CSCI 416/516: Linux System Administration (Fall 2012)
  • CSCI 330: Systems Analysis & Software Engineering I (Spring 2011)
  • CSCI 434/534: Digital Forensics (Spring 2011)
  • CSCI 490: Software Engineering II (Spring 2011)
  • CSCI 330: Systems Analysis & Software Engineering I (Fall 2011)
  • CSCI 356: Operating Systems (Fall 2011)
  • CSCI 140L: Algorithmic Design I Lab (Spring 2011)
  • CSCI 415: Systems Administration (Spring 2011)
  • CSCI 490: Software Engineering II (Spring 2011)
  • CSCI 130: Introduction to Computer Science (Fall 2010)
  • CSCI 130L: Programming Boot Camp (Fall 2010)
  • CSCI 410: Operating Systems (Fall 2010)
  • CpSc 362: Distributed and Cluster Computing (Spring 2010)
  • CpSc 362: Distributed and Cluster Computing (Spring 2009)
  • CpSc 881: Cyberinfrastructure (Fall 2008)
  • CpSc 362: Distributed and Cluster Computing (Spring 2008)
  • CpSc 481/681: Open-Source Python Development (Spring 2008)
  • CpSc 362: Distributed and Cluster Computing (Fall 2007)
  • CpSc L215: Software Tools and Techniques Lab (Fall 2006 and Spring 2007)
  • FOR 893: Python for GIS Applications (Fall 2004)