Plagiarism checker for all common programming languages including Python, Java, Jupyter Notebook and C
October 29, 2020

How to check for plagiarism in Python source code

There has been a rapid increase in popularity of Python courses at universities and colleges worldwide for the past years, with more and more teachers using Python in their programming courses. Thanks to Python’s simplified syntax, rapid prototyping and ease of use, it’s an excellent language to use as an introduction to programming. But also more advanced courses in data science, machine learning and scientific computing have adopted Python thanks to its flexibility and modularity - using packages like Numpy or Scipy, to get Matlab- and R-like behaviour, or Jupyter Notebooks for a more scientific approach.

With an increasing number of students pursuing courses in Python, it has become further important to maintain academic integrity in the Python source code too. Detecting plagiarism is important not just to avoid having plagiarised source code but also to encourage students to learn, practice and test their own programming skills by submitting original content. 

We see that teachers unfortunately often still have to skip checking for plagiarism, as it is simply impossible to manually check for plagiarism in student submissions in all the student submissions and using separate plagiarism checker tools is found to be too cumbersome. Having to manually copy and paste source code to another tool and manually parsing results often only increases an already huge workload of teachers. Because of this, teachers often do acknowledge the importance of detecting plagiarism, but simply lack the time to do so effectively. Want to learn how to autograde Python code too? Click here for our blog on autograding Python and Jupyter Notebook assignments!

Start using a plagiarism checker especially designed for code!

With CodeGrade, teachers can finally check for plagiarism on Python source code with only a single click. CodeGrade is integrated directly into your learning management system (such as Canvas, Brightspace, Moodle, Blackboard and Open edX) so that all source code is directly taken into account in the plagiarism check and results are easily accessible via your LMS with our intuitive side-by-side comparison view. The CodeGrade plagiarism detection software works with Python, Juptyer Notebooks and packages like Numpy or Scipy, in addition to many other common programming languages including C, C++, C#, Java, PHP, R, Scala and JavaScript.

CodeGrade's Python code plagiarism detection check result.

Unlike other plagiarism detection tools, CodeGrade’s plagiarism checker is designed especially for source code: it does not simply check literal similarities in text, but looks for similarities in code structure after parsing and translating the code. Additionally, it allows you to upload template code to ignore or include source code from third parties in your plagiarism check. This helps it easily detect students’ plagiarism, even when students try common tricks like:

  • Changing variable or function names
  • Adding or removing documentation
  • Altering the order of lines
  • Adding dummy code

Plagiarism detection is just one of CodeGrade’s many tools designed for computer science education. Next to our plagiarism checker, CodeGrade features autograding, instant feedback to students, tools for efficient manual grading, intuitive rubrics, powerful analysis tools and peer feedback for code. 

CodeGrade not only helps you detect plagiarism in student code, it is a full grading platform with all the tools you need for engaging and efficient future proof ICT education. To learn more about CodeGrade and its features, check out our tour page, or our YouTube channel with videos explaining how to use CodeGrade. Please feel free to book a demo if you are interested in getting CodeGrade at your institution, or in case you have any further questions.

Continue reading

Start using CodeGrade now to supercharge your feedback on code.