Academic Catalog

Digital and Computational St. (DCS)

DCS 105  Calling Bull: Data Literacy and Information Science  (1 Credit)
Our world is rife with misinformation. This course is designed to hone digital citizenship skills. It is about "calling bullshit": spotting, dissecting, and publicly refuting false claims and inferences based on quantitative, statistical, and computational analysis of data. Students explore case studies in policy and science and dissect the “who, what, where, when, why, and how” of bullshit propagation. Examples include election misinformation, interpreting health risk, facial recognition algorithms, and science communication. Students practice visualizing data; interpreting scientific claims; and spotting misinformation, fake news, causal fallacies, and statistical traps. In doing so, the course offers an introduction to programming with R for data analysis and visualization.

Modes of Inquiry: [QF], [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Data Science & Analysis), (DCS: Praxis)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Carrie Eaton
Instructor Permission Required: No
DCS 109D  Introduction to Computer Science for Data Analysis  (1 Credit)
This course is an introduction to computational thinking and problem solving via programming, designed for students interested in addressing problems in brain research, as well as experimental science more broadly. Students learn fundamentals of computer programming using Python, including basic data structures, flow control structures, functions, recursion, elementary object-oriented programming, and file I/O, as well as discussion of higher-level concepts including abstraction, modularity, reuse, testing, and debugging. By implementing programs in contexts such as image processing, neural networks, and the analysis of electrical brain activity, students develop an understanding of computational problem solving and gain experience in broadly applicable software development for data analysis. Not open to students who have earned credit for DCS 109R, 109S, or 109T.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): None
Instructor: Jason Castro
Instructor Permission Required: No
DCS 109R  Introduction to Computer Science Using Robots  (1 Credit)
This course introduces computer science, computational thinking, and problem-solving in the context of robots. Students learn about computing in terms of the representation and manipulation of data, fundamental algorithms, and societal implications of computing. They will learn the fundamentals of computer programming using Python, including conditional statements, iteration, abstraction, testing, modularity, and debugging. Students will gain an understanding of computational problem solving through implementing programs to control robots and solve robotics problems. Not open to students who have earned credit for DCS 109D, 109S, or 109T.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Andy Elliot Ricci
Instructor Permission Required: No
DCS 109S  Introduction to Computer Science for Software Development  (1 Credit)
This course (formerly DCS 109) is an introduction to computational thinking and problem solving via an introduction to computer programming, designed for students interested in broadly applying computing and software solutions across a range of disciplines. It considers computing as a discipline of study, exploring the representation and manipulation of data, fundamental algorithms, efficiency, and the limits of computing. Students learn fundamentals of computer programming using Python, including basic data structures, flow control structures, functions, recursion, elementary object-oriented programming, and file I/O, as well as discussion of higher-level concepts including abstraction, modularity, reuse, testing, and debugging. By implementing programs in contexts such as image processing, voting algorithms, DNA sequence analysis, and simple games, students develop an understanding of computational problem solving and gain experience in broadly applicable software development skills. Not open to students who have received credit for DCS 109D, 109R, or 109T.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Barry Lawson
Instructor Permission Required: No
DCS 109T  Introduction to Computer Science for Text Analysis  (1 Credit)
This course (formerly DCS 111) is an introduction to computational thinking and problem solving via programming, designed for students interested in applying computation to the humanities and text analysis. It frames computation as a process of designing systematic solutions to problems; implementing, testing, and verifying those solutions; and making the solutions accessible to other scholars and investigators. Students learn fundamentals of computer programming using Python, including basic data structures, flow control structures, functions, recursion, and elementary object-oriented programming, as well as discussion of higher-level concepts including abstraction, modularity, reuse, testing, and debugging. By the end of the semester, students develop an understanding of computational problem solving and gain experience implementing that problem solving in the context of text analysis. Not open to students who have received credit for DCS 109D, 109R, or 109S.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Anelise Shrout
Instructor Permission Required: No
DCS 117  Introduction to Data Science: Data Visualization  (1 Credit)
This course offers an introduction to data science through data visualization. Through hands-on assignments, students will develop their skills in data cleaning, analysis, and visualization using the R programming language and Github for version control. In the course students will learn to calculate and describe data using descriptive statistics and how to create a range of data visualizations to explore variation and covariation in data. Students will also learn to critique and reflect on data visualizations encountered in everyday life. No prior experience in data science or programming is necessary, making this course accessible to all students interested in exploring the dynamic field of data science. Not open to students who have received credit for DCS 210.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Data Science & Analysis)
Class Restriction: None
Cross-listed Course(s): MATH 117
Instructor: Laurie Baker
Instructor Permission Required: No
DCS 170  Introduction to Digital Media  (1 Credit)
This introductory course explores the ever-evolving world of digital media in the performing arts, where technology, creativity, and communities converge. Students will be trained on the holistic and collaborative process from storyboarding to technical execution, specifically as it relates to live entertainment. We’ll examine the history, current landscape, and emerging technologies in projection and video design.

