“Introduction to Computer Science” can no longer be bypassed by exam
An exam that allowed students entry into CPSC 2230, “Data Systems and Programming Techniques,” without taking CPSC 2010, “Introduction to Computer Science,” will no longer be in use.

Rachel Mak, Staff Photographer
Beginning this fall, Yale students will no longer be able to waive a prerequisite course for “Data Systems and Programming Techniques,” or CPSC 2230, via an exam. Instead, all students wishing to take the class will first be required to take either CPSC 2010, “Introduction to Computer Science,” or CPSC 2000, “Introduction to Information Systems.”
Ozan Erat, a lecturer for “Data Systems and Programming Techniques,” wrote to the News the exam was removed due to its ineffectiveness, but did not clarify exactly how the exam affected student performance in the class.
“Previously, we administered a waiver exam (for 4 semesters) to ensure students were adequately prepared for [Data Systems and Programming Techniques], but we found this approach not as effective as we anticipated,” Erat wrote. “From Fall 2025 semester on, students will need to complete either [Introduction to Computer Science] or CPSC 2000 [Introduction to Information Systems] to enroll in 2230.”
“Introduction to Computer Science” and “Introduction to Information Systems” both assume some knowledge of coding. Students with little to no programming experience are expected to take CPSC 1000, “Intro Computing and Programming,” or CPSC 1001, “Introduction to Programming,” before enrolling in these courses.
“Some students come here having done programming in high school or other things, and they can, in their first semester as a first year take [Introduction to Computer Science],” professor Stephen Slade, who teaches the class, told the News. “There’s no explicit prerequisite for [Introduction to Computer Science].”
According to Slade, many students enter college under the impression that computer science is the same thing as programming. Classes such as “Introduction to Computer Science” impart an understanding of the history of computer science, as well as the “theoretical topics” that are useful in more advanced computer science courses.
The course curriculum approaches the field of computer science as a history, introducing developments such as Turing machines and Boolean functions in the order in which they were first added to the field.
“There are very few students who come into [Introduction to Computer Science] who already know any of this,” Slade said. “But over the years, there have always been students who have been very well prepared as programmers. [Data Structures and Programming Techniques] is taught in the programming language C. Students decided that if they knew enough C and they knew enough programming they were qualified to take [Data Structures and Programming Techniques].”
Slade emphasized the importance of the “Introduction to Computer Science” curriculum in allowing students to tackle “higher level topics.” He described the course methodology as giving students the tools to learn any programming language in the same way that Driver’s Ed students are taught to operate any brand of car.
Desmond Mehta ’28, who took “Data Structures and Programming Techniques” in Fall 2024 and is taking “Introduction to Systems Programming and Computer Organization” this semester, told the News that he felt the change may be due to students being underprepared for “Data Structures and Programming Techniques” despite having passing the waiver exam. Some students, Mehta recalled, were given the option to skip “Introduction to Computer Science” despite receiving a bad grade on the exam.
“I think the problem is that they sent out different emails,” Mehta told the News. “One of them was like you passed the test, you’re good, and then one of them was basically saying you didn’t pass the test but we’ll still let you go through because you did [okay]. And then some people didn’t pass at all.”
Still, Mehta told the News there should be a way for students with experience to skip both “Introduction to Computer Science” and “Data Systems and Programming Techniques.”
Milan Lustig, who committed to Yale this year, told the News that despite originally hoping to take “Data Systems and Programming Techniques,” he supports the decision.
“I support the decision the faculty wants to make because obviously they have the best context,” Lustig told the News.
Previously, students were able to enter “Data Systems and Programming Techniques” without taking an exam. Instructions to fulfill prerequisites for “Data Systems and Programming Techniques,” dated January 2020, told students to submit their “most logically complex code” and answer questions about their programming experience for review.
Slade expects the size of his “Introduction to Computer Science” lecture to increase modestly, which will allow for the hiring of more Undergraduate Learning Assistants. During the Fall 2024 semester, around 140 students were enrolled in the lecture.
“[Introduction to Computer Science] is the best bargain at Yale,” Slade said. “You learn more in [Introduction to Computer Science] than you do in any other course, because you come in there not knowing anything about these topics.”
The Yale Department of Computer Science was founded in 1969.