Computer Science
Academic Department Introduction
Computer science encompasses the study of computation, information processing, and the design and development of computer systems and software. Our goal is to prepare students to lead in a world shaped by computation and data. The curriculum covers the “big ideas” of computer science, and includes a wide range of topics such as software design, computer architecture, theory of computation, algorithms, programming languages, machine learning, artificial intelligence, distributed computing, human-computer interaction, social computing, and playable media. We provide students with theoretical, technical, and ethical foundations so that they can design and build applications and tools that will have a positive impact on individuals and society.
Faculty research is frequently published in leading venues and supported by competitive grants from major scientific funding agencies such as the National Science Foundation and the National Institutes of Health. Students often work alongside faculty, engaging with and contributing to cutting-edge research through independent research, research assistant positions, or honors thesis work.
Learning goals
Gain foundational knowledge in all areas of computer science, including its theoretical basis, software methodologies, computer hardware, and applications.
Formulate, analyze, and solve computational problems.
Apply computational thinking to new problems and adapt to new technologies.
Communicate technical material, including in a team-based setting.
Evaluate the impact of computer science on society and draw connections between computer science and other disciplines.
Programs of Study
Computer science major and minor
Students study computation, information processing, and the design and development of computer systems and software, with the goal of preparing to lead in a world shaped by computation and data.
Additional areas of study
Computer science is also a core requirement for media arts & sciences, data science, and cognitive & linguistics sciences courses.
Course Highlights
Artificial Intelligence
CS232
What is artificial intelligence (AI) and should humans fear it as one of "our biggest existential threats"? In this course, we will grapple with these difficult questions and investigate them in different ways. We will discuss the development of the field from the symbolic, knowledge-rich approaches of the 20th century AI (e.g., rule-based systems), to statistical approaches that rely on increasingly large amounts of data, including an overview of contemporary deep learning techniques. We will explore how to apply these techniques in several AI application areas, including robotics, computer vision, and natural language processing, and consider ethical issues around AI in society. By the end of the semester, students should be able to answer the starting questions in-depth and with nuance.
-
CS 304 is a course in full-stack web development. The stack comprises the front-end (typically a web browser), the back-end (a database for storing and retrieving user-contributed data) and the middleware that knits the two together. We will learn how to parse the incoming web request, route the request to the appropriate handler, retrieve data from the database that is relevant to the user's search, combine that data with static templates of web pages, and deliver that data to the browser. We will build endpoints to handle Ajax requests and learn about REST APIs. We will also discuss performance, reliability, concurrency, and security issues. In a semester project, we will create dynamic websites driven by database entries. In the fall, the CS 304 stack will comprise Flask and MySQL. In the spring, the CS 304 stack will comprise Node.js and MongoDB.. Enrollment in this course is by permission of the instructor only. Students interested in taking this course should fill out this Google Form.
-
How do we educate the next generation of data scientists and software engineers to think of their work as not just technical but also ethical? How do we get them to see that the social impact of their work requires that it be driven by sound ethical principles? The way that these questions are interrogated, discussed, and the sort of answers we might propose will be informed by a thoroughgoing interdisciplinary lens. Students will learn theoretical frameworks from both Philosophy and Computational and Data Sciences and work together to see how knowledge of frameworks from both disciplines serves to enrich our understanding of the ethical issues that face digital technologies, as well as empower us to find creative solutions.Central questions include: What kinds of ethical considerations are part of the everyday jobs of graduates working in digital technology, either in non-profit or for-profit organizations? What parts of the current liberal arts curriculum, if any, are preparing our graduates for the kinds of ethical decision-making they need to engage in? How to expand the reach of ethical reasoning within the liberal arts curriculum, in order to strengthen the ethical decision-making preparation? A key component in our collective efforts to engage with these questions will involve a sustained semester-long research project with Wellesley alums working in the field of digital tech.. Registration is by Permission of the Instructor only. Students interested in taking this course should fill out this Google Form. (CS 334 and PHIL 322 are cross-listed courses.)
Places and spaces
-
The Human Computer Interaction (HCI) Lab is an integrated teaching and research space with state-of-the-art technology, including a driving simulator, interactive multitouch surfaces, and virtual and augmented-reality head-mounted displays.
-
The Playable Media Lab houses 10 high-end computers and VR headsets to support development of interactive media, such as digital gaming and virtual reality. It also contains gaming consoles and a diverse collection of games.
-
The CS Systems Lab has equipment for prototyping circuits and digital logic, along with 22 Linux/Windows workstations used for labs and assignments in CS240: Foundations of Computer Systems, and for computer systems research.
Research highlights
-
Professor Carolyn Anderson has worked with Kiara Meng Hui Liu ’23 and Xiaomeng Zhu ’23 to build a natural language processing pipeline for processing Chinese literary texts. They hope to facilitate computational study of Chinese literature by allowing easy extraction of character mentions, events, and quotations.
-
Professors Catherine Grevet Delcourt and Orit Shaer have worked with Toshali Goel ’23, Connie Gu ’24, and teaching fellow Angel Cooper ’22 on examining the use of generative language models in the user-centered design process. Their goal is to identify best practices for using AI tools for creative and inclusive user experience (UX) design processes. They presented a paper on their work in CHIWork 2023.
-
Peter Mawhorter, instructor in computer science laboratory, has worked with Aizah Rao ’23, Kaitlyn Tsien ’24, Nissi Awosanya ’25, Rachel Suarez ’25, Jada Onwuta ’25, and Kitty Boakye ’26 to come up with a formal theory of exploration poetics for understanding players’ exploration process within games. They are building a graph-based tool for recording and analyzing gameplay decision traces.
Opportunities and community
Our department aspires to be a leader in broadening participation in computing. We value diversity, equity, and inclusion in our department and in the field itself. We understand that we need to continuously and actively engage in inclusive practices that build a community where all feel welcome and empowered to learn and thrive. Equitable access to education is imperative; accordingly, we recognize that we all need to be aware of our conscious and unconscious biases, as well as systemic biases within our institutions, and we must do our best to counteract and erode those biases.
-
Projects for inclusive excellence
Wellesley in Tech highlights Wellesley alums who are pursuing careers in technology and are eager to mentor our current students. Mind the Gap is a podcast that aims to empower underrepresented students pursuing computer science through interviews featuring alums in the technology field. We worked together as a department to craft and approve the CS community values statement.
-
MIT
Students can take classes at MIT and join MIT’s Undergraduate Research Opportunity Program (UROP) in a number of departments.
-
Student research
Computer science students have numerous research opportunities, including independent research during the academic year, honors theses, and the Wellesley Summer Research Program, which employs 20 students as full-time research assistants in a nine- or 10-week program.
-
Graduate school preparation
The Clare Boothe Luce Program helps students from groups traditionally underrepresented in the computational and physical sciences engage in research that prepares them for success in graduate school.
Beyond Wellesley
Beyond Wellesley
Most of our computer science graduates work in the software and internet industries, a majority of them as engineers. Our grads also enroll in top graduate programs in computing.
Recent Employers
Department of Computer Science
106 Central Street
Wellesley, MA 02481