It is my belief that all willing students are capable of learning. Therefore, if a student puts forth the necessary effort to learn a concept, I believe the instructor’s role is to support their acquisition of presented material. In my experience teaching computer science courses, I have found that a successful classroom includes the following elements: fostering logical thinking, encouraging group work, emphasizing hands-on learning, and allowing the flexibility to adapt the class based on student feedback.

Classes I have taught

  • Spring2013-2019

    CIS 4930/6930 - 3D Auditory Environments

    In this course, students understand and appreciate the role of audio in human-computer interaction, understand the physiological and computational aspects of rendering accurate spatial audio, understand the tradeoffs and challenges when designing 3D audio applications, design and develop a 3D audio application, learn and discuss current trends in 3D audio research and development, and develop presentation and writing skills, as evidenced through completed project milestones

  • Fall2017-2018

    CGS 3063 - Computers and Modern Society

    Upon completion of this course, students understand how advances in technology have significantly shaped the way we live, work, and interact, become familiar with the impact new technologies have had on the role of citizens in a global society, and the ethical choices that must be made, discover methods in which to use technology to understand society, understand the evolution of technology-oriented workplaces and the changing opportunities, Understand the influence of technology on our culture, on social interaction, and the communication patterns of men and women, learn effective technical communication of ideas and concepts, learn how to use data to make decisions

  • Fall2013, 2015, 2016

    COP 3502 - Programming Fundamentals for CIS Majors I

    Upon completion of this course, students understand programming and the unique features of Java, understand programs written in JAVA language, design and implement programs using JAVA language, use a compiler to convert JAVA code into an executable file, run corresponding code to get results, and identify and fix syntax and semantic errors in JAVA code.

  • Spring2012

    CSC 3400 - Human-Computer Interaction

    Upon completion of this course, students learn good interface design principles, learn concepts and strategies for making design decisions, learn human factors involved when designing for different kinds of interface users (elderly, children, those of different cultures), learn to design for varying interface types (touch-screen, haptic, auditory)