Modes of Inquiry: [CP]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Human-Centered Design)
Class Restriction: None
Cross-listed Course(s): THEA 170
Instructor: Courtney Smith
Instructor Permission Required: No
DCS 204  Archives, Data, and Analysis  (1 Credit)
The computational humanities comprise a fast-growing and exciting field that is changing the way scholars work and think. This course provides an opportunity for students with some experience with programming to immerse themselves in semester-long projects in digital environments, moving from "analog" archives, through data structuring, and quantitative analysis, and culminating with a project that makes both the humanities and quantitative analyses legible for people from diverse backgrounds. Prerequisite(s): one 100-level digital and computational studies course.

Modes of Inquiry: [HS], [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Data Science & Analysis), (DCS: Praxis)
Class Restriction: None
Cross-listed Course(s): AMST 205
Instructor: Anelise Shrout
Instructor Permission Required: No
DCS 206  The Past, Present, and Possible Dystopian Future of Computing  (1 Credit)
In this course students examine the history, present, and possible future of computing through film and literature, focusing on questions at the intersection of computing, digital studies, and communication: Who are the stakeholders and participants in this intersectional area? What are the uses and abuses of data and computing in society? Who has the power of technology and who does not, and what are the consequences of that power? Recommended background: Prior critical-studies-oriented digital and computational studies course or similar course work in Africana, American studies, Latin American and Latinx studies and/or gender and sexuality studies.

Modes of Inquiry: [CP]
Writing Credit: [W2]
GEC(s): GEC C037
Department/Program Attribute(s): (DCS: Critical Digital St.)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Carrie Eaton
Instructor Permission Required: No
DCS 211  Computing for Insight  (1 Credit)
Building on any of the Introduction to Computer Science courses, this course explores the practical application of software composition as a bridge to other disciplines. Students continue to develop programming and problem-solving skills, with the clear purpose of providing insight to inquiry in other fields that is made possible by modern computing, software composition, and libraries. The course includes study of additional data structures and algorithms; bash scripting for system administration and task automation; data harvesting, analysis, and visualization; machine learning; version control systems; and considerations of human- and machine-efficiency. As a final course project, students design, implement, and assess a computing project of their choosing. Prerequisite(s): DCS 109D, 109R, 109S, or 109T.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Data Science & Analysis), (DCS: Praxis), (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Barry Lawson
Instructor Permission Required: No
DCS 212  Digital History Methods  (1 Credit)
Through a combination of analytical, experiential, and collaborative exercises, students merge traditional historical methods with digital tools to explore new useful methodologies for collecting, analyzing, and disseminating historical knowledge. They develop technical and theoretical proficiency within the broader field of digital humanities. They engage digital tools and resources to rethink old historical questions. They develop with new questions that can be investigated only through digital practice. They contemplate avenues for collaboration between historical research and public communities. Finally, they weigh the practical and theoretical implications of using digital history to create more inclusive scholarship.

Modes of Inquiry: [HS]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Data Science & Analysis), (DCS: Praxis), (History: Modern)
Class Restriction: None
Cross-listed Course(s): HIST 212
Instructor: Anelise Shrout
Instructor Permission Required: No
DCS 216  Computational Physics  (1 Credit)
An introduction to computational methods for simulating physical systems, this course focuses on the numerical analysis and algorithmic implementation necessary for efficient solution of integrals, derivatives, linear systems, differential equations, and optimization. While the course presents a rigorous introduction to the numerical analysis underlying these techniques, the emphasis remains on practical solutions to important physical problems. Students solve problems across the wide range of applications of computational physics including astrophysics, biological population dynamics, gravitational wave detection, urban traffic flow, and materials science. No prior experience in programming is required, though students without a technical computing background are encouraged to take PHYS s10 before enrolling. Prerequisite(s): MATH 106 and either PHYS 108 or PHYS S31. Prerequisite(s), which may be taken concurrently: MATH 205.

