Hi! I'm an Assistant Professor here at NMU. My current primary research interest is holographic algorithms. Other interests include algorithms, computational complexity, software engineering, graphics, and pretty much any kind of mathematics.
This is an intro course to HTML and CSS. It is primarily intended for non-majors, although some CS students take the course and some non-majors decide to change to CS after taking it.
This is an intro course in programming (using Java). This is the first course most CS majors take, but many non-majors also find it interesting and broadens their perspectives on computers and computation.
This course is a continuation of CS120. Incoming CS majors with significant programming backgrounds sometimes take this as their first CS course. We focus on topics such as string handling, algorithm analysis, recursion, data structures, interfaces, inheritance, and threading, all the while reinforcing CS120 topics and further honing programming skills.
This is an introduction to C++, directed towards students with 2 semesters of programming in Java.
This course covers basic data structures, while giving students an opportunity to apply their C++ skills.
This is an upper-level course in algorithm design and analysis, i.e. how to design efficient algorithms and figure out how much time and/or space they need to run. Topics include asymptotic notation, greedy algorithms, divide-and-conquer, dynamic programming, and NP-completeness.
This is an upper-level course in advanced networking and parallel computing
In this course, we study strategies for writing computer programs that improve with experience. The basic theory of machine learning is covered, including concepts such as hypothesis space, bias, overfitting, training sets, and testing sets. These concepts will be applied to specific learning techniques, such as decision trees, bayesian classifiers, belief networks, instance-based learning, neural networks, and support vector machines (selection depending somewhat on time and interests of the class).
Students can generate unofficial degree evaluations through mynmu.nmu.edu. This is highly recommended as a tool to help plan your progress.