← Departments

COMPSCI

Computer Sciences

Get a feel for the department. Find your next class.

Explore prerequisite map →

Browse all Computer Sciences courses →

The department at a glance

All recorded grades
average GPA
A / AB grades
letter grades

How grades break down

Grades over time

Red: department · Gray: UW–Madison

About these statistics

GPA and percentages are weighted by recorded letter grades. UW comparisons use the same terms. Cross-listed courses count once within this department and once across UW; department totals should not be added together. Grade counts are not unique students. Offering counts reflect captured records, not a complete historical schedule.

Spring 2027

Recorded this term
courses with offerings
instructors recorded

Grades have not been recorded for this term. Historical results remain in the overview above.

Across course levels

Recorded this term

No released grades for this term.

Recorded offerings over time

Find your next class

80 courses

Seminar on computation and informatics in biology and medicine.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Fall 2022–Spring 2026

Hands-on introduction to biomedical image analysis covering medical imaging formats, segmentation, registration, quantification, and classification.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Fall 2022–Spring 2026 · limited sample

Advanced review of medical image analysis techniques, covering segmentation, registration, and the application of statistical and machine learning methods to medical imaging tasks.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Spring 2026–Spring 2026 · limited sample

Programming I introduces fundamental CS concepts through incremental development of small programs. It covers problem abstraction, flow control, functions, and I/O, targeting students with no prior programming experience.

Offering recorded · Spring 2027 · Sources

Past student reviews · Andrew Kuemmel

Homework was due Monday through Thursday, often involving participation tasks that took significant time. Students also faced weekly Friday quizzes, with midterms scheduled on Sundays.

historical GPA · grades

Fall 2022–Spring 2026

Introduction to Data Science programming using Python with no prior experience required, emphasizing analysis of real datasets and visual communication.

Offering recorded · Spring 2027 · Sources

Past student reviews · Michael Doescher

Projects were extremely time-consuming and often repetitive, but students appreciated that the grade was largely based on their completion rather than just exams.

historical GPA · grades

Fall 2022–Spring 2026

Programming II covers Object-Oriented Programming, introducing array-based and linked data structures like lists, stacks, and queues to solve complex problems.

Offering recorded · Spring 2027 · Sources

Past student reviews · Jim Williams

Students reported a large amount of busy work, some of which was challenging and time-consuming. Exams were inconsistent in difficulty, with multiple-choice and programming components varying in ease.

historical GPA · grades

Fall 2022–Spring 2026

Introductory Data Science Programming I for Research course covering Python, programming basics, web scraping, database queries, and tabular analysis.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Fall 2022–Spring 2026

Data Science Programming II covers intermediate Python data science, including graph data structures, reproducibility tools, A/B testing, and basic ML techniques like clustering and classification.

Offering recorded · Spring 2027 · Sources

Past student reviews · Gurmail Singh

Grading was based on six biweekly projects, two midterms, and one final. Projects took a long time, and homework was described as heavy, ranging from easy to challenging.

historical GPA · grades

Fall 2022–Spring 2026

Learning a Programming Language focuses on a specific language at beginner, intermediate, or advanced levels for students interested in that language.

Offering recorded · Spring 2027 · Sources

Past student reviews · Beck Hasti

Past students rated the difficulty as 1, indicating the course was perceived as easy to manage.

No recorded grade history

Programming III is the third course in the programming fundamentals sequence, covering data structures, algorithms, and complexity analysis with an emphasis on professional code quality.

Offering recorded · Spring 2027 · Sources

Past student reviews · Florian Heimerl

Project workloads varied significantly, ranging from one to over twenty hours per week depending on group dynamics. Exams were generally not considered super difficult, though some students noted that tests covered obscure topics mentioned only briefly in lecture.

historical GPA · grades

Fall 2022–Spring 2026

Lead CS clubs and workshops for K-12 students in Madison to teach computational thinking and programming.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Fall 2022–Spring 2026

Introduction to the theory and practice of compiler design, comparing programming language features and their implementation implications through required programming projects.

Offering recorded · Spring 2027 · Sources

Past student reviews · Beck Hasti

Exams and projects were difficult, but the criteria for success were described as super clear.

historical GPA · grades

Spring 2023–Spring 2026

Introduction to Operating Systems covering I/O hardware, interrupts, storage properties, memory management, scheduling, and system evaluation.

Offering recorded · Spring 2027 · Sources

Past student reviews · Louis Oliphant

The projects took a significant amount of time, and the exams were described as pretty difficult.

historical GPA · grades

Fall 2022–Spring 2026

Introduction to Artificial Intelligence covering search, deduction, knowledge representation, machine learning, and probabilistic reasoning with applications in NLP, vision, and robotics.

Offering recorded · Spring 2027 · Sources

Past student reviews · Young Wu

Exams were reported as extremely difficult, with one student stating they were impossible to prepare for using class materials alone. Another described the exams as 'sadistic' but noted the instructor was helpful when students reached out.

historical GPA · grades

Fall 2022–Spring 2026

Theory & Algorithms for Data Science covers probability, concentration inequalities, high-dimensional geometry, estimation, optimization, PAC learning, and distribution testing using Python.

Offering recorded · Spring 2027 · Sources