Modes of Inquiry: [QF], [SR]
Writing Credit: None
GEC(s): GEC C006
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): PHYS 216
Instructor: Jeffrey Oishi
Instructor Permission Required: No
DCS 219  Composing Sonic Systems  (1 Credit)
This course takes computational and communications systems concepts, such as randomness, probability, generativity, signal processing, feedback, control (and non-control), and listening as parameters for electronic sound composition. Using the free, user-friendly visual programming environment, Pure Data (Pd), students create unique software-based artworks and compositions. Creative projects are grounded in theoretical and historical readings as well as listening assignments that provide context for the application of computational concepts and communications systems thinking to sonic arts practice. The course culminates in a final showing of sound art installations and performances. Recommended background: experience in one or more of the following: music composition, music performance, experimental arts, digital media, computer programming, electronics, media studies.

Modes of Inquiry: [CP]
Writing Credit: None
GEC(s): GEC C005
Department/Program Attribute(s): (DCS: Human-Centered Design), (DCS: Praxis)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): MUS 219
Instructor: Louis Goldford
Instructor Permission Required: No
DCS 229  Data Structures and Algorithms  (1 Credit)
This course provides an introduction to common data structures and selected algorithms for solving more complex problems. Topics covered include: object-oriented programming, including inheritance and polymorphism; concrete data types (arrays and linked structures); abstract data types (including stacks, queues, trees, and maps); an introduction to fundamental algorithms including recursive sorting and graph-search algorithms (breadth-first search, depth-first search); and basic algorithm analysis using big O notation. Students will implement details of selected data structures, understand and identify efficiency considerations that result from the choice of data structure, and apply data structures and algorithms in various problem-solving contexts. Prerequisite(s): DCS 109D, 109R, 109S, or 109T.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Barry Lawson, Andy Elliot Ricci
Instructor Permission Required: No
DCS 252  Philosophy of Cognitive Science  (1 Credit)
Cognitive science is the interdisciplinary study of the mind, including psychology, neuroscience, linguistics, computer science, and philosophy as its core. This course examines the conceptual foundations of cognitive science, and different approaches to integrating findings and perspectives from across disciplines into a coherent understanding of the mind. Students also consider issues in the philosophy of science, the nature of mind, self, agency, and implicit bias. Prerequisite(s): one course in philosophy, psychology, or neuroscience.

Modes of Inquiry: [AC]
Writing Credit: None
GEC(s): GEC C031
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year students
Cross-listed Course(s): NRSC 252, PHIL 210
Instructor: Mike Dacey
Instructor Permission Required: No
DCS 301C  Public History in the Digital Age  (1 Credit)
Public history takes place beyond history classrooms and academic contexts. Traditionally, it has been found in museums, walking tours, and performances, and has told the stories of people with social and political privilege. Increasingly, however, public history has come to focus on a greater range of voices, and takes place in a wider range of forms: on websites, graphic novels, interactive sensory experiences, social media, and other digital spaces. In this community-engaged course, students learn to see public history "in the wild," engage with primary sources, and present those sources and historical interpretation to the public in digital form. Students with interests in history and public engagement are encouraged to enroll in this course.

Modes of Inquiry: [HS]
Writing Credit: [W2]
GEC(s): GEC C091
Department/Program Attribute(s): (DCS: Community Engagement), (DCS: Critical Digital St.), (DCS: Human-Centered Design), (DCS: Praxis), (History: Modern)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): HIST 301C
Instructor: Anelise Shrout
Instructor Permission Required: No
DCS 304  Online Community Building and Digital Activism  (1 Credit)
In this course, students examine digital citizenship from the perspective of online community building. They explore theories of collective action, community building, and network assembly, for example, the use of community organizing to propagate information in systems. In this community-engaged learning course, students produce a plan for social media and online organization for a partner community in higher education or STEM education. Recommended background: Prior critical-studies-oriented digital and computational studies course or similar coursework in Africana, American studies, Latin American and Latinx studies, and/or gender and sexuality studies.

