The CS50 Model
The singularly successful class offers an educational blueprint for the future
This past week, The Crimson reported on one of the most surprising educational success stories in the Ivy League. In “Ec10 Nabs Top Spot in Course Enrollment Numbers,” the paper duly noted that N. Gregory Mankiw’s perennially popular course had drawn 731 students this fall. But the real story was buried in the fifth paragraph: “An increasingly trendy course … [Computer Science 50] drew 651 students this semester, a 32 percent increase in enrollment since last fall.” That’s right—a course in computer science, for which students report doing 11 to 14 weekly hours of homework and which 25 percent of last year’s class labeled “very difficult” in the Q Guide, is Harvard’s fastest growing offering.
What can the University learn from CS50’s explosive success? Quite a lot, in fact. CS50 is not a fluke. The methods that turned the course into an academic juggernaut with top Q ratings and astronomical enrollment figures—in spite of ostensibly abstruse subject matter and an infamously taxing workload—can be applied across the Harvard curriculum. Indeed, the principal pedagogical lessons of the class—making course content relevant, offering a range of student support services to offset difficulty, and employing a singularly devoted preceptor as course head—can help us craft a better future for undergraduate education.
CS50 has made computer science accessible to hundreds of students with no previous training in it, generating newfound popular appeal, particularly among non-concentrators. In Fall 2006, the year before David J. Malan ’99 took the class’ helm, the course had drawn a respectable 132 students, mostly CS concentrators. But Malan more than doubled that number, attracting 282 in 2007 and building steadily to 651 this year. And whereas in 2006, around 38 percent of students took CS50 as an elective, by 2010 that number was 68 percent. Students in CS50 are taking it because they want to, not because they have to.
This achievement—especially impressive given CS50’s onerous problem sets—is largely attributable to Malan’s efforts to relate the course’s material to the daily world inhabited by students of all backgrounds and interests. Classes may open with a digression explaining how the latest iPhone was jail-broken, or how a recent hacking stunt was accomplished. Problems sets teach principles like data storage and retrieval by highlighting the practical relevance of these seemingly humdrum concepts, with students programming their own spell-checkers, crafting their own web sites and even retrieving deleted photos from a camera’s memory like digital forensic investigators. The class culminates in the CS50 Fair, where students’ final projects—from dining menu apps to jazzed-up Q Guides—are showcased to the community, often with the aim of integrating them into campus life.
Several successful General Education courses like Science of Living Systems 11: Molecules of Life have similarly endeavored to demonstrate how their content proves pivotal in real world settings. Other courses with technical subject matter ought to follow suit, and in this way open students’ eyes to previously undiscovered avenues of understanding.
Of course, it’s easier to attract students than educate them. Many popular Gen Ed courses find themselves bedeviled by large student bodies made up of individuals with almost irreconcilable backgrounds—try teaching a course on the theory of relativity simultaneously to physics majors and those with only high school knowledge of the same material.
Here, CS50—which must contend in the same classroom with CS whiz kids and the hitherto technically illiterate—offers an innovation. In lecture, the course teaches to the lowest common denominator, assuming no prior knowledge; but for some problem sets, it offers two versions—standard and advanced “hacker” editions. Thus, students bored with the elementary material at course’s start are still able to challenge themselves—earning extra credit in the process—while greener students are not penalized for their lack of grounding. Science Gen Eds, in particular, should take note.
But how does CS50 manage to attract students despite its heavy workload? Some of the secret here is CS-specific—each problem set is a project that offers a sense of accomplishment one simply cannot get from reading an academic article—but much of it is not. For instance, the course is able to ratchet up its difficulty by concurrently ratcheting up a variety of student support services. For years, the course has provided one-on-one office hours for stumped students on a semi-nightly basis, employing a veritable army of former students to run them, as well as field questions on the course’s online message board.
Such a collective cushion ensures that when perplexed, students always have recourse to approachable assistance. One could see this more personal, “community of learners” method—which takes advantage of course alumni as peer teaching staff—adopted to ease students of varying backgrounds through everything from the life sciences to Kant.
Much of CS50’s success can be attributed to its indefatigable instructor, David Malan, the architect of so many of the innovations above. Whether it’s shredding phonebooks on stage, training and coordinating a horde of student staff, or revamping the curriculum to make it more relevant, Malan makes CS50 work. Yet, in the traditional university structure, Malan’s position is anomalous—a fantastically successful teacher who exists outside the research and tenure framework. In these tougher economic times, where universities seek to maximize educational yield while scaling back expenditures, perhaps it is time to consider drafting similarly skilled pedagogues to run key courses on campus. CS50 benefits tremendously from Malan’s hands-on approach to every aspect of the class, and so could other large departmental courses.
If a business quintupled its customers over four years, expanding to new markets and far outstripping the competition, other aspiring entrepreneurs would take notice. CS50 has done just that in an educational context, registering massive increases in student enrollment and satisfaction, all while maintaining one of the most rigorous workloads on campus. It’s time for the University to tap this remarkable resource and recognize that CS50 has more to teach us than just computer science.