historical GPA · grades

Spring 2025–Spring 2026 · limited sample

Introduction to Software Security covers secure design, secure programming, vulnerability assessment, static/dynamic analysis tools, and system defenses across the SDLC.

Offering recorded · Spring 2027 · Sources

Past student reviews · Barton Miller

The class required weekly quizzes, a participation event, and extra credit opportunities. One student noted that while the course was less challenging than core CS classes, missing quizzes made getting an A difficult.

historical GPA · grades

Fall 2022–Spring 2026

Introduction to Big Data Systems covers deploying distributed systems for storing and analyzing large datasets using unstructured and structured storage, query languages, streaming data, and machine learning in Python.

Offering recorded · Spring 2027 · Sources

Past student reviews · Tyler Caraza-harter

Assessment included two 30-minute quizzes and a long project requiring 15-20 hours for a small grade percentage.

historical GPA · grades

Fall 2023–Spring 2026

Algorithmic Game Theory & Learning covers non-cooperative and cooperative game theory, mechanism design, and equilibrium computation using tools from TCS, optimization, and ML.

Offering recorded · Spring 2027 · Sources

No recorded grade history

Introduction to high-performance computing focusing on shared-memory systems, multithreaded programming, vectorization, and memory hierarchy using numerical algorithms as case studies.

Offering recorded · Spring 2027 · Sources

Past student reviews · Eftychios Sifakis

Lectures primarily involved case study go-throughs with code. Practice exams were provided for review, supporting the course's lenient grading structure.

historical GPA · grades

Spring 2025–Spring 2026

A survey of computer graphics covering image representation, geometric modeling in 2D/3D, curves/surfaces, rendering, animation, and visualization.

Offering recorded · Spring 2027 · Sources

Past student reviews · Perry Kivolowitz

The workload is demanding, with students reporting that 30 hours a week is not unusual to do well. Individual projects can require a minimum of 30 to 50 hours to complete, making the material and assignments time-intensive.

historical GPA · grades

Fall 2022–Spring 2026

Covers DBMS design and implementation, including data models, file organization, query processing, concurrency control, recovery, and hands-on experience with relational and network-based systems.

Offering recorded · Spring 2027 · Sources

Past student reviews · Ahmed Mahmood

Exams were reported as very tough and lengthy for the available time, while projects were considered fine.

historical GPA · grades

Fall 2022–Spring 2026

Introduction to Human-Computer Interaction covering user-centered design, interface prototyping, usability evaluation, and group project applications.

Offering recorded · Spring 2027 · Sources

Past student reviews · Jacob Thebault-Spieker

The course had no coding requirement; most weeks involved group projects taking a few hours, though some weeks required more time. Students advised starting early.

historical GPA · grades

Fall 2022–Spring 2026

Introduction to software development of user interfaces, covering UI paradigms, diverse user input handling, and platform-specific APIs for web, mobile, desktop, and voice interfaces.

Offering recorded · Spring 2027 · Sources

Past student reviews · Yuhang Zhao

The workload was high but useful, with extensions and extra credit provided to help manage the intensity.

historical GPA · grades

Fall 2022–Spring 2026

An introduction to the principles and practices of managing and exploring different kinds of data. Work with both relational databases and Not only SQL (NoSQL) databases to organize and analyze structured, semi-structured, and unstructured data. Write basic queries, forecast time-series data, and evaluate data quality and patterns through exploratory data analysis. Explore data cleaning techniques such as interpolation and imputation, to address missing or inconsistent values. Apply data engineering techniques, including data pipelines, data warehouses, and processes for moving and transforming data using Extract-Transform-Load (ETL) and Extract-Load-Transform (ELT). Learn how modern language models can be adapted using contextual information from custom datasets and strengthened with techniques that incorporate external knowledge sources.

Offering recorded · Spring 2027 · Sources

No recorded grade history

This course covers core algorithm-design paradigms and computational intractability.

Offering recorded · Spring 2027 · Sources

Past student reviews · Marc Renault

One student found the lectures had almost no correlation to the homework, creating the feeling of taking two separate classes and requiring significant extra effort to connect the material.

historical GPA · grades

Fall 2022–Spring 2026

Intelligent Robotics introduces common robot modeling and algorithmic approaches, covering robot representations, kinematics, motion planning, perception, state estimation, learning, and control.

Offering recorded · Spring 2027 · Sources

No recorded grade history

COMPUTER SCIENCES CAPSTONE involves building a software product from start to finish with a corporate client, using agile techniques like Design Thinking and Scrum, while developing, testing, and documenting the project.

Offering recorded · Spring 2027 · Sources

Past student reviews · Leah Ujda

Weekly meetings and project progress were compounded by a significant amount of additional busywork, increasing the overall time commitment.

historical GPA · grades

Fall 2024–Spring 2026

Undergraduate elective topics in computing covering instructor-selected subjects with sufficient depth to meet CS Major requirements.

Offering recorded · Spring 2027 · Sources

Past student reviews · Josiah Hanna

In Josiah Hanna’s autonomous robotics offering, the total workload was fine. He collected questions before class to address complex concepts in clear detail.

historical GPA · grades

Fall 2022–Spring 2026