* = Currently Enrolled
CSCI 112 - Programming with C I:
"Introduces imperative programming and the C standard library.
Course covers pointers, memory management and structures"
CSCI 127 - Joy and Beauty of Data:
"Provides a gentle introduction to the exciting world of big
data and data science. Students expand their ability to solve problems with Python by learning to deploy lists,
files, dictionaries and object-oriented programming. Data science libraries are introduced that enable data to
be manipulated and displayed."
CSCI 132 - Basic Data Structures and Algorithms:
"An examination of advanced Java and basic data structures and
their application in problem solving. Data structures include stacks, queues and lists. An introduction to algorithms
employing the data structures to solve various problems including searching and sorting, and recursion. Understanding and using Java class libraries."
CSCI 215 - Social & Ethical Issues in Computer Science:
"Social and ethical issues as they relate to computing, including privacy,
freedom of the press, lack of diversity, reliability and safety, and artificial intelligence."
CSCI 232 - Data Structures and Algorithms:
"Advanced data structures and programming techniques and their
application. Topics include: trees, balanced trees, graphs, dictionaries, hash tables, heaps. Examines the efficiency
and correctness of algorithms. The laboratory uses Java."
CSCI 246 - Discrete Structures:
"This course covers logic, discrete probability, recurrence relations,
Boolean algebra, sets, relations, counting, functions, maps, Big-O notation, proof techniques including induction, and proof by contradiction"
CSCI 305 - Concepts/Programming Languages:
"An examination of the basic concepts of programming languages and several programming
paradigms. Concepts will include some of: abstraction mechanisms, static and dynamic typing, scope, syntax vs. semantics, closures, and algebraic datatypes. Paradigms examined
may include functional, imperative, logic, and object-oriented."
CSCI 447 - Machine Learning*:
"An introduction and survey of fundamental machine learning models and algorithms, including
non-parametric methods, linear and nonlinear models, decision trees, neural networks, and population-based algorithms."
CSCI 455 - Embedded Systems: Robotics:
"The basic tools and techniques of embedded systems using robotics as a platform. Student teams
will build an autonomous mobile robot, and learn to program it to perform increasingly sophisticated behaviors. Besides providing an introduction to autonomous mobile robot technologies,
the students also learn key concepts of mechanics, electronics, programming techniques, and systems design and integration."
CSCI 491 - Data Visualization:
"One of the key skills that a data scientist must develop is the ability to tell a compelling story through data
visualizations. Students will learn the fundamentals of information visualization, exploratory data analysis, and how to utilize different visualization tools."
CSCI 494 - Seminar: Mobile App Development:
"In this online seminar, you will be introduced to technologies that are commonly
used in industry such as git, Docker and Kubernetes."
CSCI 494 - Seminar: Industry Methods:
"Learn the basics of Android mobile app development."
ESOF 322 - Software Engineering*:
"Software lifecycles, Unified Modeling Language, design patterns, software engineering
standards, requirements analysis, development issues, efficiency tools, verification and validation, configuration management, testing and maintenance."
M 221 - Introduction to Linear Algebra:
"Matrix algebra, systems of linear equations, determinants, vector algebra and
geometry in Euclidean 3-space, eigenvalues, eigenvectors."
M 273 - Multivariable Calculus*:
"Topics in two and three dimensional geometry. Manipulation and application of vectors.
Functions of several variables, contour maps, graphs, partial derivatives, gradients, double and triple integration, vector fields, line integrals, surface integrals, Green's
Theorem, Stokes' Theorem, the Divergence Theorem."
STAT 216 - Introduction to Statistics:
"Traditional and resistant estimators of location and spread, fundamentals of inference using
randomization and classical methods, confidence intervals, and tests of hypotheses."
STAT 337 - Intermediate Statistics with Introduction to Statistical Computing*:
"One- and two-sample tests and associated confidence
intervals for means and proportions (and analogous randomization- and resampling-based techniques); One- and Two-way analysis of variance; F-tests, correlation, simple and
multiple regression, contingency tables. Introduction to statistical computing, reproducible research, and analysis using a modern scripting language; emphasis on connecting
study design to scope of inference in the context of authentic studies and understanding or reproducing statistical results as used in journal articles."