Modes of Inquiry: None
Writing Credit: None
GEC(s): GEC C091
Department/Program Attribute(s): (DCS: Community Engagement), (DCS: Critical Digital St.), (DCS: Human-Centered Design), (DCS: Praxis)
Class Restriction: None
Cross-listed Course(s): None
Instructor: Carrie Eaton
Instructor Permission Required: No
DCS 305  Digital Maps, Space, and Place  (1 Credit)
Space and place-visualized by maps-condition nearly every aspect of our lived experience. It is almost impossible to imagine everyday experiences without access to maps. Maps also encode power. They tell particular stories and represent dominant cultural understandings of spatial relationship. In this course, students consider the reasons for studying maps, the ways in which maps might inscribe or combat extant power structures, the tools needed for geospatial analysis, how to embed and analyze geographical information, and how to link historical maps to modern-day geographies. Prerequisite(s): one 200-level digital and computational studies course.

Modes of Inquiry: [CP]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Human-Centered Design)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Anelise Shrout
Instructor Permission Required: No
DCS 306  Animal Learning  (1 Credit)
The course examines historical and recent trends in animal learning. Topics include classical and operant conditioning, biological constraints on learning, and cognitive processes. Prerequisite(s): one of the following: NRSC/PSYC 160 or 200, PSYC 222, 230, or 250.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year students
Cross-listed Course(s): NRSC 306, PSYC 305
Instructor: Jason Castro
Instructor Permission Required: No
DCS 316  PIC Math: Community Engaged Data Science  (1 Credit)
This PIC Math (Preparation for Industrial Careers in Mathematical Sciences) course is intended for students with a strong interest in industrial applications of mathematics and computation. Students work in teams on a research problem identified by a community partner from business, industry, or government. Students develop their mathematical and programming skills as well as skills and traits valued by employers of STEM professionals, such as teamwork, effective communication, independent thinking, problem solving, and final products. Prerequisite(s): MATH 205 and 206.

Modes of Inquiry: None
Writing Credit: None
GEC(s): GEC C091
Department/Program Attribute(s): (DCS: Community Engagement), (DCS: Praxis)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): MATH 316
Instructor Permission Required: Yes
DCS 317  Algorithms & Theory of Computation  (1 Credit)
This course presents an introduction to the design and analysis of efficient algorithms, and to the theory of computation. Students will learn to apply and analyze standard problem-solving techniques, and will also examine the spaces of problems that can be solved versus those that cannot be solved. Topics in algorithms will cover design strategies including divide & conquer and dynamic programming, as well as tools for analyzing and conveying algorithmic performance and correctness. The course will also include topics from the theory of computation, including P vs NP and reductions, deterministic finite automata, Turing machines, undecidability, and the halting problem. Prerequisite(s): DCS 229.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): None
Instructor: Barry Lawson
Instructor Permission Required: No
DCS 320  Health Informatics and Digital Health: Data, Systems, and Innovations in Healthcare  (1 Credit)
Provides a comprehensive overview of health informatics, examining how digital health technologies and data-driven solutions are transforming healthcare. Includes study of design, implementation, and interoperability of health information systems, including electronic health records (EHRs) and clinical decision support systems (CDSS), and data standards. Students will learn to acquire, preprocess, and analyze health data using machine learning and predictive modeling techniques to enhance healthcare outcomes. Students will explore digital health innovations such as telemedicine, wearable devices, and mobile health applications. Students will critically analyze ethical, societal, and regulatory challenges, particularly in patient data privacy, security, and bias in artificial intelligence. Students will also develop and evaluate innovative digital health solutions to address current and future healthcare challenges through practical, project-based learning using real-world datasets. Recommended background: Basic knowledge of structured computer programming is necessary. Additional study in either computer science or health sciences is recommended. Prerequisite(s): DCS 109D, 109R, 109S, or 109T; and one of the following: DCS 211, 229, BIO 202, or permission of the instructor.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Data Science & Analysis), (DCS: Human-Centered Design)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Chris Agbonkhese
Instructor Permission Required: No
DCS 325  Introduction to Web Development  (1 Credit)
This course provides an introduction to full-stack web development, including user-facing website design and construction, back-end frameworks, and client communication. The course will cover fundamental core web technologies (HTML, CSS, and JavaScript), as well as select libraries and frameworks used in current practice (e.g., React, Tailwind CSS). The course will also cover various web data formats (e.g., JSON, XML), server-side / back-end frameworks (e.g., Firebase, Django, Flask), fundamental UI and UX concepts (e.g., prototyping, usability, accessibility), and website security. Students will work directly with clients, with a focus on planning and maintenance. Prerequisite(s): DCS 211 or 229.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Community Engagement), (DCS: Human-Centered Design)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Barry Lawson
Instructor Permission Required: No
DCS 331  Mathematics for Machine Learning  (1 Credit)
This course begins with linear regression models and introduces students to a variety of techniques for learning from data, as well as principled methods for assessing and comparing models. Topics include bias-variance trade-off, resampling and cross-validation, linear model selection and regularization, classification and regression trees, bagging, boosting, random forests, support vector machines, generalized additive models, principal component analysis, unsupervised learning and k-means clustering. Emphasis is placed on the mathematics behind these concepts and on the statistical computing in a high-level language (e.g. R or Python). Recommended background: prior coursework in programming and statistics. Prerequisite(s): MATH 205.

