Month: January 2016

Notre Dame CSE Code of Ethics

CSE_Code_of_Ethics

The Code of Ethics our group wrote was based off of the ACM Code of Ethics and Professional Conduct. We used the weaknesses we found in this document to mould our own code, and create the best set of ethical rules we could to guide the Notre Dame CSE students.

The first highlight of our code that differs from the ACM Code is rule 1.2: “Take action to avoid harm to other.” This is similar to ACM Code 1.2: “Avoid harm to others,” with the distinction that we added “take action” rather than just “avoid.” We believe it is not sufficient to just passively avoid harm. A truly ethical programmer will do everything in his/her ability to avoid harm, by means of taking the proper actions and precautions.

Another highlight of our code is rule 2.1: “Strive for academic success.” This rule is an important addition in our code because it speaks directly to the Notre Dame CSE students. By encouraging academic success in the classroom, this rule will train students to strive for success after their time in school as well. Being at this University is a blessing and an opportunity. To not strive for excellence does a disservice to yourself and everyone who helped you along the way to get you here. The same thing applies to life. Life is a blessing, so it is only right to strive for success in every aspect of your life. Otherwise, you are wasting the life and opportunity God has blessed you with.

Our code is not perfect. Although we strived to be as clear as possible, loopholes exists, and certain rules may be interpreted differently than we expected. The only cure for this is to make the code dynamic. It should be allowed to change as problems are found with it. Also, since technology is such a rapidly evolving field, it is inevitable that code will have to advance and evolve with it.

Creating this code was definitely a useful exercise as a Notre Dame CSE student. Having to actually think about and write down the ethical codes I believe I should follow made me more active in following them moving forward. If I hadn’t had to create a tangible code of ethics, I may have taken my actions for granted, not actively thinking whether or not the decisions I was making were ethical.

The Interview Process

Beginning my Junior year at Notre Dame was a stressful time for me. I knew that you were suppose to get an internship between your Junior and Senior years, so I was on the clock to make that happen. The big problem was that I had absolutely ZERO experience in my field. No prior internships, no big personal projects on my own, and no university research. What would make me standout to employers? What would I be able to talk about during my interviews? What would I even put on my resume?

The internship fair was a scary and unknown frontier. My plan was just to act confident and interested in any company I talked to. Beggars can’t be choosers, so I was just looking for anyone who was interested in giving me a chance. I finally made a connection with a recruiter who was a recent Notre Dame grad, and whose parents lived in the town next to mine. It was through this initial connection that started a conversation about the internship she was promoting. At the end of the friendly and informative conversation, I gave her my resume.

Shortly after, I received an invitation for an on-campus interview. I was excited that they liked me enough from the internship fair to extend the opportunity to interview. The interview was with another friendly Notre Dame grad, and all the questions were behavioral. I talked about the big project I did in Fund Comp 2, and also talked about my Eagle Project. I even showed her pictures of my Eagle Project from my phone. I wanted to convey that I could be passionate about a project, even if it wasn’t a computer science project.

After the on-campus interview, I was invited to a final on-site interview. This one would consist of three 30 minute interviews that would be a mixture of behavioral and technical questions. I had heard horror stories of relentless and almost impossible technical interviews from my fellow classmates, so I was terrified of that part of the interview. To prepare, I emailed the first recruiter I talked to at the internship fair asking for advice, and I also studied every shred of data structures that I had learned at Notre Dame. I still wanted to focus on being passionate and lucid in my interview, to show that even if I did not know a technical question, I had the capacity to learn whatever job that was thrown my way.

I walked into the interviews as confident and friendly as the two recruiters I had already talked with on campus. Surprisingly, I was asked mostly behavioral questions, with maybe two or three purely technical questions. I was never asked to code anything on the spot, like some of the readings alluded to, and I never felt threatened by the interviewers, as the “Interview Humiliation” article talked about. The only unfavorable part of the entire interview process was how long it took after the final set of interviews to find out if I had been offered an internship. Other than that, I have no complaints. In my opinion, the entire process was efficient, effective, and ethical. By being so friendly and welcoming throughout the process, the company ensured that recruits felt comfortable enough to share more and present the best possible versions of themselves.

 

Hacking

A hacker is anyone who uses his knowledge of computers to gain access, deny service, steal data, etc. from a system without the permission of the computer system’s owner. The spectrum of hacking has two polar ends: white-hat hackers and black-hat hackers. White-hat hackers try to penetrate system, with the computer system owner’s permission, as to find weak spots in a system and improve security. Black-hat hackers hack maliciously for their own personal gain. This spectrum has a lot of grey area in between, though.

