KSAWorks
KSAWorks
Knowledge • Skills • Abilities
Mount Holyoke College · Courses

COMSC

40 courses with the subject COMSC, each shown exactly as we captured it from the college's catalog, with every element we hold. Where the wording looks broken, that is our reading of the catalog, not the college's text.

COMSC 100Foundations of Computer Science

At its core, computer science is a field about creative problem solving. In this introductory course, students will develop the computational problem-solving skills required to approach a host of big and small problems from across the field, evaluate the quality of proposed solutions, and reason about the unintended side-effects of different approaches. Along the way, students will be exposed to a variety of research areas in computer science through examining some of their solved, unsolved, and unsolvable problems. Although programming is a tool that many computer scientists use to develop solutions, this is not a programming-based course.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 106Fundamentals of Applied Computing

Have you ever used Google's image search tool and wondered how the search results were found? Why is it so difficult for a computer to "see" as we do? Computer scientists are actively researching how to approach this challenge of "computer vision." This course will introduce the fundamentals of applied computing using computer vision as a motivating theme. Students will learn foundations of programming (in the Python programming language) before working with computational tools more independently.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 107iDesign Learning Lab

When charting a path through college and beyond, a metacognitive framework can provide scaffolding for intentional reflection. Situated in the Fimbel Maker & Innovation lab, this course will leverage tangible activities to ground discussions on factors and strategies that impact learning. For example, embedding a microcontroller to create motion-sensitive lights in a ballet skirt parallels the cycle of self-regulated learning. No prior experience with electronics or computer science is assumed, and students will work with hands-on tutorials that teach the basics required to develop their own interactive technology projects.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 109iDesign Learning Incubator

Learning to make and making to learn - this course challenges students to engage in both by being situated in the Fimbel Maker & Innovation Lab. Hands-on introductory activities provide the surprisingly minimal level of comfort and background required to produce prototypes of interactive technology products. These tangible experiences are leveraged to prompt students to reflect on factors and strategies that impact effective learning. For example, developing a music box parallels the cycle of self-regulated learning, while designing a greeter robot grounds discussion on the role of belongingness in a learning environment.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 112Topics in Computer Science
Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 112AETopics in Computer Science: 'AI Ethics'

Artificial intelligence (AI) is rapidly changing our world, from the way we drive to the way we communicate. But what are the ethical implications of these changes? In this course, we will explore the ethical challenges and opportunities posed by AI. We will discuss topics such as data privacy, fairness, bias, accountability, and transparency. We will also examine the role of AI in society and its potential impact on our values and our way of life.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 112CMTopics in Computer Science: 'Curious Machines'

Explore computer science by building curious machines! Situated in the Fimbel Maker & Innovation Lab, this course seeks to demystify the technology around us. Students will discover how computational thinking bridges interactive physical and digital systems through hands-on lab activities and collaborative projects. Along the way, the course will highlight some of the many beautiful and challenging problems facing computer scientists today.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 112DVTopics in Computer Science: 'Data Visualization: Design and Perception'

Data visualizations such as graphs, charts, and infographics are everywhere! But creating data visualizations which communicate effectively is not a simple task. In this introductory course, students will explore how design influences the ways that data are understood and how they can use this to craft effective visualizations for different types of data. Experience working with data, design, or data visualization are not expected; students will work on a series of projects which will build these skills over the semester.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 150Introduction to Computer Science

Introduction to the field of computer science. Introduces students to Python programming including algorithms, basic data structures (lists, dictionaries), and programming techniques. Does not include object-oriented programming.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 151Introduction to Computational Problem Solving

Introduces students to algorithms, basic data structures, and programming techniques. Students learn computing principles by exploring problems drawn from a broad set of domains, such as cryptography, data analysis and games.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 161Introduction to Computer Science Part 2: Object-Oriented Programming

This course builds on the programming concepts learned in COMSC-150, covering object-oriented programming and introducing the Java programming language.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 205Data Structures

This course builds on the basic programming concepts learned in COMSC-151, shifting the focus to the organization of data in order to improve efficiency and simplicity of programs. Topics include the study of abstract data types and data structures (such as linked lists, stacks, queues, and binary trees). This course is programming-intensive and introduces the Java programming language.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 221Introduction to Computing Systems

This course looks at the inner workings of a computer and computer systems. It is an introduction to computer architecture. Specific topics include assembly language programming, memory, and the basicsc of digital logic. This course is programming intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 225Software Design and Development

Building large software systems introduces new challenges to software development. Appropriate design decisions and programming methodology can make a major difference in developing software that is correct and maintainable. In this course, students will learn techniques and tools that are used to build correct and maintainable software, improving their skills in designing, writing, debugging, and testing software. Topics include object-oriented design, testing, design patterns, and software architecture. This course is programming intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 226Engineering Robotic Systems

This intermediate-level course presents a hands-on introduction to robotics. Each student will construct and modify a robot controlled by an Arduino-like microcontroller. Topics include kinematics, inverse kinematics, control-theory, sensors, mechatronics, and motion planning. Material will be delivered through one weekly lecture and one weekly guided laboratory. Assignments include a lab-preparatory homework, guided lab sessions, and out-of-class projects that build upon the in-class sessions. Students have access to the Fimbel Maker and Innovation lab for fabricating and demonstrating their robots.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 235Applications of Machine Learning

