Answers.Body: <h1>Growth</h1>
  <p>You say they copy the intelligent students, so first watch <a href="https://www.ted.com/talks/carol_dweck_the_power_of_believing_that_you_can_improve?language=en" rel="nofollow noreferrer">https://www.ted.com/talks/carol_dweck_the_power_of_believing_that_you_can_improve?language=en</a></p>
  <h1>Feedback</h1>
  <p>Then stop with the sumative assessment (Stop grading them). Encourage mistakes: I just heard of a company that has a mistakes wall. They seed it with a few famous quotes about mistakes. Then the leaders (teachers) add some and sign them. If others (students) add to the wall, then the first ones are praised (and awarded prizes), until it becomes the norm.</p>
  <p>Help them to get in a situation where they are making small changes, making many small errors, experimenting, learning from feedback as the program runs. Give them code to change. Encourage small changes. Encourage testing after every change.</p>
  <h1>Programming</h1>
  <p>Before teaching programming languages, teach them how to program, and before that teach them how to solve problems: That is start unplugged.</p>
  <p>Get them to do every problem manually. Teach them to think like a computer. Get them to solve problems like they are a stupid robot.</p>
  <p>Then get them to document what they have done. As a set of steps. Get them to test it. Get them to ask their peers to test it. Show them how to test it. Get them to debug/fix it. Show them that you make mistakes. Show them how you fix your own mistakes.</p>
  <p>Then when it is working, show them how to translate it, into the chosen programming language.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-05-05T12:28:41.580Z
Answers.Text: Note that CS Unplugged is actually a thing. Some of my students have been involved in these concepts: https://csunplugged.org/en/
Answers.UserDisplayName: Buffy
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-05-05T12:45:13.487Z
Answers.Text: @Buffy I love that resource, but I don't mean only that: If they don't provide a resource, then you may have to create your own, or get it from else where.
Answers.UserDisplayName: ctrl-alt-delor
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-05-04T20:09:14.703Z
Answers.LastActivityDate: 2019-05-04T20:17:53.840Z
Answers.LastEditDate: 2020-06-18T08:36:57.023Z
Answers.UserDisplayName: ctrl-alt-delor
Answers.Body: <p>I have been fighting this for 30 years without a true solution.  I think it is human nature to take the shortest way and if that involves copying code the students will do it.  I teach at a high school and my classes are small enough to actually see the kids code so I have less issue with this than those teachers with large classes or classes where the students do all their coding outside class (university classes).  Some students like the challenge coding presents and will do their own work.  Others are not into challenges and will be perfectly happy with copying.  Solutions?  Slightly unique assignments, tests on code understanding, and short live coding quizzes.  Some are practical, some only kind of work.  Good luck.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-01-30T19:42:47.437Z
Answers.Text: Thank you for acknowledging that this is not necessarily an entirely *solvable* problem. If you think your students are never getting things over on you, you're either delusional or just not thinking it through properly.
Answers.UserDisplayName: Ben I.
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-01-30T19:34:13.863Z
Answers.LastActivityDate: 2020-01-30T19:34:13.863Z
Answers.UserDisplayName: Garth Flint
Body: <p>Mostly students can't code or they are not interested or they become lazy in their work or they are not confident enough to make their own logic and check it before teacher.  </p>
  
  <p>For all these students they copy code assignments from other students (which are the intelligent students of the class) and hand it in to the teacher.  </p>
  
  <p>So which method must be applied to them so that all students start to code on their own, make their own logic and be confident on their own work?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-05-04T20:36:09.733Z
