I used to host some code I'd written for university assignments publicly on my GitHub account (after the deadlines had passed, of course). Before long, I received an email from the dep't asking me to take it down due to fears of plagiarism (if students were given the same or similar assignments in the years subsequent).

I did so, but recently I've been thinking - my university uses Turnitin for plagiarism detection, which as I understand it means that my code is already in the Turnitin database as shown in the below excerpt from this FAQ:

Misconception 7: Every student paper submitted becomes part of the Turnitin database--forever.

Reality: Turnitin has many options--including the ability to offer students an "opt out" of the database and the option of having an institutional database of student papers. Student papers may be removed only by request of the instructor of the class.

I don't recall opting out of anything, so if my code is in the Turnitin database surely undetected plagiarism wouldn't be an issue? Of course, the morality of providing a desperate student with both the temptation and means to plagiarise is another issue entirely.

  • Checking against too much published code could lead to false positives. There are typically only a few approaches to solving a given student assignment. That limited space could become filled with published code, so that even a completely independent solution would match at least one published solution. Jan 19, 2017 at 16:09
  • TurnItIn is iffy at best. I remember when we tested TurnItIn when it was first released. Everyone was tasked with writing a one-page paper utilizing the same single half-page source. And that was the day our entire class got hit with "50% similarity" to each other. With code, it's virtually impossible to stop, what with open source code and only so many ways to write an if statement.
    – Compass
    Jan 19, 2017 at 16:49
  • 4
    This is tangential to the question, but this makes me wonder if the university can in fact "restrict publication of work due to plagiarism fears". It sounds like they asked you to take the github code down, but it's not clear to me you should feel obliged to comply with the request, nor that it is appropriate of the university to ask such a thing, considering the fact that your code could help lots of other people out there who have no desire to commit plagiarism, and that this can be a useful way for you to show off your programming abilities (and generosity) and thus help your own career.
    – Dan Romik
    Jan 19, 2017 at 17:37
  • 1
    I have posted a separate question raising the concerns in my comment above.
    – Dan Romik
    Jan 19, 2017 at 17:53
  • 1
    @DavidRicherby My former statement asserts that it was bad when it came out. My latter statement asserts that computer code is (still) virtually impossible to validate because coding statements are relatively immutable. import java.util.Date; will be the same in 100% of programs, as will Date date = new Date();. If I decide to check in, and properly source, the entire open-source library of Apache, it will match 100% of that code, which it needs to run. It is not dependable in the field of computer science because of how computer science is.
    – Compass
    Jan 19, 2017 at 19:55

3 Answers 3


Those plagiarism checkers can only detect certain kinds of plagiarism. They will detect for example if text parts are the same. They won't detect missing references or plagiarized ideas.

If you host your assignment there, then others can be "inspired" by that, and if they rewrite everything in their own words and change the code in certain ways but don't cite your GitHub project then it would be plagiarism. But Turnitin might not recognize it as such. Especially since I guess you would need to set the detection level quite low, because for such assignments there will always be a certain overlap in the results if everyone solves the same problem.

  • 1
    This - it invites code obfuscation to make it "read" differently while doing little to change the underlying code.
    – Fomite
    Jan 19, 2017 at 23:51

In such a case I don't think it would be copy-paste plagiarism that would be an issue. It's just that students could read your work and know exactly how to solve their issue, and they wouldn't need to cite your work and just play it off as if they figured it out on their own.

On the other hand, I don't think it's a very good way to handle things, especially in coding assignments. Part of it is just the nature of coding, where learning to read others code is very important, and it's even more important to learn to adapt existing code to new and different purposes. Only small changes would be needed in the assignment to make it so students couldn't just use existing work, so it seems like the concern could be overblown, but I can't say for sure without knowing the exact nature of the assignment and grading methods.

The other issue is that just by asking you to take down a public, equally shared resource, where both students and faculty could be equally aware of the work, doesn't mean students won't pass around past years versions of work anyway. Except then only a limited subset of students will have access to the resources (ones in particular social groups, etc), and it is unclear who has and who hasn't seen previous solution sets.

I know many instructors would love to have their students be sufficiently proud of their work to want to share and have other people read it, and especially to have struggling students study the work of such students and see how they do things. Seems like a great outcome, really. And it seems to be pretty well accepted that in this highly-connected point in history, that you can't rely on simple secrecy in tests - you need to tweak and change things each time so that students can benefit from previous years work, while at the same time still needing to perform their own new work.


I am a three-time loser on applying for a job at TurnItIn, so I don't know if they are smart enough to mark computer source code as needing special treatment. A stupid plagiarism checker would be defeated by global search and replace on variable names.

  • Sure it does. The university fears that TurnItIn won't catch source code plagiarism as well as it does with natural language plagiarism. Sep 12, 2018 at 20:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .