Philosophy of Teaching

In computer science, students master a huge amount of knowledge from low-level details of computer hardware and machine code to large architectural concepts and patterns. Calculus, physics, statistical methods, discrete mathematics, symbolic logic, reasoning, and natural language are relevant skills for the student who wants to be productive and innovative in the workforce.

More than a set of skills, the student must learn to be a critical and creative thinker, one who sees problems and challenges as positive opportunities to better the world in which they live.

It is my philosophy that the success of a student’s academic career is shaped by three components: mastering computer science fundamentals; engaging critical thinking and creativity problem solving to explore new ideas and solutions; and pursuing challenges in order to create positive changes and solutions.

Courses Taught:

  • Montana State University CS 355: Programming Languages
  • Montana State University CS 455: Image Processing
  • Montana State University CS 535: Distributed Computing