To do:
Don't cheat. For programming assignments, this means: write your own code. Do not share even one line of code with another person, do not turn in even one line of code written by someone else, or based on code written by someone else!
For written homework assignments, this means: write up your solutions by yourself.
Collaboration is encouraged. In some areas of the course you may be at the bottom of a learning curve. This can be an uncomfortable place to be. The way out is: Get engaged with the ideas. Discuss the ideas and the problems with other people. As in learning a new language, recognize that progress takes practice and time.