Person:

Yu, Brian

Loading...
Profile Picture

Email Address

AA Acceptance Date

Birth Date

Research Projects

Organizational Units

Job Title

Last Name

Yu

First Name

Brian

Name

Yu, Brian

Search Results

Now showing 1 - 2 of 2
  • Publication

    Teaching Academic Honesty in CS50

    (ACM, 2020-03) Malan, David; Yu, Brian; Lloyd, Douglas

    We aspire to teach academic honesty in CS50 at Harvard University not only by addressing academic dishonesty when it occurs but by addressing it before it does. By way of communication, course- and campus-wide awareness of policy, just-in-time prompts, interventional conversations, and problem sets have we tried to preempt submission of plagiarized work. But few interventions have had significant or lasting effects on the number of instances thereof. Most impactful has been the addition of one sentence to the course’s syllabus, a “regret clause” that encourages students to come forward within 72 hours of some dishonest act on their part, before the course itself is even aware. While we might zero the work in question in such cases, we commit to not escalating the matter further to the university’s honor council, where the outcome might instead be admonishment, probation, or even required withdrawal from the university itself. We instead advise students on how best to move forward and connect them as needed with support structures on campus for academics and mental health. Since 2014 have 89 students invoked the clause, between 1% and 3% of the course’s student body each year.

  • Publication

    An Open-Source, API-Based Framework for Assessing the Correctness of Code in CS50

    (ACM, 2020-06) Malan, David; Yu, Brian; Zidane, Kareem; Sharp, Chad; van Assema, Jelle

    We present check50, an open-source, extensible tool for assessing the correctness of students’ code that provides a simple, functional framework for writing checks as well as an easy-to-use API that abstracts away common tasks, among them compiling and running programs, providing their inputs, and checking their outputs. As a result, check50 has allowed us to provide students with immediate feedback on their progress as they complete an assignment while also facilitating automatic and consistent grading, allowing teaching staff to spend more time giving tailored, qualitative feedback.

    We have found, though, that since introducing check50 in 2012 in CS50 at Harvard, students have begun to perceive the course’s programming assignments as more time-consuming and difficult than in years past. We speculate that the feedback that check50 provides prior to students’ submission of each assignment has compelled students to spend more time debugging than they had in the past. At the same time, students’ correctness scores are now higher than ever.