Comments.Text: Why are they so uninterested? Is this just a requirement imposed on them that they don't value?
Comments.UserDisplayName: Buffy
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-05-04T23:10:30.543Z
Comments.Text: I think there are a number of problematic assumptions here. It may not be confidence. There could be any number of outside factors that lead a student to copy, e.g. stress, home life, workload from other classes, etc. Sometimes it is pure naivete. I've seen all of them. Also, leading with the idea that most students "can't" seems to begin with a defeatist approach that limits the potential of students before they even begin.
Comments.UserDisplayName: Peter
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-05-04T23:43:53.223Z
Comments.Text: I don't think most students begin a class in a brand new topic intending to cheat. Typically, they miss something and get overwhelmed, begin to feel hopeless, or feel like they are drowning in their overall workload too much to fix the problem.
Comments.UserDisplayName: Ben I.
Tags: <student-motivation><struggling-students><cheating>
Title: How to make students confident enough to stop copying each other's code assignment?
ThreadText: # How to make students confident enough to stop copying each other's code assignment?
  
  (Asked by: username_0 on 2019-05-04)
  
  Mostly students can't code or they are not interested or they become lazy in their work or they are not confident enough to make their own logic and check it before teacher.
  
  For all these students they copy code assignments from other students (which are the intelligent students of the class) and hand it in to the teacher.
  
  So which method must be applied to them so that all students start to code on their own, make their own logic and be confident on their own work?
  
  **Tags:** student-motivation, struggling-students, cheating
  
  > **Comments:**
  > **username_1**: Why are they so uninterested? Is this just a requirement imposed on them that they don't value?  
  > **username_2**: I think there are a number of problematic assumptions here. It may not be confidence. There could be any number of outside factors that lead a student to copy, e.g. stress, home life, workload from other classes, etc. Sometimes it is pure naivete. I've seen all of them. Also, leading with the idea that most students "can't" seems to begin with a defeatist approach that limits the potential of students before they even begin.  
  > **username_3**: I don't think most students begin a class in a brand new topic intending to cheat. Typically, they miss something and get overwhelmed, begin to feel hopeless, or feel like they are drowning in their overall workload too much to fix the problem.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_4 on 2019-05-04. Score: 4 | Accepted answer
  
  # Growth
  
  You say they copy the intelligent students, so first watch <https://www.ted.com/talks/carol_dweck_the_power_of_believing_that_you_can_improve?language=en>
  
  # Feedback
  
  Then stop with the sumative assessment (Stop grading them). Encourage mistakes: I just heard of a company that has a mistakes wall. They seed it with a few famous quotes about mistakes. Then the leaders (teachers) add some and sign them. If others (students) add to the wall, then the first ones are praised (and awarded prizes), until it becomes the norm.
  
  Help them to get in a situation where they are making small changes, making many small errors, experimenting, learning from feedback as the program runs. Give them code to change. Encourage small changes. Encourage testing after every change.
  
  # Programming
  
  Before teaching programming languages, teach them how to program, and before that teach them how to solve problems: That is start unplugged.
  
  Get them to do every problem manually. Teach them to think like a computer. Get them to solve problems like they are a stupid robot.
  
  Then get them to document what they have done. As a set of steps. Get them to test it. Get them to ask their peers to test it. Show them how to test it. Get them to debug/fix it. Show them that you make mistakes. Show them how you fix your own mistakes.
  
  Then when it is working, show them how to translate it, into the chosen programming language.
  
  > **Comments:**
  > **username_1**: Note that CS Unplugged is actually a thing. Some of my students have been involved in these concepts: https://csunplugged.org/en/  
  > **username_4**: @username_1 I love that resource, but I don't mean only that: If they don't provide a resource, then you may have to create your own, or get it from else where.  
  
  ---
  
  ### Answer by username_5 on 2020-01-30. Score: 2
  
  I have been fighting this for 30 years without a true solution. I think it is human nature to take the shortest way and if that involves copying code the students will do it. I teach at a high school and my classes are small enough to actually see the kids code so I have less issue with this than those teachers with large classes or classes where the students do all their coding outside class (university classes). Some students like the challenge coding presents and will do their own work. Others are not into challenges and will be perfectly happy with copying. Solutions? Slightly unique assignments, tests on code understanding, and short live coding quizzes. Some are practical, some only kind of work. Good luck.
  
  > **Comments:**
  > **username_3**: Thank you for acknowledging that this is not necessarily an entirely *solvable* problem. If you think your students are never getting things over on you, you're either delusional or just not thinking it through properly.  
  
  ---
  
  