Lecturer IV in Computer Science and Engineering
University of Michigan
Computer Science & Engineering
4624 Beyster Building
2260 Hayward Street
Ann Arbor, MI 48109-2121
ENG 100-650: Gaming for the Greater Good
During the first part of the course, each student will learn fundamental programming skills, such as language syntax, sequential and concurrent execution, iterative and alternative commands, and event-driven execution. These lessons will be taught in the context of 1-2 Object-Oriented languages. In the second part of the course, each team of students will create a computer game using their newly acquired programming skills. The game, however, must have some form of social relevance. As examples, the game might help a child with a cognitive or physical disability such as Cerebral Palsy or Autism Spectrum Disorder. The overall goal of the course is to integrate the games that are developed into the therapy and assessment laboratories at C.S. Mott Children’s Hospital.
More info: http://eng100.engin.umich.edu/list/sec650/
EECS 481: Software Engineering
Pragmatic aspects of the production of software systems, dealing with structuring principles, design methodologies and informal analysis. Emphasis is given to development of large, complex software systems. A term project is usually required.
EECS 183: Elementary Programming Concepts
EECS 203: Discrete Math
EECS 270: Computer Organization
EECS 280: Programming and Data Structures
EECS 281: Data Structures and Algorithms
EECS 496: Major Design Experience, Professionalism
EECS 497: Major Design Projects
Projects from some of my recent courses have been highlighted in the media. Here are some examples.