News

Cambridge Residents Slam Council Proposal to Delay Bike Lane Construction

News

‘Gender-Affirming Slay Fest’: Harvard College QSA Hosts Annual Queer Prom

News

‘Not Being Nerds’: Harvard Students Dance to Tinashe at Yardfest

News

Wrongful Death Trial Against CAMHS Employee Over 2015 Student Suicide To Begin Tuesday

News

Cornel West, Harvard Affiliates Call for University to Divest from ‘Israeli Apartheid’ at Rally

Op Eds

Lots of Sparkle, Not Enough Substance

By Rachel C. Talamo

CS50 instructor David J. Malan ’99 is the Willy Wonka of computer science. He has crafted CS50, his emporium, into arguably the most magnificent and sought-after course in the land. Last year, The Crimson praised CS50 for its “commitment to innovative teaching” and for “raising the bar for teaching at Harvard.” This statement’s Boolean value: false.

The first remark is true—Malan has innovation in spades. He has built his empire with futuristic tools, from 3-D printers to programmed bulbs, which leave us golden ticket-holders awestruck and anticipating. But these gizmos and their grandiosity shield the reality that the teaching in this class should not identify the new bar—chocolate or otherwise—against which other classes should be measured. TF Oompa Loompas do the majority of the job in section or at office hours, but they cannot make up for all that was lost during fancy videos and minutes of electronic dance music at lecture.

The Crimson is right that the College can learn a lot from CS50’s model. Harry R. Lewis ’68, former dean of the College and current director of undergraduate studies for computer science, is right to pinpoint office hours and a benefit for students of all types (or no types) of computer science backgrounds as areas CS50 should be proud of. Having almost 12 percent of the college enrolled in one course does indeed mean  that course is impressive. It does not mean that the course cannot be improved.

The first comment in the Q Guide’s “What would you like to tell future students about this class?” section summarizes CS50’s notable shortcomings by calling the course “poorly structured.”

“When you start to cover literally a language a day at the end of the course,” the student writes, “and when the psets are completely foreign even when you've attended every lecture, you can get overwhelmed fairly easily.”

Another commenter explains why CS50 problem sets take, according to a plurality of respondents on the Harvard Q Guide (and certainly in my experience), over 14 hours per week.

“Not because the PSETs are extremely difficult,” the student writes, “but because of their length and lack of clarity; office hours are extremely necessary in this course.”

“The secret of this class was office hours,” the student adds. He’s right. Why? One might guess that it’s the high TF-to-student ratio at office hours and the opportunity for one-on-one help. To some degree, that’s true. If you are almost finished with a p-set, having TFs available to take a peek at and help you debug your code is invaluable.

But—and I’m not proud to admit it—that’s not usually why I went to office hours, and I know it’s not why a lot of the people around me at those crowded Annenberg or Cabot tables went either. On more than one occasion—Problem Set 3: Breakout and Problem Set 8: Mashup come to mind—I went to office hours for the walkthrough code. And I left without much more than that.

Let me explain: At every office hours, which are three hours each and take place a whopping four times a week at a predetermined dining hall, one TF leads a walkthrough, where he or she is meant to take students through each step of the p-set to make it a bit more manageable. Ideally, a walkthrough would go through a p-set’s sections and remind students of the skills from lecture that they had already learned and could successfully apply to the p-set. Then, office hours would end, and everyone would get to bed by 10:30 p.m. Wouldn’t that be nice? You bet your CS50 cupcake it would!

But there aren’t enough CS50 stress balls in the world to bridge the gap between that fantasy and how things actually work. Because for referring to previously taught skills to provide enough clarity for students, the skills have to have been, well, previously taught.

Except the teaching part never really happens in CS50 lecture. So referencing the skills becomes useless, and TFs are left to provide students with actual code in the hopes that students understand what they’re being given. A lot of the time, they don’t. And they don’t need to, because major assessments have virtually nothing to do with the p-sets in the class.

If you left me in a room for a week with no other agenda than to redo p-set 8, I would likely still not be able to complete that task. After all, I never learned how to do it in the first place. This is not to say I didn't learn anything from CS50—I learned a lot, and I don't regret taking it. But for the amount of resources the class has and the number of hours it requires from its students, I should have learned more, and I should be more comfortable with the material that was “covered.”

Many TFs justify the cursory attention given to web programming in the last few weeks of CS50 by saying that, in the real world of computer science, we would be similarly be left to Google to learn certain skills. However, if we’re taking a course at debatably the top university in the world—a course that will soon be offered to another set of students at another top university—shouldn’t our teachers be able to break down for us what we could have learned from Google for free? Should Google really have so much to do with a Harvard education?

My answer is no. CS50’s showmanship is top notch, but before Yale becomes our Charlie Bucket and inherits this famous empire, let’s be sweeter to the next crop of students and bring CS50’s bar for substance up to its bar for sparkle.

Rachel C. Talamo ’18, a Crimson editorial writer, lives in Weld Hall.

 

Want to keep up with breaking news? Subscribe to our email newsletter.

Tags
Op Eds