More specifically, you should do your own problem solving, program design and decomposition, and design your own data structures. In conversation with other students, be sure not to venture into design and coding specifics, and especially never sit down with someone else before you've analyzed the problem in depth on your own. To be blunt, the most blatant violation that can occur is code-copying, and this absolutely will not be tolerated. All programs will be completed by two-person groups, except for the initial warmup assignment . Obviously, sharing code within your group is acceptable and desired.
Similar guidelines hold for written homework assignments.
You may work in groups in the process of solving the problems, but in all circumstances, the answers must be yours. We believe that this policy is explicit enough to guide your judgment and that we have not left you many gray areas. If you are ever in doubt about the legality of your actions, be sure to clear them with a TA, even if only after the event has occurred. Again, note that you are expected always to approach a problem initially on your own and seriously attempt to find a solution. You are honor-bound to preserve your independence of thinking.