Code of ethics: https://caseyhanleyethics.wordpress.com/2016/01/28/code-of-ethics/
The code of ethics we wrote is focused on addressing the unique situations that computer science students face in academia. These include the issues of sharing code, stackoverflow, and the frequent use of group projects as class assignments and measuring sticks. It attempts to eliminate the grey areas that are often interpreted or enforced differently from professor to professor or student to student. It also tries to be both strict, but allowing where necessary to allow for future expansion as more issues are sure to arise in this nascent subject. This is both a strength and a weakness, as described in part below.
The key weakness that I see in this code of ethics is that it leaves certain things, such as the validity of code taken from the internet (section 2.2), up to the discretion of the professor or other faculty member. We discussed this at length when writing the code, and were not able to see a reasonable way to avoid the discretionary clause without creating extensive rules that seemed far outside the boundaries of a general code of ethics. In reality, all ethical codes rely on both the students and the faculty to remain accountable, and so it is completely reasonable to leave parts of this code specifically up to discretion. Another area that is unfortunately vague is the group work section of the academic code (section 2.4). The vagueness here stems from the generality of the rule. Group projects can be extremely varied with regard to group size, project length, scope, and many other factors. The code refers to group members not performing their expected amount of work, which is again completely up to the judgment of the team members. One way to help clear this up would be to formally write up expectations (or even a code of ethics) for a project when it is started. This is obviously not necessary for all group work, such as a shared homework, but for larger semester projects it can help avoid devastating miscommunication. So, I do not view these issues as problems with the code, but rather as areas for expansion and reusability in the future.
I think for computer science students, a specific code of ethics pertaining to the subject matter can be very useful. Computer science is a fledgling field of study, and often does not clearly fit into established academic norms. This is well exemplified in the open source world and its implications on student work. A new code of ethics can help to clear things up for both sides as to what actually qualifies as academic dishonesty. Today, it often feels that these kinds of decisions are left mostly up to the professor. Its an interesting thought to consider ever department creating their own specific code and policies. While it probably isn’t necessary for well established studies, for computer science I think it would help to put a lot of students’ minds at ease. Ultimately, that’s the real goal of a code of ethics: to help people be knowledgeable and comfortable acting in a virtuous manner.