CIT Academic Integrity Policy
Fall 2002, David Matuszek |
You may:
- Discuss the assignments with one another.
- If you don't understand something about the assignment, ask. The best
people to ask are myself and my teaching assistants, but there is no harm
in talking to other students about the assignments.
- Help others debug their work.
- Sometimes other people will notice immediately something that you have
spent hours trying to find. Maybe they've had the same problem. Being
"stuck" for long periods is not a good way to learn.
- More often than not, your errors become obvious when you try to explain
your program to someone else. The other person doesn't even have to be
a programmer; in fact, it's probably better if they aren't a programmer.
It's often said that explaining your program to your dog can be
a big help.
- If you help someone else, don't overdo it--don't write their program
for them. Help them understand their errors and how to fix them, but don't
do it for them.
- If someone is helping you, do not let them take a copy of your program.
Not everyone is honest.
- Use, without attribution, anything I post to the Web.
- If I post it, it's so that you can use it. I will know where it came
from.
- However, it's an important habit in general to give credit to any source
that you "borrow" code from--it's the honest thing to do.
You may not:
- Work together on the same program.
- I emphasize this one because this is where I always hear, "but
I didn't understand."
- Talking about the program is fine, but when it comes to writing the
program, do it by yourself.
- Writing programs jointly is unacceptable. You will be caught
and you will fail.
- If you write a program jointly and try to hide the fact by making cosmetic
changes, this will be regarded as further evidence that you know the rules
and are being deliberately dishonest.
- Working together may be acceptable in your home culture, and it is usually
encouraged in business; it but working together is not acceptable
in this educational system.
- If you discuss your assignment extensively with another student, and
make reasonably detailed plans about how you will do it, and then go
off and each write each program separately, you will be surprised
at how different they turn out. I have never had a problem with
programs that were "accidentally" the same.
- Copy another’s code.
- If you copy someone else's program--even just a part of it--the fact
will be noticed.
- Allow your code to be copied.
- Fair or not, this is the rule. If you and someone else turn in the same
program, both of you are guilty, regardless of who did the actual work.
- Lend your code to someone else.
- There is no good reason to do this, and if they copy your program, you
are at fault.
- Leave your code lying around where someone else may copy it.
- Please be careful with your floppies and your program listings.
Please.
- If you lose a disk, just tell me. Tell me right away. So long as I know
about it before I discover that someone else has turned in the
same program, you won't be in any trouble.
- Use any code from textbooks or the Web without my permission.
- Let's be clear. There is no problem with looking up how to do
something, and copying two or three lines to, say, open a file, or create
a Frame. Even an entire method of, say, ten lines, should be OK--particularly
if it's a general-purpose thing that might be used in a lot of different
programs.
- Finding code that does a significant part of your assignment, and using
it, particularly if you use it without attribution, is a violation.
- For the most part, it should be pretty obvious what is assignment-specific
and what is general-purpose. If in doubt, ask me.
- Have someone else write your program for you.
- This one is so obvious I didn't even think to mention it in my lecture.
Penalty for first offense:
- You will be reported to the Office of Student Conduct.
- You will receive an F in the course.
If you think you may have accidentally broken a rule, come and talk to me about
it. You will be much better off than if I discover it myself.
I don't want to catch you cheating. It hurts you and it's a lot of work
for me. I go to a huge amount of extra effort to make it difficult to cheat.
But it's my job to watch for cheating, it's my responsibility to make things
as fair as possible, and I'm good at it.