Yesterday the New York Times published an article on cheating in university computer programming courses. To anyone who has taught a programming course, much of the narrative is probably all too familiar. Nonetheless, it is interesting to see it featured in mainstream media, it is helpful to hear about what is happening at different universities, and it may play a small part in refocussing the communities involved. This is important as the number of students taking computer science courses is increasing, as is their diversity (k-12, extracurricular, university non-majors, etc.). In addition, major efforts are under way to increase student diversity in terms of age, gender, ethnicity, socioeconomic background, and other ways. As a result of increasing student numbers and diversity, the numbers and diversity of teachers and institutions are also set to increase, making the issue of plagiarism one that is likely to continue to crop up in new and interesting ways.
The article goes into details on academic misconduct in programming courses, and methods of dealing with it, at Purdue, Berkeley, Brown, Stanford, Yale, and Harvard (including the popular CS50). It states that in some institutions, computer science courses have become some of the most common sources of academic honesty incidents, but also states that many computer science educators reject that their courses are any more prone to cheating than those in other disciplines. This view is supported by a quote from Alex Aiken, the head of computer science at Stanford who mentions the tendency for computer science educators to actually check assignment submissions for plagiarism as one of the reasons for the number of cases, along with citing recent high-profile cheating scandals in other disciplines that have received wide media attention.
The use of software-based methods of detecting plagiarism such as MOSS and Codio are discussed, and I suspect used fairly widely, but there was also mention of other more novel strategies to cope with plagiarism. One of these is the ‘regret-clause’ introduced in Harvard’s CS50 by David J. Malan, which lets students who cheat and admit it within 72 hours receive an unsatisfactory or failing grade on an assignment, and avoid further discipline – however repeat offenders don’t have this option.
Some of the other discussion surrounds the grey area between the collaborative ethos in programming where code sharing and reuse is commonplace, and policies on academic honesty. The problem is that many of the practices employed by software developers in the workplace violate academic honesty policies. So we are teaching students to work in highly collaborative environments, in educational environments where their collaborative abilities are restricted. A case in point is instructors encouraging students to work together, but demanding that assignment submissions be unique. This creates a grey area where guidelines on what is acceptable and what is not can become confusing to students. In the article, Paul North, a professor of German and chair of the executive committee at Yale acknowledges that compared to the guidelines “… the code to be written seems simple …”. It is my opinion that programming courses (or computer science departments) often need specific guidelines for their students. Trying to apply catchall policies and guidelines designed for any discipline is sure to lead to grey areas in computer science courses, particularly those that involve programming assignments.
It was interesting to read that many computer science professors are now delivering stern warnings at the start of each course – this is something that done at all of the institutions I have taught at. Although I didn’t think it was a unique practice it is interesting to hear that it is actually common. I wonder if computer science does this more often than other disciplines. My feeling would be yes, but I don’t know.
One thing is for sure – the ways that computer science educators deal with plagiarism need to be continuously adapting. Almost everything about computer science (particularly in the way it is taught and learned) is changing at a phenomenal pace and that isn’t showing any signs of abating.