Teaching
This page contains a variety of information about my teaching. This is a growing page in the sense that the information is updated on a regular basis.
Courses: 2007 - 2008: Spring Term
-
Operating Systems (CSSE 332)
Students learn fundamental concepts of modern operating systems by studying how and why operating systems have evolved. Topics include CPU scheduling, process synchronization, memory management, file systems, I/O systems, privacy and security, and performance evaluation. Students implement parts of an operating system as a means of exploring the details of some of these topics.
Course Information | Course Schedule -
Introduction to Software Development (CSSE 120)
An introduction to procedural and object-oriented programming with an emphasis on problem solving. Students will solve problems by developing software in both an interpreted language (Python) and a compiled language (C). Problems may include visualizing scientific or commercial data, interfacing with external hardware such as robots, or solving numeric problems from a variety of engineering disciplines. Procedural programming concepts covered include data types, variables, control structures, arrays, and data I/O. Object-oriented programming concepts covered include object creation and use, object interaction, and the design of simple classes. Software engineering concepts covered include testing, incremental development, understanding requirements, and teamwork.
Course Information | Course Schedule
Courses: 2007 - 2008: Winter Term
-
Operating Systems (CSSE 332)
Students learn fundamental concepts of modern operating systems by studying how and why operating systems have evolved. Topics include CPU scheduling, process synchronization, memory management, file systems, I/O systems, privacy and security, and performance evaluation. Students implement parts of an operating system as a means of exploring the details of some of these topics.
Course Information -
Introduction to Software Development (CSSE 120)
An introduction to procedural and object-oriented programming with an emphasis on problem solving. Students will solve problems by developing software in both an interpreted language (Python) and a compiled language (C). Problems may include visualizing scientific or commercial data, interfacing with external hardware such as robots, or solving numeric problems from a variety of engineering disciplines. Procedural programming concepts covered include data types, variables, control structures, arrays, and data I/O. Object-oriented programming concepts covered include object creation and use, object interaction, and the design of simple classes. Software engineering concepts covered include testing, incremental development, understanding requirements, and teamwork.
Course Information | Course Schedule
Courses: 2007 - 2008: Fall Term
-
Introduction to Software Development (CSSE 120)
An introduction to procedural and object-oriented programming with an emphasis on problem solving. Students will solve problems by developing software in both an interpreted language (Python) and a compiled language (C). Problems may include visualizing scientific or commercial data, interfacing with external hardware such as robots, or solving numeric problems from a variety of engineering disciplines. Procedural programming concepts covered include data types, variables, control structures, arrays, and data I/O. Object-oriented programming concepts covered include object creation and use, object interaction, and the design of simple classes. Software engineering concepts covered include testing, incremental development, understanding requirements, and teamwork.
Course Information | Course Schedule