Modes of Inquiry: [QF], [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): MATH 331
Instructor: Fatou Sanogo
Instructor Permission Required: No
DCS 351  Computational Macroeconomics  (1 Credit)
This course is an introduction to dynamic general equilibrium models, which have become the workhorses of modern macroeconomics. These models involve intertemporal optimization by the different agents in the economy: households, firms, and the government. They are often used to analyze the modern theories of growth and aggregate fluctuations, and to study the role of monetary and fiscal policy. Most of these dynamic models, however, do not have analytical (closed form) solutions and one often has to rely on computational methods to analyze their behavior. The goal of this course is to provide an introduction to the computational tools that are necessary to solve dynamic economic models quantitatively. Prerequisite(s): ECON 255 and 270.

Modes of Inquiry: [QF], [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year students
Cross-listed Course(s): ECON 351
Instructor: Pubali Chakraborty, Anamika Sen
Instructor Permission Required: No
DCS 355A  Numerical Analysis  (1 Credit)
This course studies the best ways to perform calculations that have already been developed in other mathematics courses. For instance, if a computer is to be used to approximate the value of an integral, one must understand both how quickly an algorithm can produce a result and how trustworthy that result is. While students implement algorithms on computers, the focus of the course is the mathematics behind the algorithms. Topics may include interpolation techniques, approximation of functions, solving equations, differentiation and integration, solution of differential equations, iterative solutions of linear systems, and eigenvalues and eigenvectors. Prerequisite(s): MATH 106 and 205.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): GEC C006
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): MATH 355A
Instructor Permission Required: No
DCS 355D  Chaotic Dynamical Systems  (1 Credit)
The field of dynamical systems is best understood from both theoretical and computational viewpoints, as each informs the other. Students explore attracting and repelling cycles and witness the complicated dynamics and chaos a simple function can exhibit. Topics include chaos in discrete versus continuous dynamical systems, bifurcations, and attractors, with applications to biology and physics. While there will be a significant computational component to the course, previous coding experience is not required. Recommended background: MATH219. Prerequisite(s): MATH205.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): GEC C006
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): MATH 355D
Instructor: Chip Ross
Instructor Permission Required: No
DCS 355H  Numerical Linear Algebra  (1 Credit)
This course studies the best ways to perform calculations that have been developed in Linear Algebra. Topics may include solving systems of equations, error and condition numbers, least squares, and eigenvalues and singular values. Prerequisite(s): MATH 205

