I am Steven Eisemann, a senior computer science major at the University of Notre Dame. My interests include swimming, outdoor activities like hiking or kayaking, and video games, mainly RuneScape and League of Legends. Each summer since 2015 I’ve interned with the Department of Defense, and most recently worked at the Air Force Base research lab in Dayton, Ohio. I am pursuing a degree in computer science because everything these days is linked to computing. DoD work is no exception, and with a computer science degree I can serve my country in a civilian capacity working at any of the various agencies under or linked to the Department of Defense.
Ethical issues are something that (God knows) have become a bit of a hot topic, particularly surrounding government work, and what agencies like NSA or FBI can and cannot do and not do when it comes to trying to provide security for the United States. I have my own opinion on these issues, but I don’t go out of my way to follow these topics or debate other opinions. So I hope to hear some of the opposing views on these topics, and what the opinions are with government is replaced with some private sector tech company.
I think that the most pressing ethical issues facing computer scientists are IoT and anonymity. Technology today is growing at an astounding rate, and everyone wants a slice of “cyber.” Today, just about any product imaginable has a model that can be controlled through the internet, whether its a thermostat, a toaster, or a car. Some Internet of Things products benefit from this internet connectivity, while others leave you scratching your head wondering what moron thought that up. The scary part of IoT though is that many products aren’t designed with security in mind; most have none at all, and those that do often have no way of receiving critical patches as vulnerabilities pop up. Anonymity is another issue we face. As encryption gets stronger and receives more application, the regular user benefits because their data is safer. However, this encryption also protects criminals and those that wish to cause harm, as encryption allows users to conceal their identity and communications. Encryption is an example of the balance between privacy and security, a debate that is unlikely to end soon.
I do not consider computer programming a super-power. Coding is no more magical or extraordinary than calculus or trigonometry is. Computer science isn’t some unnatural ability that only some people possess. Computing is a skill that can be taught as easily as basic calculus, all it takes it a little time and dedication. The trouble is, today computer science, and STEM fields in general, are being seriously over-hyped. To try and draw people in, these fields and those that practice them are compared to fantastical things like superheros. While it is true that annually hundreds of thousands of computer science and tech jobs go unfulfilled, we should not be trying to allure youths into a field with false, outrageous advertising.
Instead, we should be realistic. Bill Gates didn’t invent the personal computer over a long weekend, nor did Mark Zuckerberg develop Facebook overnight. These were huge projects that were refined over many years and worked on by many engineers, and even then, while these were projects that their creators felt hugely passionate about, it is not necessarily the case that an entry level computer scientist will get to work on something he or she is equally passionate about. I know from my own experience that not everything you work on as a computer scientist is going to be enjoyable.
The Mathblog article brought up an interesting point; both coding and welding are critical to society’s function, however we don’t teach every child how to weld. I understand where this argument is coming from, and I largely agree with it. However, I think that all who desire to program be exposed to it at least once, and to something beyond the scope of “Hello, World.” As the article states a few times, most business applications are thousands to millions of lines of codes, and rarely is a project managed or contributed to by one developer. If we are going to expose children to coding in school, it needs to be integrated into curriculum better than “here’s a unit on programming in Python,. Everyone write a ‘Hello, World’ program.” If coding is going to be featured more heavily in schooling, it needs to follow the example set by subjects such as science, mathematics, or history. Each year of school builds upon the previous, and by the time a student graduates high school he or she can pursue a college degree in one of those fields fairly confidant that it is what they want to study. Coding usually is something that is offered as an elective high school, and the scope of the class rarely goes beyond simple programs. Recently, coding in languages like Scratch has been introduced in elementary school. I think that this is a good step, only if the size and difficulty of programs increases as the student’s knowledge does.