CS 115 Introduction to Computer Programming Course Syllabus Fall 2018
Plagiarism / Cheating

Students are expected to do their own work on lecture tests and lab tests and the final exam. Getting answers from someone else for these is cheating.

On attendance activities labeled "co-op" (cooperative) students may work with anyone sitting near them. EACH student must turn in a separate paper with their answers on it.

Most labs will include a "team problem". Students are assigned teams to work with in lab. Each student will contribute to the team's work. The team turns in one product at the end of the lab period. Teams may use any resources that they know of, but must adhere to what has been covered in class. Students are encouraged at all times to use the material covered in class.

For program assignments, students may use any of these resources:

The student MAY choose a partner from the class and exchange ideas with this partner. The partner may be long-term, through the semester or just for one program. The partner may come from any section of the class. Each student may have only ONE partner on a program, not more. Partners are optional; if a student chooses to work by themselves, that is fine.

If a student uses ANY of these resources, they MUST give a reference (a citation) to the assistance in the header of the program being turned in.

If two students decide to work together on the program, they MUST do so BEFORE the first deadline for turning in the source code for the program. The reason for this is that BOTH people need to reference the other in their source code files.

To clarify the program assignments:

If a student talks to two TAs and the lecturer about the program, then those 3 people should be referenced in the program. If the student chooses, they can find a partner in the class to work with on the program. This person would also be referenced in that program. And the partner must reference the student in their program also. If the student finds a snippet of code on the Net that is useful, that URL should be referenced.
If a student turns in a program with NO references, it is assumed to be ONLY their work. If strong similarities are found between two students' programs, with NO references to the other person, then the situation will be investigated as a plagiarism case. DON'T FORGET YOUR REFERENCES! There WILL be penalties!

Don't build a "chain". This means that student A writes the program and gives it to student B. Both reference each other and turn the work in (NOT a good idea because student B probably didn't learn anything, but allowed). Neither student should give help to student C. This is NOT allowed under the policy above and will be classified as plagiarism.

Learning to program is an individual task; you are expected to solve the problems by yourself. One person taking any part of another person's work without their permission and without reference and claiming it as his or her own is plagiarism and will not be tolerated. Any occurrences will be dealt with according to the University policy stated here. This policy allows for a minimum penalty of zero on an assignment AND a warning letter in the student's file. Repeat offenders (in ANY class) face increasing penalties with each offense.

The only way to LEARN programming is to DO programming. If you obtain assistance from any source, make sure that you UNDERSTAND what you are getting. This material will be tested on; if you have not understood it, you will lose more points than you gain. If you have not understood it, you have lost that much experience and will be that much further behind on the next assignment.

Note for "Helpers": if you just give someone your source code, you are not helping them. If you take the time to explain the concepts, so they understand it enough to write their own, then you are helping. If you say "read my code, it will show you how it's done" and then leave, the person you gave it to is NOT helped. You created a temptation to copy the other person's work without figuring out how to solve the problem. You are also required to give references in your work, noting who you helped and with what. If you don't have these references, it is assumed that the other person took your code without permission and the situation will be investigated for plagiarism.

Please protect your source code. You are responsible for making sure that your code does not accidentally fall into someone else's hands. Don't leave memory sticks or printouts in a lab; don't leave source code files on a hard drive somewhere. Be aware that files that you put on the local hard drive (C or D or E) in a computer lab on campus STAY there until they are deleted. They do NOT automatically go away when you log out! If someone else finds your code and turns it in without your permission, YOU are responsible too!

If you get help from a person who is not in the class, be extremely careful. Do not just take code from anyone! Make sure the help you get is using the material covered in THIS class. If you work with a tutor, make sure you understand what the tutor is telling you. If they just "transplant" code into your program, (meaning either they wrote it for you or they dictated while you typed) you are being cheated of the understanding you need to do the next program and to take the Lecture and Lab tests.

All assignments are designed to use the material covered in class. If you cannot figure out how to solve the problem with that, then it shows that there is something you do not understand about that material. It is a red flag to get help from a TA or Dr. Keen and start asking questions!

If you find something on the Net which 'solves the problem' but you do NOT understand it, you have cheated yourself of the understanding you need. When the next quiz or test or programming assignment comes along, you will not have the knowledge you need. If you get something from the Net, you MUST cite it with the URL. You should trace the code from the Net multiple times so that you thoroughly understand it and then write it on your own. That way you know you have grasped it.

It is very EASY to glance over someone else's code and say "I can do that". It is the same as watching someone doing tricks on a skateboard or solving a math problem. Watching is NOT the same as doing! You have to fall off the skateboard and get back on it to really learn how to do it.

All programs will be checked by plagiarism detection software. This software works across ALL sections of the class.

This policy is an experiment. If it becomes obvious that it is not working, changes will be made with sufficient notice to the students. The instructor reserves the right to make changes to this policy. Once changes have been announced, they apply to the next assignment.