When it comes to academic integrity, every field of study faces unique challenges, both in terms of teaching integrity and in terms of detecting unethical behavior.
However, computer science faces perhaps the most unique challenges of all.
Computer science is not only at the forefront of technology, but also of the sensibilities and legalities that the technology brings with it.
A good example came in 2009, when San Jose State University found itself at odds with a student named Kyle Brady over his choice to publish source code he had completed as part of a homework assignment.
Brady had been accused by his professor of violating the school’s academic integrity policy noting that the code could give improper help to future students. However, the school’s judicial affairs office sided with Brady, saying that it was his right to post the code if he saw fit.
The case was often cited by open source advocates of how the computer science education often butts heads with open source ideals.
However, that is just one example of the challenges computer science faces when it comes to academic integrity. There are many others that can be found.
Plagiarism in Coding
As we discussed previously, plagiarism in coding can be a complicated matter. Though there is no doubt that coding is a form of creativity, many problems only have one ideal solution, similar to mathematics, and coders are often encouraged to reuse work or build upon the work of others rather than creating from scratch.
Still, schools have gone to great length to battle plagiarism in coding, working to create academic integrity policies that address coding specifically, using specialized tools to detect plagiarism in source code and setting up processes for attributing unoriginal code.
The result of this is that, while coding is not the same was writing papers many of the same rules do apply. One of the most important of those rules is the importance of the instructor in setting the rules for both the assignment and the classroom, making them an important person to discuss these rules with if you’re unsure on a particular assignment.
Ownership of Works Created
As Brady’s case pointed out, students in computer science classes are often developing code, designs and other elements that are directly useful not just in other assignments, but to the outside world.
Though essays and other projects are important teaching and grading tools, the projects students create in school may become, at least in a small way, part of the foundation of their future career in the field.
This makes it important that students learn about the importance of their code not just through the prism of academic integrity, but also intellectual property. The use of their code by the outside world (as well as their use of unoriginal code) isn’t just a plagiarism and academic integrity issue, it’s a question of intellectual property.
For students, this is often a new way of thinking. For much of their academic career, their work can seem and feel disposable. With computer science, it could be the start of something much larger and it’s important to treat it as such.
Changing Industry Standards
When 3D video games first became popular, it was common to control them using the arrow keys. However, competitive Quake player Dennis “Thresh” Fong started using the WASD keys as a means of gaining an advantage, the idea quickly caught on.
New games started using WASD by default, the first were seen as copying Thresh though the controls quickly became an industry standard that nearly every game would adopt. The evolution from a novel idea to an industry standard is a very short one in computer science. This can make it difficult to know what is a novel solution needing citation or what is simply the proper way to do something.
The speed with which a “new” way to do something becomes the “right” way to do something can easily leave both students and instructors confused.