Hacker groups like Anonymous have illustrated the ethical ambiguity that makes up the middle of the hacker spectrum. Most of the hacking that Anonymous does would be considered “Hacktivism,” hacking for some ethically or socially motivated purpose. However, unlike the definition of white-hat hackers I already presented, Anonymous still hacks without the computer system’s owner’s permission. For example, they hacked the KKK to release the names of previously anonymous Klan members. It is rather difficult to determine the ethicality of an act like this, and it further blurs the line of the ethicality of hacking in general.

Although hacking has many motives and characteristics that define in, I believe most hacking starts with curiosity, as the Phrack article explained. Most of the hackers presented in the many case studies in Kevin Mitnick’s book, “The Art of Intrusion,” are drawn to their act of hacking by curiosity at first. It is only later that motives such as money, cyber-terrorism, free services, and self-gain present themselves. I admit, I do get curious sometimes when exploring a computer system, but I wouldn’t say that I am so curious that I would ever hack into a system. Like I said in my introductory blog post, I was only introduced into the world of computer science in my sophomore year of college. I see so many of my classmates with years of coding experience, and a burning desire to code and explore technology. I see them learning new languages and writing code for fun during their free time. Because I do not have this background in technology, I also do not have the same desire. Whatever amount of curiosity I have, it would not encourage me to hack into a computer system in any free time I have. I simply do not have the desire. Unfortunately, many hackers do have the desire, and more importantly the skills to hack for malicious purposes.

Of course, if I had a job that required me to do penetration testing, where it was not only curiosity that fueled effort, but also career incentives, I would love to do some white-hat hacking. Another characteristic of hacking is trying to think creatively and do detective work. How can I access this system? How would a hacker try to access my system? It seems like a fun line of work. And there’s the key word: work. Without a desire to hack in my free time, I would require an actual job where hacking was the work, and the goal would be to improve security, not lessen it.

The Parable of Talents

My interpretation of the parable of talents is this: God gives us many gifts, and we must use those gifts proactively to serve some higher purpose. If we hide a gift, or do not let it flourish and grow, then that gift dies, and God’s work cannot be done. For example, if God blesses you with the gift of music, use it to sing His glory and inspire others to do the same. By doing so, the gift God has given you is used not only for yourself, but for others. A gift that is hidden cannot positively affect others, which gets in the way of God’s plan, and the gift goes to waste.

I have seen this proven so with my father. He has been blessed with the gift of music. He has volunteered for many years as my parish’s music minister. Not only did he use his musical talents every weekend during mass to lead the congregation in songs, but he also used it, along with his gifts of leadership and charisma, to lead a children’s choir and orchestra in our yearly Festival of Lights, a christmas celebration filled with liturgical Christmas songs sung by the older children, as well as a reenactment of the nativity and birth of Christ by the younger children. Every year, this concert inspires not only the hundreds of audience members in attendance, but all the kids who get to learn more about God by singing about Him and reenacting Jesus’ birth.

If my father had hid his talent, the Festival of Lights would never have happened, and God’s gift to him would have rotted away. Instead, he used his talent and multiplied it a hundred-fold by sharing and teaching it, inspiring so many and creating joy for an entire congregation.

I feel this parable can also apply to computing skills and talents. God had blessed me with the ability to learn computing skills and the desire to continue learning about it. Computing is a truly powerful thing when the gift is flourished in someone. Technology has the ability to help people and improve lives. Medical equipment, transportation, and even a slightly convenient iPhone app can improve the life of someone. I have the seed of computing ability within me, but to truly do God’s will, I will have to be proactive in my use and development of it, and use it to create applications and technologies to better people’s lives and let God’s will be done.

Introduction

Hi! My name is Christian Clark and I am a senior Computer Science major at the University of Notre Dame. I came to Notre Dame with the intention of being a Mechanical Engineer, but after my first year, I learned that I loved coding and hated differential equations, so I decided to switch into Computer Science.

After graduation, I will be working as a Technology Analyst at Credit Suisse in Manhattan. I will be working within the bank’s IT division in a global team that manages network and system operations for the Low-Latency Electronic Trading infrastructure.

I hope this class will give me a solid foundation of the ethical issues I will encounter throughout my career in technology. By preparing for possible ethical dilemmas, I will be able to make more thoughtful and informed decisions that ensure I am being ethical.

I took Computer Networking and Security last semester, looking at many different case studies of companies having security breaches. I am very aware of the precautions computer scientists have to take to ensure they are being ethical in keeping client data private. I believe one of the most pressing ethical issues facing computer scientists today is balancing the need to keep people’s personal data private with the desire to collect people’s personal data for things such as targeted advertisement, record keeping, statistical analysis, etc.