Collaboration Policy
Collaboration Policy
This is a course where you will learn only by doing, which is why we want you to work through the homework problems on your own. The exams will be very similar to the homework, and you cannot do well in the class without doing well on the exams.
You are free to work with others to discuss course concepts and work through practice problems, however you must write your own solutions to homework assignments from scratch, by yourself. You must also acknowledge any related discussions you had with others in comments for each problem submission.
The following collaboration is always prohibited for homework assignments:
- Looking at someone else’s code
- Showing another student your code
- Discussing code in line-by-line detail with another person
- Posting your code to any public place where another student could see it
- Looking at solutions to these problems or similar problems found online or printed out
- Copying code from any website
This does not apply to discussions with course staff: if you find that you are stuck on a problem: talk to a TA or your professor in lab or office hours. If discussing course concepts with another student, limit yourself to high-level discussion of problem structure; do not discuss the Python code. Work through a similar practice problem together, rather than a homework problem.
If you feel like a discussion with any person (including the professor and TAs) helped you answer a homework problem, include their name(s) in your comments at the start of that problem. If you use a Python reference other than what we provide, cite the reference in your comments at the start of the problem. In the event your collaboration exceeds what is permitted, the penalty will be substantially reduced (or waived) if such a thing is an honest mistake as evidenced by these comments.
This policy is not a game and we expect that you will not attempt to circumvent it.
We are able to detect when you copy code, even if you make modifications.
Your homework is automatically graded by software, but it is also subject to periodic review by human beings. When you turn in your homework to the submission server, you will get a grade for the correctness of the code immediately: we want you to have quick feedback. That quick feedback is only on the code’s correctness. Human review takes more time.
At any point during the semester, you may be asked to explain the function of homework code you have submitted; if you are unable to do so, you will lose credit for that homework assignment. If we discover at any point during or after the semester that you have violated the collaboration policy, you will be formally referred to the Office of Student Rights and Responsibilities for Academic Dishonesty. If this happens, you will fail the assignment in question and, additionally, your final course grade wil be reduced one full letter grade (“A” becomes “B”, “B+” becomes “C+”, etc.).
If write all of your code yourself, you have nothing to worry about.
Generative Artificial Intelligence / Large Language Models
Copying any code for homework assignments from an AI assistant or Large Language Model such as (but not limited to) ChatGPT, Copilot, or Claude will be treated the same as copying it from another person or from any other online resource. It is not permitted on any homework assignment, and it is considered cheating. If your internet seaches include AI features, turn them off.
Tutoring
We recommend that you do not hire external tutors. We offer extensive extra help via office hours and the Ed discussion board. Turning in code written by an external tutor is not permitted.