Plagiarism guide

In this of this document, we discuss what plagiarism is and why it is bad, discuss the use of the internet, provide some rules of thumb, explain what you should do if you get stuck, explain our enforcement of the rules, and discuss the consequences if you are caught. There is a subtle distinciton between plagiarism and fraud, but for the sake of simplicity we refer to both as 'plagiarism' in this document.

TL;DR Make your assignments by yourself. Never share your code with others. Don't use the internet to look for (parts of) solutions to the graded assignments. If you get stuck, ask a TA or use the discussion board. We check for plagiarism with software and manually. If you get caught, you will likely get booted from the course or worse. A low grade that only counts for 10% is not the end of the world, and far better than jeopardising your diploma.

Why is plagiarism a problem?

The economics behind plagiarism

As we are at a school of economics, I feel like I owe you a better explanation than simply 'plagiarism is bad!'. In addition, I hope that it also makes it easier to be able to determine for yourself if something is or is not allowed.

The goal of this course is to make you learn the basics of programming. This is hopefully something you desire as well. Unfortunately, experience has taught us (and probably yourself) that there exist many short-term temptations and distractions that hamper this learning process. To help you resist these temptations, we provide assessments which come with short-term consequences (a good or bad grade). The hope is that such short-term consequences are enough to help you overcome the short-term temptations and distractions.

The main component of the assessment in this course is the final exam, which counts for 70% of the final grade. In addition, to provide even shorter-term incentives we also have three graded assignments throughout the course that each count for 10%. These assignments function as both an assessment and learning material.

This is where plagiarism enters the picture. To be a good motivator for studying, the assessments should reward you for mastering the material: they should be quite easy to pass if you master it, but very difficult to pass if you do not. Unfortunately, this is difficult to ensure if the work you hand in does not reflect YOUR mastery of the material. This could happen if you use the work of someone else and present it as your own. This is the reason we prohibit you from committing plagiarism. In short: the only reason plagiarism is forbidden, is to help you to stay motivated to study.

If plagiarism was easy to detect and deal with, we could simply give you zero points for a 'plagiarized' assessment: it simply does not tell us anything about your mastery of the material. Unfortunately, it is sometimes difficult to discover and is quite a hassle for us (and the examination board) to deal with. So, to disincentivize you from committing plagiarism, there are serious penalties attached.

Use of the internet

As explained above, plagiarism is forbidden because the work you hand in is no longer an accurate reflection of your understanding of the material. Relating to use of the internet, this can sometimes be confusing. When programming in a 'normal' setting, it is extremely common to use the internet as a source: why would you spend hours trying to solve a problem, if someone else has already solved it for you?

During a programming course, this is unfortunately a problem because you will learn how to solve such problems. This won't happen if you simply copy (important parts of) your solution from the internet. On the other hand, we do want you to also learn to use the internet as a source when programming.

Rule of thumb

For the reasons mentioned above, we provide you with the following rule of thumb:

You are allowed to use the internet / fellow students / 'others' to help you understand Java or programming in general, but you are not allowed to use them to obtain (partial) solutions to the graded assignments.

For example, suppose we ask you to write a program that solves a Sudoku puzzle, then:

NOT OK:

  • asking someone for help to make a sudoku solver
  • googling something like 'sudoku solver java' / 'sudoku in java'

OK:

  • asking a TA / teacher for tips on how to get started with making a sudoku solver
  • asking someone else how you can store numbers in a 2D grid in java
  • googling 'looping over rows of array java'
  • looking up the rules of sudoku
  • asking someone else for a clarification of the exercise (but be careful here!)

What if you get stuck?

If you get stuck with a graded assignment, you have two options: you can ask a TA during the practicals or post on the discussion board. Do note that you should never post your code on the discussion board, as all other students can read it!

Finally, there is of course also the option of simply handing in a partial solution, and you will likely still earn some points for that.

Enforcement

To enforce the rules, we use so-called plagiarism detection software that is made specifically for checking Java code. Furthermore, we manually check your solutions for anything suspicious. Speaking from experience, it is surprisingly easy to detect in code, especially in the work of a beginner programmer. In the 5 years I have been teaching introductory programming courses, I have sent over 50 students to the examination board.

Note that the software does not only compare your work to the work of your fellow students, but also to content that was handed in in previous years, as well as the internet. Moreover, if you were able to find something online, then another student will likely also have found it. So if you both hand it in, then it will appear as if you both have worked together.

Consequences

In every case that we suspect cheating, we are obliged to notify the Examination Board and provide evidence. The board will investigate and impose sanctions. The minimum sanction is typically that the grade is nullified and the student may not participate in the course for one year. In severe cases, the student can be terminated from the programme. In very severe cases, it may even be prosecuted as a felony offence under the Dutch criminal law code.

Any of the above sanctions can have dramatic consequences for your future. So, we strongly recommend you not to cheat.