The SIGCSE mailing list has been having a very active discussion of plagiarism in computer science classes of late. These discussions seem to recur with disappointing regularity. If not in the SIGCSE list they show up on the APCS mailing list. These discussions tend to follow some very predictable paths. They start with attempts at writing a bulletproof statement of acceptable use and reuse. Students are amazing “classroom lawyers” and find loopholes that a tax attorney would be amazed at. This leads invariably to a discussion of what is and is not plagiarism. Code sharing? A good think in the professional space. There are “how do you?” type sites that are widely used by developers at all levels to learn. So where is the line between learning from a code sample and “stealing” code? And where does open source fit into the discussion? It’s all so much more complicated than one would ever hope it would be. I’m not sure I am ready to jump into the discussion at that level. What I am really interested in where all this leads in terms of education. Here is where a comment by Jim Huggins from the Computer Science Department at Kettering University who wrote:
A student who pursues good grades rather than a good education will ultimately receive neither.
Some times these arrival of poor grades comes later than we’d like. One would like to see these poor grades come early enough in a student’s educational career to serve as a wakeup call. Some students are just outstanding at gaming the system and so realize too late that they haven’t really learned enough of a real education. This is their loss mostly but it is also a loss for society. Imagine if that talent was trained with real education? Alas, too many students get through with a transcript that doesn’t reflect the reality of what they know. Or don’t know.
What is the responsibility of the educator here? I remember when I was a high school student my teachers and guidance counselors told me that university professors would not care if I failed or succeeded. It would be up to me. I didn’t find that to be true where I went to university though. I found faculty would who go far out of there way to help me succeed. Of course they expected me to do may part. They expected me to work and to do my own work. They’d help me as long as I would work with them and not expect them to carry me. I learned a lot from them. Arguably students who plagiarize or otherwise take short cuts are not doing their part.
It is tempting to ignore the plagiarism and wait for the inevitable failure to wake the student up. There are problems with this attitude though. One is that with our over emphasis on grades too many students are likely to see others getting away with cheating and decide that they need to do the same to “keep up.” This is unfair to otherwise good honest students. Arguably it is also a failure on the part of educators to do a complete job of education. So where do we go?
Ethics also comes up in the plagiarism discussion as you might expect. This seems to be increasing in importance for teachers of all subjects but especially for computer science educators. Not just because of plagiarism but the many societal issues that computer science is developing as unintended consequences. Ultimately perhaps the answer to plagiarism is not a bulletproof set of rules but an honest discussion of the purpose of projects, tests and other evaluative tools. If students were able to buy off on the importance of learning over grades and understand that evaluations are tools to help them as much if not more than to show up on their transcripts maybe the drive to cheat would diminish? Can we restore the idea of educators and students are partners in learning rather than opponents fighting about grades? Seems like something we should be trying.