Academic dishonesty includes such behavior as
Collaboration is a difficult issue for students of computer programming. There's a lot of value in students helping each other. I wish to encourage such help, as long as it's really help for the receiving student to learn programming. It's highly unlikely that when student X writes a piece of code for student Y, the latter learns much other than to get X to do Y's work. When X and Y submit dozens or even hundreds of lines of identical code not taken from public domain sources (such as class notes), it will be regarded as unauthorized collaboration unless the assignment calls for collaboration. When X helps Y find and correct an isolated error in Y's code, Y is likely to learn something about programming; such activity will be regarded as legitimate help.
Code presented in class discussions will generally be considered in the public domain - i.e., available to students for use in their projects.
A student found guilty of academic dishonesty will be punished for his/her misdeed as follows. Your score for the assignment or exam on which the cheating occurs will be given by the formula
For example, if a student is caught cheating on a homework assignment for which there are 40 possible points, then the highest possible score is -10%*40 = -4 (negative 4). If the student has, say, an unpenalized score of 20 points, the student's grade will be