Relevant Coursework

Current

CS 410: Compiler Techniques

This course explores the basic problems in the translation of programming languages focusing on theory and common implementation techniques for compiling traditional block structured programming languages to produce assembly or object code for typical machines.

CS 345: Databases

Provides a comprehensive introduction to the use of data management systems within the context of various applications

CS 311: Introduction to Algorithms

Introduction to algorithms in a variety of areas of interest, such as sorting, searching, string-processing, and graph algorithms.

Previous

CS 325: Human Computer Interaction

Examine the important problems in Usability, Human Computer Interaction, User Interfaces and Human Centered Computing.

CS 240: Reasoning Under Uncertainty

Development of mathematical reasoning skills for problems that involve uncertainty.

CS 230: Computer Systems Principles

Study the scientific principles behind the construction of high-performance, scalable systems. The course begins with a discussion of C language, and moves up the stack from there to the features of modern architectures, assembly languages, and operating system services such as I/O and synchronization.

CS 220: Programming Methodology

Designing, implementing, testing and modifying larger programs, including: use of integrated design environments, design strategies and patterns, testing, working with large code bases and libraries, code refactoring, and use of debuggers and tools for version control.

CS 187: Data Structures

Learning the basic principles of designing and implementing common data structures in Java.

STAT 515: Statistics I

This courses provides a calculus based introduction to probability (an emphasis on probabilistic concepts used in statistical modeling) and the beginning of statistical inference

CS 383: Artificial Intelligence

The Course explores key concepts of artificial intelligence, including problem solving, state-space representation, heuristic search techniques, game playing, knowledge representation, logical reasoning, automated planning, reasoning under uncertainty, decision theory and machine learning.

CS 250: Introduction to Computation

Undergraduate core course in discrete mathematics and will deal with logic, elementary number theory, proof by induction, recursion on trees, search algorithms, finite state machines, and a bit of computability.

OIM 301: Introduction to Operations and Information Management

Introductory course involving management in manufacturing and service industries. Emphasis on learning the basic principles, using MS EXCEL, and Project Management.