Course Descriptions
CS/DASC 125 - Introduction to Computer and Data Sciences
Computer science, broadly, studies how to solve problems using computers. Data science is a related field that focuses on acquiring, cleaning, and exploring data, via visualization and statistical analysis, to aid decision making. This course introduces the fundamental skill of computer science, programming, using data science examples and applications. Students may not take CS 126 or CS 127 for credit after successful completion of CS/DASC 125. No prerequisites. Offered each fall.
CS 128 - Computer Science II
Introduction to object-oriented programming, data structures, and algorithmic problem solving. All concepts will be practiced through programming in Python. Students will learn the conceptual foundation for a given data structure, use it to solve a real-life problem, then analyze the time complexity in comparison to other solutions. In this course, data structures are treated as "black boxes" for the purposes of implementation. Has a lab component. Prerequisites: CS 125/DASC 125, CS 126, or CS 127. Offered each term.
ART 141 - Graphic Design I
Introduction to visual communication, aesthetic theory, and computer graphics tools and techniques. Explores graphic design as a means of communication, artistic expression, and organization of information. Critiques, group discussions, research and information gathering assignments, lectures and demonstrations complement studio work. No prerequisites. Offered every semester.
CS/MATH 135 - Applications of Sets, Logic, and Recursion
Introduction to functional programming and discrete mathematics. Sets, functions, and relations. Basic logic, including formal derivations in propositional and predicate logic. Recursion and mathematical induction. Programming material: Data types and structures, list-processing, functional and recursive programming. No prerequisites. Offered each spring.
MATH 215 - Linear Algebra
Vector spaces, linear mappings, determinants, matrices, eigenvalues, geometric applications. No prerequisites. Offered every semester.
CS/PHIL 222 - Ethics, Values, and Issues in Cybertechnology
An overview of the ethical issues that shape modern technology, including such topics as free expression and content control, intellectual property, privacy and information access, crime and security, and concepts, methodology, and code of cyberethics. Theory and actual cases will be analyzed in readings, discussion, and written work. No prerequisites. Offered annually.
DASC 225 - Data Analytics with Visualization
This course introduces advanced concepts and tools relevant to data cleaning, organization, and transformation. It further develops skills and knowledge relevant to identifying and applying statistical tools to answer data-driven questions and provides advanced treatment of ethical issues involved in data analytical work. Students are also exposed to specific software commonly used in data analytics, such as databases for storing and retrieving data and software for creating static and interactive reports from analysis results. Prerequisites: CS/DASC 125 and one of the following: BIOL 209, ECON 227, MATH 141, MATH 325, or PSYC 227. Offered every other year.
CS 314 - Database Systems
Introduction to the relational and semi-structured database models. Theoretical concepts include relational algebra and calculus, logical and physical database design, normalization, database security and integrity, data definition and data manipulation languages. Programming topics: database creation, modification, and querying using XQuery, MySQL and PHP. Prerequisites: CS 128 with a C- or above and Math 135. Offered alternate years.
CS/DASC 377 - Applied Data Analysis
This course further develops the programming, mathematical, and statistical skills required for the application of data science tools to data analysis, data visualization, and decision making. This course includes a methodology/writing component in which students develop a draft research proposal for a capstone project. Prerequisites: CS/DASC 125, CS 126, or CS 127; CS/MATH 136 or DASC 225; one of the following: BIOL 323, ECON 227, MATH 141, MATH 325, or PSYC 227. Offered alternate years.
CS 387 - Deep Learning
Deep learning (machine learning using large neural networks) has proven to be effective at a number of difficult tasks, with active research ongoing. Student will study mathematical foundations, implementation of neural network optimization in Python, and a number of applications of deep learning including machine vision and natural language processing. Prerequisites: CS128 with a C- or above and CS/MATH 136 or CS 377. Offered alternate years.
DASC 395 - Directed Study, Data Science Capstone
Individual directed study to complete a capstone project. Requires an approved proposal for a substantial project that applies data science techniques to gather, clean, analyze, visualize, and make inferences with data. Project culminates in written and oral reports. Prerequisites: CS/DASC 377 and approval of the program director. Offered as needed.
MATH 403 - Computational Data Analysis
This course introduces regression and time series methods, which are statistical modeling techniques commonly used in practice for the purpose of data analysis. It also includes some selected topics in statistical computations: generation of random numbers, statistical computing, statistical graphics and Monte Carlo simulations techniques. The course introduces and uses the R statistical programming language. Prerequisites: MATH 325 or one of the following: BIO 323, ECON 227, or PSYC 227. Offered fall semester of even-numbered years.