Modes of Inquiry: None
Writing Credit: None
GEC(s): GEC C006
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): MATH 355H
Instructor Permission Required: No
DCS 357  Computational Neuroscience  (1 Credit)
The brain is a complex object, and studying it scientifically requires a facility with tools and concepts for analyzing high dimensional data. This course will provide a survey of such tools through representative case studies in perception (how many types of odors are there?), genomics (how do we classify cell types?), and neural coding and dynamics (how does brain activity encode attributes of the world?). Students will develop intuitions for framing fundamental neuroscience questions as data-driven problems, and will also develop skills for exploring, visualizing, modeling, and interpreting data. No prior experience with coding is assumed or expected, and the course will emphasize the use of high-level computational tools rather than implementation of algorithms from scratch. Prerequisite(s): NRSC/PSYC 160.

Modes of Inquiry: [SR]
Writing Credit: [W2]
GEC(s): None
Department/Program Attribute(s): (DCS: Data Science & Analysis)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): NRSC 357
Instructor: Jason Castro
Instructor Permission Required: No
DCS 360  Independent Study  (1 Credit)
Students, in consultation with a faculty advisor, individually design and plan a course of study or research not offered in the curriculum. Course work includes a reflective component, evaluation, and completion of an agreed-upon product. Sponsorship by a faculty member in the program/department, a course prospectus, and permission of the chair are required. Students may register for no more than one independent study per semester.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): None
Instructor Permission Required: No
DCS 368  Data Science for Economists  (1 Credit)
Economics is at the forefront of developing statistical methods for analyzing data collected from uncontrolled sources. Because econometrics addresses challenges such as sample selection bias and treatment effects identification, the discipline is well-suited to analyze large or unstructured datasets. This course introduces practical tools and econometric techniques to conduct empirical analysis on topics like equality of opportunity, education, racial disparities, and more. These skills include data acquisition, project management, version control, data visualization, efficient programming, and tools for big data analysis. The course also explores how econometrics and statistical learning methods cross-fertilize and can be used to advance knowledge on topics where large volumes of data are rapidly accumulating. We will also cover the ethics of data collection and analysis. Prerequisite(s): ECON 255 and ECON 260 or 270.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Data Science & Analysis), (DCS: Praxis)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): ECON 368
Instructor Permission Required: No
DCS 375  Network Analysis  (1 Credit)
Networks are everywhere. They describe how people, organisms, and ideas connect and interact. Studying networks reveals patterns, systems, and frameworks that are, in many cases, otherwise invisible. This course introduces network analysis as a tool that offers insights into the construction of social, biological, and information systems. It scaffolds the terminology and theoretical underpinnings of network science. It also introduces the data wrangling, qualitative analysis, quantitative analysis, critical analysis, and data visualization tools that often accompany the studies of networks. Recommended background: Prior coursework in critical digital studies and R programming, data cleaning, and/or significant programming experience. Prerequisite(s): DCS 204.

Modes of Inquiry: [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Data Science & Analysis), (DCS: Praxis), (DCS: Programming & Theory)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Carrie Eaton, Anelise Shrout
Instructor Permission Required: No
DCS 383  Surveillance and Society  (1 Credit)
Surveillance in a pervasive feature of modern societies—indeed, surveillance is often considered part of what defines “modern” social life. In this course, students will explore how personal, everyday uses of surveillance devices and experiences of data collection shape and are shaped by larger efforts to control populations, and how mobile digital connectivity influences those dynamics. Together, we consider foundational texts in academic studies of surveillance; techniques of surveillance found in health, education, and other social spheres; surveillance as a component of modern governance; and persistent stratifications in surveillance practices.

Modes of Inquiry: [AC], [HS]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year students
Cross-listed Course(s): GSS 383, SOC 383
Instructor: Rebecca Herzig
Instructor Permission Required: No
DCS 401  Internship in Digital and Computational Studies  (1 Credit)
Part-time internships, which may be local or distant, conducted in-person or remotely. Internships provide digital and computational studies students opportunities to apply what they have learned in courses, learn and apply new skills, gain knowledge in a specific field, build professional skills, and explore career paths in digital and computational studies. Prerequisite(s): one course in digital and computational studies. Enrollment is limited to available positions. *F-1 visa holders are not eligible for this course.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor Permission Required: Yes
DCS 456  Senior Capstone  (1 Credit)
Students work in teams to design, build, analyze, and critique a software/digital solution in partnership with external stakeholders. The course provides a real-world culminating experience that synthesizes the knowledge, skills, and values developed throughout the major. Required of all DCS majors. Prerequisite(s): DCS 211 or 229; completion of the Methods requirement; and one 300-level or higher course in DCS.

