<p>This is the misconception many new CS students have. </p>
<p>"Sahami says computer science students mistakenly believe that writing software code is similar to solving a mathematical proof, where one correct answer exists. What students don’t realize is that software code is more akin to writing an essay and that a significant amount of creativity is involved. "</p>
<p>[Why</a> computer science students cheat](<a href=“http://www.networkworld.com/news/2010/041910-computer-science-cheat.html]Why”>http://www.networkworld.com/news/2010/041910-computer-science-cheat.html)</p>
<p>Well a huge part of it is that introductory CS students don’t put the requisite amount of time into assignments and do not get started early enough.</p>
<p>There is also the concept that some people either “get” programming or they don’t, because of how their brains are wire or some such thing. It’s a concept I lean towards a belief in.</p>
<p>There are multiple ways to write a given program, as there are (sometimes) multiple (known) ways to prove a theorem. As is the case in proving theorems, sometimes there are programs that are written that are more elegant or more concise than others that solve the same problem.</p>
<p>As in most things, putting in the requisite time to understand the principles of computing (not just the details of coding) is necessary for mastery.</p>