This course provides a practical and conceptual introduction to machine learning. Through programming projects and work with real-world data, we will study the motivations behind common machine learning algorithms, and the properties that determine whether or not they will work well for a particular task. We will also study practical applications of these algorithms to problems in areas such as speech, language, social sciences, and biology. Topics may include: supervised learning, classification, regression, clustering, decision trees, support vector machines, Naïve Bayes, neural networks and reinforcement learning.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243Topic
Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243CATopic: 'Critical AI'

In the last few years, the use of AI models has exploded, causing significant impacts across the globe. But what even is AI? And can it do all the things that people say it can? In this course, students will build the skills required to distinguish between AI fact & fiction by engaging with both the computing principles behind AI models and interdisciplinary perspectives on their development and use. Coursework will include weekly readings, reflective writing, creative projects, and in-class discussions.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243GPTopic: 'Introduction to Game Programming'

Video games are not only engaging to play, but challenging and fun to program. Many games are in fact simulations: they define a game world, and model that world and the interactions of elements in it. To program games, one must excel at this type of modeling while simultaneously handling real-time input and output to create a compelling experience. This project-based course explores techniques at the heart of game programming. By working through design and coding activities both with a team and independently, students will strengthen their core programming skills, their ability to model complex problems, and their skills for developing software in a team. This course is programming-intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243HCTopic: 'Human-Computer Interaction'

Human-computer interaction (HCI) is a multidisciplinary field exploring the relationships between people and computers. This broad area includes the study of topics such as how people interact with technology, how design impacts what people do with technology, and methodologies for designing new technologies that really works for people. In this class, students will learn about and apply human-centered design principles, employ common research methods in the field, and explore recent literature in the field.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243HRTopic: 'Human-Robot Interaction'

Human-Robot Interaction is an interdisciplinary field that examines a broad set of questions about robots that are designed to interact with humans (e.g., educational, assistive, and service robots). How does the behavior and appearance of a robot change how humans perceive and interact with it? How can we design and program robots that are natural, trustworthy, and effective? In this course, students learn the algorithmic foundations of interactive robots, gain experience building and evaluating interactive robots, and read and present scholarly research papers. Class time is split between lecture, presentations by students, discussions, and hands-on activities.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243PCTopic: 'Physical Computing Workshop'

Physical computing requires the design of systems that integrate hardware and software components. By exploring sensors, such as a photoresistor to detect ambient light or an ultrasonic distance sensor to detect objects, and reactive elements, such as LEDs or motors, students will learn core principles of underlying physical computing design. Hands-on labs and design projects will provide students with the opportunity to make their own prototypes, supported by the resources of the Fimbel Maker & Innovation Lab.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 243STTopic: 'Introduction to Search Technologies'

The vast amount of unstructured and structured data on the web and in organizational databases has increased the need for approaches to processing large volumes of text. Such analyses help researchers and businesses to gain insights -- that would otherwise be too resource- and time-consuming to do manually -- into issues such as how much a consumer can be expected to spend in a particular context, the rise of hate groups and their impact on social media, or to whom a newly discovered manuscript may be attributed. In this course, students are introduced to tools and techniques used to gain these insights, such as Map-Reduce and Sentiment Analysis, in the context of Natural Language Processing and search technologies (e.g., Google).

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 295Independent Study

Fall and Spring. Credits: 1 - 4 Restrictions: Contact instructor for independent study declaration form and signatures.Instructor permission required.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 311Theory of Computation

Are there any limits to what computers can do? Does the answer to this question depend on whether you use a PC or a Mac? Is C more powerful than Python? This course explores these questions by investigating several models of computation, illustrating the power and limitations of each of these models, and relating them to computational problems and applications. Topics include finite state automata, pushdown automata, grammars, Turing machines, the Halting Problem, and NP-completeness.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 312Algorithms

How does Google Maps find the best route between two locations? How do computers help to decode the human genome? At the heart of these and other complex computer applications are nontrivial algorithms. While algorithms must be specialized to an application, there are some standard ways of approaching algorithmic problems that tend to be useful in many applications. Among other topics, we explore graph algorithms, greedy algorithms, divide-and-conquer, dynamic programming, and network flow. Students learn to recognize when to apply each of these strategies as well as to evaluate the expected runtime costs of the algorithms they design.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 316Developing Innovative Software

Tired of writing programs that nobody ever uses? Then, this is the course for you. Many people come up with novel ideas for software, but lack the resources or ability to develop the software. Students will apply their programming skills to develop and deliver software based on the requirements of a client. Students will learn critical communication skills required to work with a client, work in teams with classmates, and experience the software lifecycle from requirements elicitation through delivery. Students will synthesize many topics learned in prior courses as well as explore new technologies required to complete a specific project. Programming intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 322Operating Systems

