Brown University has an Academic Code that governs all our transactions. This Code includes a section on Respect for the Integrity of the Academic Process, which establishes its policy on cheating. We expect that you, as students and scholars, will abide by this faithfully and fully.
Because Brown does not operate on an honor code, we have no choice but to police you, even though this saps valuable time and weakens the spirit. Therefore, we will check for violations of the Code. If we believe you are in violation, we will prosecute as per the department’s and Brown’s regulations.
You are forbidden from using Internet resources for assistance other than those specifically linked from the course website. Be aware that we monitor many of these resources, so do not even try.
We have prosecuted students who violated this policy in the past, and will not hesitate to do so in the future.
Working in Teams
The purpose of assignments in this class is to help students learn key ideas in programming languages. Some (not all) assignments require a certain insight, or at least careful analysis, that is much harder to generate or perform than to merely replicate. We believe that doing it for yourself, though harder, is the only way to truly understand that insight or analysis.
You will do most assignments in this course in a team. For those assignments, you can and should work collaboratively with your team members, but you may not communicate in any way about the homeworks with members of other teams. You may be on multiple teams at the same time; be careful to keep these identities separate. On solo assignments, you must work entirely alone. Under no circumstance may you have a discussion outside your (single or multi-person) group that makes a task significantly less challenging as a result of the discussion.
The only permissible communication outside the above guidelines is with course staff. If ever in doubt, ask the professor, even if it's after a possible violation. Ignorance is no defense.