Modes of Inquiry: None
Writing Credit: [W3]
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year, Sophomore, or Junior students
Cross-listed Course(s): None
Instructor Permission Required: No
DCS 457  Senior Thesis  (1 Credit)
Open to DCS majors only by prior approval from the DCS Program Committee. Prior to entrance into DCS 457, students must submit a proposal for the work they intend to undertake toward completion of a thesis. Required of candidates for Honors. Students register for DCS 457 in the fall semester.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year, Sophomore, or Junior students
Cross-listed Course(s): None
Instructor Permission Required: Yes
DCS 458  Senior Thesis  (1 Credit)
Open to DCS majors only by prior approval from the DCS Program Committee. Prior to entrance into DCS 458, students must submit a proposal for the work they intend to undertake toward completion of a thesis. Required of candidates for Honors. Students register for DCS 458 in the winter semester.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: Not open to: First Year, Sophomore, or Junior students
Cross-listed Course(s): None
Instructor Permission Required: Yes
DCS S13  Computation & Mathematical Art  (0.5 Credits)
This course will explore art and how art can be used to visually demonstrate computational and mathematical concepts. Explore the cross-over between two very different disciplines and what you can do with this knowledge. This course will feature work by prominent mathematicians and computer scientists in the mathematical and computational art space. Additionally, students will leave the course with a completed art project of their devising that demonstrates a computational or mathematical concept and a beginner level knowledge of crochet. The course will also include a historical overview of how art, specifically weaving and knitting, were instrumental in creating examples of how to store information that would be used as computer science was developed. Recommended background: Creativity, interest in creating art. Prerequisite(s): any college-level math course, or DCS 109D, 109R, 109S, or 109T.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): None
Instructor Permission Required: No
DCS S16  Infrastructures  (0.5 Credits)
Popular representations of digital technologies often present them as somehow independent of material constraints-as inherently clean, "green," and ethereal as a cloud. Those images belie the realities of the information economy's myriad environmental impacts, from resource depletion to water pollution to massive energy consumption. This course, an introduction to the history and politics of infrastructure, directs attention to relationships between human and nonhuman nature, using everyday personal computing as a point of departure. Throughout, students engage with activists, regulators, and maintainers working toward justice and sustainability in the digital age.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.)
Class Restriction: None
Cross-listed Course(s): ENVR S13
Instructor: Rebecca Herzig
Instructor Permission Required: No
DCS S17  Modeling & Data Analysis in the Physical Sciences  (0.5 Credits)
How are models used in the physical sciences? How are models informed by data in different disciplines, and how do we analyze it? This course will provide students with an opportunity to explore the many ways that models are used to conduct scientific research, and gain insights into how models can support their academic and career goals. We will discuss a variety of models, techniques, and tools used throughout the physical sciences, and guide students to use them for their own research project. Students will learn data fundamentals as well as specific applications of these data-driven techniques to fields within the physical sciences. Lessons will be taught through a lecture and lab component, going over the concepts before letting students work through coding projects, enabling them to create and conduct their own data-driven research. This course has no prerequisites, and aims to bring together students from a wide variety of academic disciplines and any level of coding experience.

Modes of Inquiry: [QF], [SR]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): ASTR S11, EACS S11, PHYS S11
Instructor: Becca Payne
Instructor Permission Required: No
DCS S29  Logic: Possibility, Proofs, and Paradox  (0.5 Credits)
Building on PHIL 195 (Introduction to Logic), students consider the relationship between logic and reasoning, learn about modal logic (the logic of possibility and necessity), Turing machines, and alternative logics, prove some surprising metalogical results, and puzzle through some logical paradoxes. Prerequisite(s): PHIL 195.