An introduction to the issues involved in orchestrating the use of computer resources. Topics include operating system design principles and abstractions, memory management and virtual memory, resource scheduling, and concurrency. Course emphasis: understanding the implications of OS design on the programs you run and write (i.e., on their security, performance, etc.).

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 334Artificial Intelligence

Artificial Intelligence, as a field, has grown from its humble beginnings in science fiction to become one of the broadest fields in computer science, encompassing an incredibly wide array of topics. One of the common threads between these topics is "How do we build computer systems which exhibit logic and reason?" or rather "How do we build systems which can solve problems intelligently without resorting to brute force?" We'll cover a few major topics in this course, most notably search, logical reasoning, and planning as well as game playing/theory, uncertain reasoning, and graphical models. This course is programming intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 335Machine Learning

How does Netflix learn what movies a person likes? How do computers read handwritten addresses on packages or detect faces in images? Machine learning is the practice of programming computers to learn and improve through experience, and it is becoming pervasive in technology and science. This course will cover the mathematical underpinnings, algorithms, and practices that enable a computer to learn. Topics will include supervised learning, unsupervised learning, evaluation methodology, and Bayesian probabilistic modeling. Students will learn to program in MATLAB or Python and apply course skills to solve real world prediction and pattern recognition problems. Programming Intensive.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341Topics
Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341CDTopics: 'Causal Inference for Data Science'

You might have heard the phrase "correlation is not causation" -- but then, what is causation? For example, how did scientists determine that smoking causes lung cancer? This course will explore how to ask and answer causal questions using data. We will learn the fundamentals of estimating cause-and-effect relationships, drawing from foundations in computer science, statistics, and economics. We will also use modern data science tools coding in Python to run simulations, work with data, and communicate our findings. Students will get hands-on experience thinking through causal study design and analyzing data across real-world applications in healthcare, public policy, education, and more. This course will have a substantial mathematical component, building off probability concepts seen in MATH-232.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341CVTopics: 'Computer Vision'

This course provides an introduction to image analysis and 3D interpretation from image data. It uncovers the mystery behind standard techniques in image processing like filtering, edge detection, stereo vision, flow, etc. Math lovers, this course is for you! Throughout the semester, each student will develop their own computer vision library through programming assignments. Furthermore, students will learn about newer, advanced machine-learning-based computer vision algorithms.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341DVTopics: 'Storytelling with Data Visualization'

Data storytelling techniques blend the principles of data visualization, data analysis, and visual design to tell compelling, data-driven stories across a wide variety of fields. Bridging public communication and data, these techniques are used every day by data journalists and data analysts as well as public science and research communicators in for- and non-profit organizations across the globe. In this course, students will explore how a variety of data storytelling techniques work by critically examining state-of-the-art examples and developing a portfolio of data-driven stories of their own.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341EATopics: 'Expedition: Algorithms'

Embark on a journey to discover how algorithms can be leveraged as a tool for creative problem-solving, innovation and leadership. This project-based course challenges students to deploy their computer science knowledge through the lens of "entrepreneurial thinking." Faced with a design problem, students will explore risk-taking, collaboration and iterative processes as well fabrication technologies, such as laser cutting and 3D printing, through the Fimbel Maker & Innovation Lab.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341NLTopics: 'Natural Language Processing'

This course provides an introduction to natural language processing, the discipline of enabling computers to process and understand human language. We will learn fundamental techniques for automated text and speech analysis and understanding, with insights from linguistics. Students will get hands-on practice implementing computational algorithms, reading scholarly research articles and will design and carry out an independent final project.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341RPTopics: 'Robotics Planning Algorithms'

Robotics planning is a fundamental skill for developing autonomous robots. This course will introduce students to the fundamental concepts and algorithms of robotics planning. Students will learn how to apply the concepts they have learned in Data Structures to implement and analyze the performance of popular planning algorithms. Students will also learn about the advancements and gaps that exist today in robotics navigation, manipulation, and collaboration.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341RTTopics: 'Applied Rigidity Theory'

Suppose you were asked to: control a formation of robots to cooperatively carry an object; engineer a bridge using metal beams and bolts; or develop a web app to assist in drug design. The area of "rigidity theory" provides tools for approaching any of these tasks. We start with fundamental results from classical rigidity theory, culminating in a combinatorial characterization of rigid 2D "bar-and-joint frameworks" and a graph-theoretic algorithm. We then shift to specific applications drawn from domains such as robotics, structural engineering and computational biology. In small groups, students investigate a research question and produce an associated pedagogical or computational tool.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 341TETopics: 'Text Technologies for Data Science'

This course focuses on text analysis and technologies. We look at the challenges of working with massive amounts of unstructured vs semi-structured vs structured data. In that context, we explore some of the ways that statistical analyses are applied to things like search, categorization e.g. spam filtering, recommender systems, plagiarism detection, and hidden message finding.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu
COMSC 395Independent Study

Fall and Spring. Credits: 1 - 8 Restrictions: Contact instructor for independent study declaration form and signatures.Instructor permission required.

Subject
COMSC
Type
course
Edition
2026
Source
catalog.mtholyoke.edu

Source: Mount Holyoke College's catalog, linked per course · table learning_unit · CourseShelf publish 61