The Therac-25 accidents were caused by huge software bugs and the removal of hardware safety systems in the Therac-25 radiation therapy machine. According to the article, “Race Conditions in Therac-25,” race conditions caused the software to fail and “led to the death of three patients, and caused debilitating injuries to at least three other patients.” There were two modes the machine could be run in--one for killing surface level cancer and one for killing deep tissue cancer--and software was responsible for switching between the two. When a radiology technician accidentally chose the wrong mode then went to correct her mistake, she received a vague error message (a frequent occurrence) that she ignored. The patient died a few days later from radiation over exposure. It turns out that the software had the processes that controlled entering the mode and processing when the mode was set running concurrently. As soon as the mode was marked as set, the magnet setting phase of radiation began. Even when the mode was changed at this point, the magnets would not be, and they controlled how much radiation someone would receive. This means a technician could see the right levels on his or her UI, but actually be giving the patient a lethal amount of radiation.
This was pretty heartbreaking to read about. It would be horrible to lose someone this way. I would love to have a job someday that could make people’s lives better, but there’s a ton of responsibility that goes along with that that I haven’t really thought about until now. The challenge in working safety-critical systems is that there is no margin for error. If you mess up you aren’t losing money for a corporation you’re committing manslaughter. I think people should be extremely aware of this going into a project of this type, and no one person should ever have a solo decision. For the Therac-25, there were absolutely steps that could have been taken to mitigate the disaster that occurred. For example, people who looked at the source code for the machine said it appeared to “have been written by a programmer with little experience coding for real-time systems. There were few comments, and no proof that any timing analysis had been performed… a single programmer had written the software.” This makes me really angry. He or she should not have been hired for this job, and when they were, they certainly should not have taken it. When a doctor’s negligence causes the death of a patient, they are held accountable, and I think engineers working in safety-critical systems should be as well. I’m actually dealing with something semi-related to this right now. My hometown, which is technically a village not a town because it has a population of around 8,000 people, has an unusually high rate of cancer. It came out this summer that a Sterigenics plant has been unknowingly emitting large amounts of ethylene oxide, an extremely dangerous carcinogen, for decades. In one census tract near the plant, it was estimated that the risk of cancer is over nine times the national average. There are four schools within a mile of the plant. Negligence is not a victimless crime. At what point are people going to be held responsible for their actions?
0 Comments
This may be an overly cynical viewpoint, but I think technology companies primarily use codes of conduct as a shield against lawsuits. At the beginning of my internship this summer, I had to do online code of conduct training. My favorite one was a video of the CEO talking about how following the code of conduct was important for creating a safe work environment for everyone-- the day I watched it coincided with the day he was fired for an inappropriate relationship with an employee who worked under him. Yikes.
That being said, I still think codes of conduct have a net benefit for the employees at these companies when they are fair and equally applied to everyone. It allows people to skip past the awkwardness of not knowing how to interact appropriately with someone and puts everyone on a level courtesy playing field. In a lot of ways, I see them as common sense rules that are enumerated so they can be enforced. For example, looking at the Django Code of Conduct, there isn’t a rule there I disagree with. “Be welcoming”, “be considerate”, and “when we disagree try to understand why” are great sentiments that I try to live my life by, and I really like that they run their company with. Reading the open code of conduct there are some trickier ones like “we explicitly honor diversity in age, gender, … and technical ability.” If this means not bullying people for the level of their technical ability, I’m all for it because no one should bully anyone in a workplace (or otherwise, but especially in a workplace). If it means that hiring shouldn’t be discriminatory against someone based on technical ability, then that is absurd. It’s weird to lump technical ability in with age and gender which are clear cut wrong to discriminate against in hiring. I followed the James Damore Google controversy pretty closely as it was happening, and it was a tough one for me because a couple of people whose opinions I respected had very different and vocal opinions from me. I’ll start by saying I disagree with what he wrote. He said, “Google’s political bias has equated the freedom from offense with psychological safety, but shaming into silence is the antithesis of psychological safety.” I don’t think equating psychological safety with people not reacting well to the extremely politicized memo he circulated unprovoked around his workplace is reasonable. I have some opinions that I would guess fit into the echo chamber he discusses at length in the article, but I still wouldn’t discuss them at work--not to mention put a memo out about them--because I wouldn’t want to ostracize anyone who disagreed. Work is for work, political opinions are for close friends. The main point of his letter is about how all disparities in representation, particularly female representation, are not due to oppression, and that biological differences play a role. Because of this, he thinks “discriminatory hiring practices” like hiring a woman over a man with otherwise equal skills is wrong. I have a couple of thoughts on this. First, the medical field used to be all men. Then it slowly switched to mostly men (where the tech field currently sits), and now it is almost equal representation. Women don’t have an advantage when applying to med school anymore because it’s no longer needed to help people who otherwise wouldn’t have the opportunity to succeed. If women are just as good as men at being doctors, I don’t think it is a stretch to say we are not biologically worse at thinking logically and making decisions. As far as hiring practices go, women in tech are still trying to catch up. I don’t think I’ve been given any opportunities just because I’m a woman, and I don’t think I’ve done worse work than my male coworkers in these positions. I’ve certainly been denied from positions despite being a woman with a good GPA because the job market is competitive regardless of gender. Also, I can say the vast majority of people I’ve worked with in internships and school have been white men, so I’m confused where they’re being discriminated against. I think Google had every right to fire Damore. If I worked with him or especially under him, I wouldn’t feel comfortable knowing he was coming into the working relationship with the opinion that I was just hired because I’m a woman and I’m biologically less suited to it than my male coworkers. That is clearly a toxic work environment and one where I’d be less likely to succeed. I’m a big proponent of tolerance, and I don’t think discriminatory speech should be allowed in the workplace. That being said, when you hear a viewpoint you disagree with, you should try to understand where they’re coming from, and even when you disagree, disagree civilly. I had a teacher in high school once tell me, “Everyone is obsessed with tolerance, but all of these people are intolerant of intolerance in others” which is something I think about a lot when these situations arise. Just because someone is sexist doesn’t mean I get a free pass to discriminate against them, and it will probably be more beneficial in the long run to understand their viewpoint provided that it’s coming from a place of good intent. The workplace doesn’t function like personal relationships do, however. For example, if I had a coworker who on his free time made facebook statuses about how women shouldn’t vote, I wouldn’t like that, but I wouldn’t see it as grounds to be fired. I don’t think companies should thought police their employees. If the same man then sends a memo to the whole company about this opinion, it goes from sexist thoughts to workplace harassment because it would make me feel disrespected as a woman who deals with him professionally in a business context. You can separate politics and the workplace, and you absolutely should. It’s not hard. Almost everyone does it every day. “Having it all” is being able to balance your job and your personal life in a way where neither suffers because of the other. As a student, this can already be difficult. There are nights where I do homework while my friends are having fun. There are other nights where I choose to have fun, fall behind on homework, and have to lose sleep to make up the lost time. After college, when you throw in having a family and an obligation to earn money, this already tricky thing becomes a billion times more complicated. My mom is a really good example for me of what it means to have a balance. She’s worked full time my entire life but still made dinner most nights and always came to me and my siblings’ soccer games, science fairs, etc. She’s definitely had to make compromises in her work life to make this happen, however, and it wouldn’t be possible if my dad didn’t also work full-time with less of a balance. From the readings, it seems like it’s pretty well agreed upon that actually having it all is unrealistic, especially for women. I really liked Anne-Marie Slaughter’s piece about “having it all” and how it’s only possible for the extremely privileged and even then not completely. She gave many examples of women, including herself, who voluntarily left top jobs at the White House because they wanted to spend time with their families. These women could still have good job--Being a professor at Princeton for Slaughter--but they couldn’t have as good of jobs as they were mentally capable of because they couldn’t devote 100% of their time to them.
Even just being in school, I definitely feel burnt out sometimes. I could spend all week on a problem set until it’s perfect and be really proud of myself for 10 minutes until I realize I have to do the exact same thing next week and the week after and the week after that and also do work for 4 more classes. I don’t feel like I deal with these difficulties particularly well, but trying to finish assignments early so I don’t have to worry about them is the closest I’ve come. Ironically my internship this summer was actually a welcome break from that grueling routine. I couldn’t relate to the article “Burnout and Recovery at a Tech Internship.” My experience was you show up, you work hard, and then you go home and don’t have to think about it until the next morning. The most I ever worked in a single week was 60 hours, and people still seemed to think I was doing a good job. Maybe this is the exception not the rule, but it made feel a lot better about pursuing this career path. Companies can help their workers find this balance by not expecting the world, but if I'm being honest that’s probably unrealistic. Especially for someone like Slaughter who was working for the government, if work needs to be done then it needs to be done. We have a choice in where we work, and if you aren’t willing to work 80 hours a week then Amazon probably won’t work out. I have no problem with someone who's willing to sacrifice more than me personally getting a “better” job. I don’t think companies are ethically obligated to help workers find a balance because workers have a choice to find their own balance. I liked Slaughter’s ideas to make the workday and the school day line up as a tangible thing that can be done at little cost to the business but huge benefit to the employee. Balance is definitely something I’ll consider for a full-time job, but I’m going to be more willing to work longer hours for the first few years out of college because I won’t have as many obligations as I will later on. I think balance is important, and it’s something I still need to get much better at. I hope to maintain it by leaving work at work and fun at home. One of my ways to maintain it now is to go to class, do homework, and then go home and relax/have fun in that order. Sectioning it out like this makes me more aware of how much time each activity gets. I had two interviews last year with very different processes—one through the career fair and one through a family friend recommendation.
For the first company, I talked to someone at a booth at the career fair about my resume, went to an on campus “personality” interview, and then had two technical interviews over Skype. These were the first technical interviews I had ever done and even though I read all about the company’s process on Glassdoor and practiced questions in “Cracking the Coding Interview,” I still felt really unprepared going into them. I would’ve preferred to do these interviews in person, because talking to a stranger while looking at an online notepad is a really inorganic way to interact with someone. It’s also hard to get feedback when all you have to go on is the sound of someone’s voice. There was a technical difficulty with the screen sharing software I downloaded for the first interview, so I couldn’t even see the diagrams that were drawn on the problem statement, and my interviewer had to describe them to me. I ended up spending all of my time on the first question and left the interview feeling very unoptimistic. Fortunately, this made me care a lot less going into the second interview, which actually helped me do a lot better. It was a very good learning experience, and I actually ended up getting an offer, which definitely helped my confidence moving forward. I came into contact with the second company because my roommate’s father’s friend knew someone who was looking for interns and gave him my resume. This process was a lot easier. I had two phone interviews where I talked about my resume and they asked me personality questions. I felt like they were looking for reasons to like me rather than reasons to disqualify me. Based on these experiences, one thing that surprises and also frustrates me is how much easier the process is when you are personally recommended. It worked out for me, which was great, but prior to this summer, I didn’t personally know any practicing software engineers. It seems like a barrier to the industry that is probably partially to blame for the lack of diversity. Based on my limited experience, I think the interview process is a grueling one. I understand why big companies need technical interviews, but I think it’s very strange the questions usually don’t correlate to the position you are going to hold. I do think it’s efficient or they wouldn’t continue to do it, but that being said, I’m not sure it is as effective as it could be. In the article “Why is hiring broken? It starts at the white board.” Qunicy Larson argues that the decision of whether to hire a developer usually comes down to the candidate walking up to a whiteboard and regurgitating algorithms that haven’t changed since the 1970’s.” I was asked relatively interesting questions in my interview, but I do have a friend who was asked to write the pseudo code to merge sort for his interview, which I find kind of baffling. Your ability to memorize is in no way an indicator of your ability to be a good engineer. I wouldn’t go so far as to say the process is inhumane or unethical, but it is certainly not ideal. It makes companies miss out on potentially good employees and potentially good employees miss out on great job opportunities. My personal definition of a moral or ethical action is one that is made with the intention of maximizing other people’s well being and minimizing their suffering. Basically, trying to do right by others. Using this definition, I would say the most morally ethical computer luminary is Richard Stallman and the least is Steve Jobs.
Richard Stallman is more ethical than Steve Jobs, Mark Zuckerberg, and Bill Gates because all of his actions have been in pursuit of a goal that he believes will make the world a better place for everyone. Cleary a smart man and a talented engineer, Stallman could have become very wealthy by creating and selling software that doesn’t respect what he sees as a user’s basic right to freedom. He didn’t do that, though. Instead he created the GNU Project, started the Free Software Foundation, and created a movement that is still going strong today. In the article “In praise of Richard Stallman, GNU’s open sourcer,” the author Dan Gilmor collected quotes outlining Stallman’s philosophy. Stallman said, “So that I can continue to use computers without violating my principles, I have decided to put together a sufficient body of free software so that I will be able to get along without any software that is not free.” Stallman was not willing to compromise on what he believed was right. He thought the world would be a better place if software was free and acted in a way to make that vision more realistic with seemingly no ulterior motives. That cannot be said for any of the other influential engineers on the list, which is why Stallman is number one for me. Steve Jobs, Mark Zuckerberg, and Bill Gates are ethically similar in some regards. They all have incidents of being cutthroat in business and treating people as a means to an end on their path to becoming extremely wealthy. I would say Steve Jobs is the worst of the three because Zuckerberg and Gates both dedicate a lot of time and money to philanthropy, which Jobs notably did not. While Gates is “the largest philanthropic supporter of primary and secondary education in the United States” and “has spent billions of dollars to fight polio, malaria, tuberculosis, HIV/AIDS, and other diseases,” Steve Jobs routinely used to park in handicapped spots because he didn’t want to wait to look for a space. With his personal wealth, Jobs could’ve done a lot of good for people who needed clean drinking water or safe schools, and he chose not to. If the question was changed to "who has the most positive effect on the world?" rather than "who was the most ethical?" that would definitely change my ranking order. Stallman would be the lowest on my list because his impact into the average person’s daily life is much smaller than the other three. I had no idea who he was until I became a computer science major, but I bet almost everyone could tell you exactly who Bill Gates, Steve Jobs, and Mark Zuckerberg are. In his article “Steve Jobs, World’s Greatest Philanthropist,” Dan Pallotta claims that arguments like the one I made in the previous paragraph about Steve Jobs’s character are incorrect because for-profit companies can do just as much good, if not more good, than non-profits. He argued, “What a loss to humanity it would have been if Jobs had dedicated the last 25 years of his life to figuring out how to give his billions away, instead of doing what he does best.” Where what he does best is building things that have made the world objectively better. Devices that help “the blind read text and identify currency”, “physicians improve their performance”, and “charities raise money.” Between Facebook, Microsoft, and Apple, I would say Apple has had the most meaningful effect on the world over the past ten years. For that reason, I agree with Pallota that Jobs has had the most positive impact on the world. Coding is not a superpower because superpowers are given not earned.
Spiderman was bit by a radioactive spider. The Flash was struck by lightning. Superman was born with powers. That’s not how developing programming skills works, and it may even be dangerous to view it that way. I understand the general argument that programming is a superpower because it’s powerful and a very small percentage of the world’s population does it. In his article “Programming, power, and responsibility,” Andy J. Ko explains this concept of power very well. He claims, “code has a capacity for power and that code is granted power the moment someone incorporates a program into their life in some way.” By this he means that by building things others depend on, you inherently have power over whoever comes in contact with it. For example, if you write an app that manages clients’ personal finances, you have the power to protect or to not protect their information. I don’t find this argument convincing because it can apply to any specialty profession. Are lawyers superheroes because when we hire them to be our lawyer we are trusting them to interpret the law for us? Are dentists superheroes because we depend on them to keep our teeth healthy? Are farmers superheroes because they produce the vast majority of food we eat—the most basic thing we need to stay alive? They are not because if all of those people are superheroes then the term is meaningless. People develop skills to follow a career path. They help the world run a little smoother with these skills and in exchange receive money. This is not superpowers at work— this is capitalism. I see rhetorically why this message of programming as a superpower is useful. In the YouTube video where Karlie Kloss says coding is a superpower she is doing it to encourage her young female fan base to consider taking a class in computer science. A similar message was shown in the “What Most Schools Don’t Teach” video to a similar end. If those videos make a single kid discover a passion they never knew they had then it’s hard to argue against the use of metaphor. I still don’t like the message that this wording is sending kids who start programming, though. You don’t fall into a vat of radioactive assembly code and develop programming skills. You take a class. You read articles. You figure it out and get better at it. You aren’t given the ability to program, you work at it. If kids don’t know this going in, they may think they’re the problem when they hit their first roadblock—for everyone else it comes naturally, but not for them. When I came to college I had never programmed before and taking my first CS class with a bunch of people who already knew what they were doing was really intimidating. There were definitely times when I thought about switching majors that first year, and I’m really glad I just stuck with it. Programming is not a superpower, but it is certainly powerful, marketable, and possible to learn if you keep trying. Hello! My name is Grace Kopp, and I’m a Senior majoring in Computer Science. I’m originally from Willowbrook, Illinois, which is one of the many suburbs of Chicago nobody can tell the difference between.
One of my biggest interests is spending time in nature. I grew up around a lake, so I’ve always loved boating, kayaking, and waterskiing. I also really enjoy hiking and camping. My goal is to visit every single National Park at least once in my lifetime. I’ve only been to twelve so far, so I have a long way to go, but it’s definitely something to look forward to. My favorite one I’ve visited is Crater Lake in Oregon. I’m also very interested in music. One of my favorite things to do is listen to an album start to finish while I go about my day doing other random tasks like homework and cleaning dishes. Some of my favorites are For Emma Forever Ago by Bon Iver, Is This It by The Strokes, and Wildflowers by Tom Petty. My first concert was actually Tom Petty and the Heartbreakers in sixth grade, so I definitely peaked in 2010. This semester I’m taking a one-credit guitar class, and I’m cautiously optimistic about how that’s going to go. I came into Notre Dame as a math major because math was always my favorite subject in high school. I took the Intro to Engineering class just to cover my bases and fell in love with programming. I like logic puzzles and problem solving, and at its core, that’s exactly what computer science is. One of my favorite things about the field is that you never stop learning. At my internship this summer, I was working with engineers who have been programming for more than twenty years and they still look things up on stack overflow. I also like the idea of one day being able to create something that can make someone else’s life a little better in a tangible way. That ties into what I hope to get out of this class: to be a good good engineer—someone that does good work for good reason. I think it’ll be very interesting to talk through these issues that don’t necessarily have a right answer for two reasons. 1.) I can start to develop/strengthen/adjust my own point of view and 2.) I can understand the viewpoints of others I disagree with as actual people and not trolls on the internet. I think data privacy is the most pressing issue facing computer scientists and engineers today just because it’s been a problem for so long and it’s only getting worse. As we speak, our right to privacy isn’t being respected, and there’s nothing we can do about it. Even though it’s slowly but surely improving, I also see diversity in the software industry as a huge issue. My third biggest concern is so called “fake news” because all of the Russia/election stuff genuinely terrifies me. I’m particularly interested in discussing diversity in technology because its something that's talked about a lot when people are and aren't getting interviews. As a woman, I've heard some takes on why there aren't as many women in computer science as men that I've found a little upsetting, so I'm interested to hear those viewpoints from actual rational people because no progress is ever going to be made without conversation and mutual understanding. |
ArchivesCategories |