Modes of Inquiry: [QF]
Writing Credit: None
GEC(s): GEC C031
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): PHIL S29
Instructor: Lauren Ashwell
Instructor Permission Required: No
DCS S31  Human-Robot Interaction Design Workshop  (0.5 Credits)
How should robots co-exist with humans? In this course, you will learn about the field of human-robot interaction (HRI) with a focus on the theory and processes used to design robots that interact with people. You will work in teams to iteratively design, build, and evaluate a new human-robot interaction system. At the end of the term, each team will share their findings and design process. No prior programming or robotics experience is required. Prerequisite(s): One DCS course or instructor permission.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Praxis)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Andy Elliot Ricci
Instructor Permission Required: No
DCS S33  Introduction to Web Development  (0.5 Credits)
This course provides an introduction to full-stack Web development, including user-facing website design and construction, back-end frameworks, and client communication. The course will cover technologies for client-side development (HTML, CSS, and JavaScript), various web data formats (e.g., JSON, XML), server-side web frameworks (e.g., Django, Flask), fundamental UI and UX concepts (e.g., prototyping, usability, accessibility), and website security. Students will work directly with clients, with a focus on planning and maintenance. Prerequisite(s): DCS 211 or 229.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Human-Centered Design)
Class Restriction: Not open to: First Year students
Cross-listed Course(s): None
Instructor: Barry Lawson
Instructor Permission Required: No
DCS S34  Data, AI, and Society: Ethical Implications in Research and Practice  (0.5 Credits)
How do data practices by companies, governments, educators, and researchers shape our world, and what ethical responsibilities come with this power? Open to students from all backgrounds, this course explores the ethical landscape of data science and AI through topics like data privacy, surveillance, algorithmic bias, and data governance, examining how these practices impact personal freedoms, education, and public trust. Through case studies, discussions, and interactive activities, you’ll learn to navigate ethical challenges across the data lifecycle, building skills in transparency, responsible communication, and fairness in data applications. By the end, you’ll apply your insights in a short final project, designing either a research plan with ethical safeguards or a teaching module on data and AI ethics. Recommended background: Basic experience with a statistics or data science course. Prerequisite(s): MATH 117, DCS 204, 210, 211, or 375, or instructor permission.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Praxis)
Class Restriction: None
Cross-listed Course(s): None
Instructor Permission Required: No
DCS S45T  Mathematical Image Processing  (0.5 Credits)
This course introduces mathematical methods in digital image processing, including basic image processing tools and techniques with an emphasis on their mathematical foundations. Students implement the theory using MATLAB. Topics may include image filtering, image enhancement, edge detection, and image segmentation. Prerequisite(s): MATH 205 or 206.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Programming & Theory)
Class Restriction: None
Cross-listed Course(s): MATH S45T
Instructor: Katy Ott
Instructor Permission Required: No
DCS S50  Independent Study  (0.5 Credits)
Students, in consultation with a faculty advisor, individually design and plan a course of study or research not offered in the curriculum. Course work includes a reflective component, evaluation, and completion of an agreed-upon product. Sponsorship by a faculty member in the program/department, a course prospectus, and permission of the chair are required. Students may register for no more than one independent study during a Short Term.

Modes of Inquiry: None
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): None
Class Restriction: None
Cross-listed Course(s): None
Instructor Permission Required: No
DCS S51A  STIP: Rethinking Archives, Data and Analysis: Critical Approaches to Archival Data and Bates College  (0.5 Credits)
Through engagement with archives, scholarly literature and Bates's history, students in this curricular innovation course will help to re-imagine AMST/DCS 204: Archives, Data and Analysis. This re-imagining will include considering new archives and/or data that can help inform our understanding of Bates College in the past and the present, incorporating innovative work in critical archival and data studies, and considering which computational methods and approaches might be added to enhance the course. This re-designed course will center the operation of race, power, privilege and/or colonialism in the context of Bates College. At the end of this short-term course, students will have a grounding in the scholarly work on data analysis, critique and archives, as well as in computational methods necessary to complete those analyses. Recommended background: prior coursework in DCS beyond AMST/DCS 204. Prerequisite(s): AMST 204, DCS 104, or 204.

Modes of Inquiry: [AC], [HS]
Writing Credit: None
GEC(s): None
Department/Program Attribute(s): (DCS: Critical Digital St.), (DCS: Data Science & Analysis), (DCS: Human-Centered Design)
Class Restriction: None
Cross-listed Course(s): AMST S51B
Instructor: Anelise Shrout
Instructor Permission Required: Yes