Submission: Project 1
My Notre Dame Computer Science and Engineering Code of Ethics is divided into five sections: the preamble, general student imperatives, more specific engineering responsibilities, career leadership imperatives, and compliance with the code. As stated in the preamble, the format for the document was heavily inspired by the Association for Computing Machinery’s (AMC) Code of Ethics, so the naming conventions for the sections also follow suit (with some slight variation). The ethical codes start from the general perspective of a student at the university followed by the more specific responsibilities of students majoring in Computing Science or are in the College of Engineering. The codes themselves are generally straightforward (although some have some ambiguity that cannot be completely erased because of their underlying principle), and are generally arranged in order of decreasing importance. In particular, performing academically to the best of one’s abilities, improving one’s understanding of computing, its ethics, and its consequences, and representing Notre Dame with integrity should be irreplaceable principles in a Notre Dame student’s personal code of ethics.
There are, however, some weaknesses in the document. The description for code 2.3, in which students must “correctly cite intellectual sources for code when necessary” is left intentionally vague because of the nature of the problem. It is nearly impossible for software developers to write 100% completely original code. This is because many patterns of code are recycled, borrowed, or even willingly shared by their programmers for other programmers to use at their own convenience. This does not eliminate the need to prevent plagiarism, but it is not practical for students to list every single instance in which code or concepts are borrowed from an external (probably online) source. In reality, each case must be considered separately and it is up to the judgement of both the student and instructor to determine what degrees of ‘borrowing’ and ‘inspiration’ are or are not acceptable.
Another aspect to note is the entirety of section 3: career leadership imperatives. While it is understandable that the university take some interest in student’s professional futures, is it really proper for them to establish an entire code to oversee a student’s “future career ethics”? In short, is it really their business? Code 3.4 clearly states that students will not participate in black hat hacking. What would happen if a student displayed such incredible hacking skills that they became sought out by the United States government to fill a position as a black hat hacker? What should they do? The answer is unclear. When asked, people will generally answer that black hat hacking is evil, but very few will argue against the necessity of it. After all, how else would we be able to stop other black hat hackers from hacking us?
Writing out a code of ethics was a useful and enlightening experience. Usually when the topic of conversation is ethics it is tempting to focus only on one specific issue instead of the principles behind decisions and actions. Being able to look at a document where several of my beliefs can be found in one place makes me a bit nervous, but at the same time very satisfied. I was able to affirm several of my existing beliefs but also raise questions for others. I like to think of myself as an ethical person, and I believe we should all strive to merge ideal ethics with real world practicality. Most people label the middle ground as being indecisive, but I believe in ethics that’s where the most rewarding answers can be found.