Ethics: Reading 13

I think coding is amazing, and I would love for more people to learn how to code. After reading some of these articles, though, I’m less enthusiastic about making coding classes a required part of K-12 education. The current core classes in K-12 education are, for the most part, useful and necessary in everyday life. While I agree that a lot of benefits exist to learning how to code, I don’t think that coding knowledge is as necessary as reading, writing, and basic math. Not everyone will need to code in their day to day lives, and not everyone will enjoy or be good at coding so they shouldn’t necessarily be required to study coding in grade school.
On the other hand, there are some arguments against teaching coding that I definitely disagree with. The other main argument against teaching coding in schools is that it will increase screen time which can be bad for kids. I hate to break it to these people, but I’m pretty sure screen time will be increasing no matter what. Phones, tablets, and computers are just going to get more and more common. My belief is that if kids are going to be using these devices, they might as well be doing productive work on them, like learning how to code. In this case, I think that the benefits of learning how to code outweigh the negative effects of possibly increased screen time. These benefits are brought up everywhere. Coding helps students learn how computers work, and knowing how computers work is something that is useful in everyday life. Coding helps teach students how to structure their thoughts and think through problems. Coding can be a creative output.
Still, I can’t really think of where to put coding classes in the K-12 curriculum. I mean, I had a kinda crappy computer class once a week or so in elementary school where we basically just learned how to type. A coding class would have been a lot better in that situation. When it comes to making room for coding as a core class, though, I can’t see where it fits. The other required classes in K-12, especially in earlier grades, are simply more important. The math, English, science, history and such that are taught in elementary and middle school do a really good job at building a foundation for future learning. I feel like coding should fit in later, when kids’ schedules open up and they have more electives.
I can see starter coding classes working to serve the same job as higher level math and science courses in high school. Coding teaches kids a lot of the same ideas behind thinking logically and solving problems that science and math courses teach. Allowing kids to take coding classes gives them more opportunities to learn about what they’re interested in. I do think that there should be some required computing classes. While I can agree that coding isn’t for everyone — just like higher level math, science or English — I think everyone should learn basics behind how and why computers work so that they will be able to work through simple problems they will encounter in their everyday life.

Hackers: Reading 09

I grew up in the suburbs. I have one sister, and my parents are great. We never really had money struggles. My childhood was happy and carefree, and I was mostly interested in the same things as other kids my age. I loved science and reading, so I was fairly geeky, but I never felt like I struggled to fit in. This is different for Linus’ upbringing, I think partially because being nerdy is less of an issue now. It doesn’t seem like Linus was a well-rounded kid, though. As he grew up it seems like he focused almost only on science and computers whereas I didn’t even really start programming until I came to college.  Even if I had similar experiences to Linus, if I had grown up messing around with my Grandpa’s computer, I don’t think I would have ended up like Linus. In that way I can see how someone could be born a hacker. I really enjoy coding, but it never consumes me like it seems to consume Linus and the other hackers we have read about. I’d like to consider myself a hacker, but the people we have discussed in this class are on another level, one that I don’t think I could ever reach regardless of my upbringing.

Linus was motivated to create Linux mostly because he was dissatisfied with aspects of Minux, the OS he was using at the time. The first program he wrote to improve Minux was a terminal emulation program. From there, he kept building until he had written and rewritten so much of the OS that it was essentially a completely new operating system: Linux. Linux grew out of Linus’ interest in improving Minux and generally creating the operating system that he wanted to exist. That was his personal itch.

So far I haven’t done a whole lot of programming outside of class assignments, but this course has started to motivate me to get working on a project that interests me. Like a lot of hackers, I’m drawn to the idea of creating games. This is partially because I really enjoy games, but also because I think that having a game as a completed product feels more satisfying that most anything else. I’ve done some simple 2D stuff when I had the option to do so for class projects, but I’m feeling the itch to look into 3D graphics. There are a lot of game engines out there that do a lot of the work for you, but I really want to get into actual code so I can have more control. The problem whenever I think of projects like this, though, is that other things always come up. With graduation and starting a new job (hopefully) I don’t know when I would work on this. When I get free time I like to spend most of it doing things that relax me, and while I enjoy coding it definitely isn’t relaxing for me.  I don’t know if I’ll end up doing much hacking, but I would like to.

Ethics Reading: 11

I think that self-driving cars have the potential to be a great technological advancement. I remember I saw a CGP Grey video a while ago that was focused on traffic, and how self-driving cars could theoretically eliminate the need for traffic signals. With self-driving cars people could get where they’re going faster. Beyond that, people wouldn’t lose productive time to driving. People could read or work while getting driven around. Also, people would generally be safer in self-driving cars because the vast majority of accidents are caused by human error. In general, if everything went right self-driving cars could be a great thing for society.

However, everything is not going to go right. Self-driving cars are going to get in accidents and people are going to get killed. If self-driving cars ever get as prevalent as proponents want them to, these accidents will be inevitable. When the accidents happen, a lot of ethical issues come up. Normally, one of the drivers of the cars in the accident is held at fault. If the cars do not have drivers, are the programmers at fault? What if the car is put into a situation where it cannot avoid a fatal accident? Someone has to tell the car what it should do in that situation. The trolley problem actually becomes a reality when a self-driving car has to decide whether it should continue on its path and hit five people, or swerve and only hit one. A lot of people disregard these cases as too unlikely, and I can see where they’re coming from, but if self-driving cars are going to be everywhere in the future then these situations will come up. I don’t have the answers to these ethical problems and they definitely put a damper on my enthusiasm for self-driving cars.

Of course, there are problems besides accidents too. As is the case for pretty much all automation, self-driving cars will take away jobs. Taxi drivers will be unnecessary, and the same goes for drivers for Uber and Lyft. Also, I mentioned how self-driving cars will help people be more productive while in transit. This makes me think of the trend where whenever technology is supposed to make work easier what happens instead is that workers are just given more to do. Maybe instead of self-driving cars making everyone’s commute less stressful, people will be expected to be on the job while commuting, hooked up to a wireless hotspot in their car. If you don’t have to worry about distracted driving, why shouldn’t you keep answering work emails while you’re in the car?

Even with all these questions running around my mind, I think I would get a self-driving car if given the opportunity. It would be incredibly convenient, and safer for me and whoever I’m riding with. Although, I would feel more inclined to get one if I could still drive it myself sometimes, because I do enjoy driving every once and a while. Overall, though, I do think self-driving cars will be a good thing, I think I just wanted to write more about the negatives because that’s the side that I think about less often.

Ethics Reading: 10

I view trolling in two ways. First, there are the harmless trolls that just unexpectedly link to “Never Gonna Give You Up,” and post dank memes everywhere. Then there are the trolls that spew out anger and abuse all over the internet. The articles I read focused almost entirely on this second type of troll, and for good reason. These trolls are a part of a serious problem that needs to be discussed. The other trolls are just mildly funny or annoying. I think trolling on the internet is part of what happens when everyone can be anonymous. They angry people that have to hold back in normal life are able to let loose without repercussions online. This leads to the prevalence of abuse all over the internet. I agree with most of what Lindy West talks about in the piece she did with This American Life: Internet trolls are often people that are having a rough time in real life and deal with it online in an unhealthy way. It’s like the idea that always comes up when talking about bullies in school. Maybe the bully has a terrible home life and takes it out on people at school so that at least he isn’t the only one feeling like crap.

A major problem with all of this happening online, though, is that trolls can congregate and form communities where they run into the online echo chamber that reinforces all of their beliefs. I believe that this is how something like Gamergate can happen. The troll culture has issues with women, and so when something like Gamergate gives them the opportunity to hurtle abuse, they go all out. While people also form echo chambers online in places like Facebook where they aren’t anonymous, most of these groups demonstrate more acceptable behavior. This implies that the anonymity of trolls is a huge reason why they are so abusive. I think reducing anonymity could be helpful in dealing with trolls, but I don’t think it is the best course of action. Anonymity online also has good affects where people can speak out against oppressive governments without getting shut down. Also, some people are just dicks whether they’re anonymous or not.

Trolling is a big problem that needs to be dealt with in some way, but I don’t really know how. My general response to trolls is to just be nice. It’s like there are three approaches: get mad (feeding the troll), do nothing, or get nice. Trolls want you to get mad, so if you do nothing, a lot of the time they’ll just keep coming at you. But I’ve found that trying to help them out and be nice can turn the situation around. I used to play a ton of League of Legends, which is known for having a really toxic community. I’d come across trolls fairly often, and my approach was just to complement them when they made good plays and ignore the abuse. If they seemed really mad, I’d PM them and ask if they were doing okay. A lot of the time people would apologize and say that they just had a really rough day or had bad things going on in their life. Once I started being nice, they would identify me more as a person instead of just an outlet for their anger and so they would feel bad for getting angry with me.  Of course, this wasn’t 100% effective, but I think some kind of similar approach could help deal with the internet’s troll problem.

Ethics Project 03 Reflection

I’m surprised by how little the Vault7 leak has actually influenced my views on government surveillance. At this point, it’s just another leak that tells us what we already mostly know. The articles mention that a lot of the security flaws the CIA were exploiting were already known about in the security community and many of them had been fixed. I mentioned in our podcast that it seemed as though leaking this information could have been done more as a way to bring WikiLeaks publicity than to actually influence change. On the other hand, I can’t see WikiLeaks getting this information and then not publishing it. People debate about the information WikiLeaks publishes, but without knowing what they do not publish, it’s hard to determine if they are biased or working for some secret interests. As it stands, it could be possible that they actually just publish anything they get, at which point you can’t complain about them being biased because the information they publish isn’t up to them, it’s up to their sources. While this is a possibility, I find it unlikely. Every organization has an agenda they are pursuing, and WikiLeaks’ agenda involves influencing people to not trust their governments. The Vault7 leak doesn’t necessarily tell us information we didn’t know, it just reinforces the idea that the government is spying on us and hiding information.

Even though I don’t think the Vault7 leak was very important I do believe that WikiLeaks serves a good purpose overall. Sure, other media companies also publish leaked information, but I believe WikiLeaks serves as the safest way for leakers to maintain anonymity. Without that guarantee of anonymity, it’s possible that less whistleblowers would come forward. I believe that it is important for the public to be informed of the actions of the government in situations where it doesn’t put people’s lives in danger. I do not believe that “ignorance is bliss.” Whistleblowing is important to keep our government honest, and WikiLeaks supports this.

When it comes to publishing leaked data, however, WikiLeaks has some serious faults. WikiLeaks, up until the Vault7 leaks, has had issues with not anonymizing the people in leaked documents. It is possible that this has put people in danger, which I believe is unethical. Also, with the DNC hacks, it is questionable whether or not WikiLeaks is biased. The release of the DNC emails had a massive impact on the election, and the entire world as a result. Would this still have happened without WikiLeaks? Ideally, I would support an organization like WikiLeaks with fewer faults and a less sketchy leader, but that isn’t a real option. With WikiLeaks as is, even though I am against government surveillance, I trust the US government much more. Sure, there are a lot of unknowns about the inner workings of certain agencies, but the inner workings of WikiLeaks are also unknown. On the whole, I know the government is based on the Constitution and I believe government officials will work to uphold the Constitution and preserve our rights.

Hackers Reading: 07

ESR talks about two main factions in open source culture. First, there are the people that are very zealous and anticommercial people that believe that the free software movement is possibly the greatest thing in the history of mankind and that corporations are the villains standing in the way of this movement. The other faction is much more pragmatic. They see open source as an incredibly useful way to develop software and might get mad at companies for using outdated software and development processes, but understand that proprietary software is how a lot of coders make money. To pragmatists, open source is less of a movement and more of a fun tool to play around with. Personally, I am more of a pragmatist, although I can see why there are free software zealots.

I believe that ESR’s list of taboos mostly rings true, especially the third taboo. The idea of just removing someone as a contributor without contacting them sounds horrible to me. If this wasn’t taboo in the community, it would really discourage coders from contributing to projects because they might end up getting no credit. In that way I can agree with the role of reputation ESR describes. Normally, when I think of the big proponents of open source, the zealots, I don’t think they do it for the “ego satisfaction.” However, I kind of doubt that they would continue contributing as much as they do if they didn’t get credit. This works with the other taboos too, if someone running an open source project had their project forked or changed without their permission, they would lose a lot of the control they had over the project and that could discourage them from creating and running projects. Because of this, I think these are good taboos for the community to have. While they do decrease the freedom coders have, I think they are necessary to keep people involved in open source.

Personally, I find myself more motivated by the idea of just making something cool. I don’t worry that much about gaining any sort of reputation; I just think that if I want to work on something cool, jumping into an open source project is the easiest way to do it. I think this is a major contributing factor to why people are driven to participate in open source. It’s the easiest way to work on a fun large scale coding project. Also, you get to be involved in a community of like-minded people. Open source is a way for anyone to get experience with a large code base maintained by a bunch of different people, and you don’t have to deal with the direct oversight you would get in a corporate environment. I think working in open source is just a fun way to code.

Ethics: Reading 08

Corporate Personhood is the idea that corporations have some set of rights as granted to them by the Constitution. These aren’t necessarily the same rights that are granted to actual people, but they are certain rights that every corporation has. In practice, it seems as though Corporate Personhood has both positive and negative effects depending on how it is interpreted.  When it comes to campaign finance, it seems dubious to me that corporations should be allowed to spend as much as they want because of their right to free speech. On the other hand, as mentioned in the Atlantic article, Corporate Personhood helps to give corporations a sort of accountability. When the actions of a corporation lead to harm, the corporation itself can be sued instead of just employees that were responsible. This means that an adequate settlement can sometimes actually be made whereas it couldn’t be if only employees were sued, as the employees wouldn’t have nearly enough money.

For my case study, I chose to look at the Volkswagen Emissions case, mostly because I remember this incident the most. I believe that what Volkswagen did was unethical. They purposefully disguised the environmental impact of their cars so that they could make more money. They tried to sneak around specific laws protecting the environment, and they should be punished because of that. I’m not sure if environmental damage can easily be quantified, but $4.3 billion is certainly a lot of money, so I think that they have been sufficiently punished. Perhaps they should also be subjected to more intensive screenings in the future.

I have heard arguments in class that corporations should not be held accountable for their actions unless they are illegal because corporations do not have a moral imperative, their only goal is to make money. Initially, I agreed with this position, but it still felt wrong, as if I was just letting corporations get away with whatever they wanted. Reading about Corporate Personhood has given me a better handle on the issue. I believe that since corporations are given rights similar to people, they should be expected to behave morally as people do. The Atlantic article discussed the negative impacts of the shareholder-only focus that most businesses have. I think this is closely related to the belief that corporations should not be expected to behave morally. We see corporations not as institutions working to better their employee’s and customer’s lives, but as instruments to make money. Ironically, when corporations but their employees and customers first, it seems that they make more money than when making money is actually their focus. Now, it can be argued that Volkswagen had the interests of their customers at heart. They simply wanted to give their customers more powerful machines. However, the negative environmental impact will hurt everyone involved in the company. If corporations focused on helping employees and customers, and if everyone was considered a potential customer, I think capitalism could actually end up being nice.

Hackers: Reading 05

Do I find the possibility of creating my own company enticing or frightening? Yes, definitely. I agree with Graham that forming a startup and working with a small group to create wealth is probably the best way to get rich, but I don’t think I would be willing to unbalance my life as much as people seem to have to if they want their startup to succeed. I value having time to relax and decompress. It keeps me sane. Even so, the idea of creating my own company is appealing. I interned at a large Fortune 500 company last summer, and a lot of the corporate structure bothered me. A lot of time was taken up by meetings where everyone just checked up on what everyone else was doing. For the company to work, they needed to put a lot of effort into keeping everyone organized which took away from time that could be spend actively creating wealth. Also, working there, I was essentially IT support and so I was a step away from the financial guys that actually made the company money and got members what they wanted. If I was to make a startup I wouldn’t have to deal with the corporate bureaucracy and I would be directly involved in creating something interesting that consumers want. And, of course, I would have a chance to get rich. In the end, while I would obviously much rather get rich working for myself, I don’t think I would be comfortable putting in the amount of work that Graham describes just for a chance at success.

Graham makes a good argument for allowing income inequality to continue to exist and even get worse.  All of the information I had read about income inequality prior to this essay had been against it, and now I realize that I have been stuck in a bit of an echo chamber. Because of my preconceived ideas about income inequality, my gut reaction is to say the Graham has just twisted words around to justify holding on to the huge amount of wealth he has gained, but looking at the argument more clearly, I can see that Graham makes some good points. The poor people of today are still very much better off than the poor people of a hundred years ago. However, Graham mostly ignores the disadvantages of income inequality. If the goal is to have a society that creates the most wealth, I agree that people need to be rewarded for creating that wealth, but as income inequality increases, a growing section of the population will have restricted opportunities to create wealth. People with wealth will be in a great position to keep getting more, but the idea of poor people just creating a successful startup to become wealthy is impractical. With income inequality, poor people won’t be able to compete with wealthy people and so their startups will fail. To utilize the wealth producing capabilities of the whole population, income inequality needs to be dealt with.

I think that Graham was spot on with his predictions about how more software would move to servers instead of running on desktops. Normal everyday users shouldn’t have to know details about how computers work to be able to use them. Having everything running on servers and accessed only be web browsers makes a lot of sense. However, web browsers aren’t that great, and so I think the next step in moving forward with ease of use could be virtual reality interfaces. People with now experience using virtual reality interact with it instinctually from the moment the pick it up. VR interfaces could make interacting with software as easy for normal users as interacting with physical products.

Ethics: Reading 06

Companies should not weaken encryption or implement backdoors in their products for the purposes of government surveillance. Giving the government the ability to essentially monitor everything that citizens are doing means that resistance against any sort of corrupt government that could come into existence would be practically impossible. If the government was perfect and benevolent and guaranteed to always stay that way, I could see an argument for allowing mass surveillance. However, no government is ever perfect, and some people will always be tempted to misuse citizens’ data. In the article from Ars Technica about the American Spies book, Cyrus Farivar mentions the LOVEINT scandal, where people working at the National Security Agency used the technology of the Agency for themselves, targeting their exes. I think it’s very important that whenever we talk about expanding the government’s surveillance capabilities that we remember that the government isn’t just a monolith, but a collection of people. One malevolent person working at the NSA could cause a lot of problems using the infrastructure they have access to.

Beyond just mistreatment of data by the government, there are always risks of hacks. If companies were to agree to give a backdoor to the government, it is entirely possible that black hats could attempt to hack the people with knowledge of the backdoor and gain access for themselves. This fits with the concern I brought up earlier: even if you give surveillance power to someone or some group you trust, you cannot be sure that the group will stay trustworthy, or that the group will not be compromised. Finally, even if we are somehow able to guarantee the security of the massive amount of data that is collected and guarantee that no low level government employees will misuse their access, we still run into a problem when the leadership of the government becomes unreliable. It’s entirely possible that someone with no relevant experience could end up becoming President. No matter what safeguards are in place at that point, the President basically has the final say in matters related to National Security and could use his power to infringe upon citizen’s right to privacy.

Lastly, regardless of the trustworthiness of our government, massive surveillance is unconstitutional. The Fourth Amendment provides “the right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures.” I can see two arguments that can be made for mass surveillance being constitutional, but I disagree with both of them. First, the Constitution never explicitly states anything about digital data. This is obviously because none existed when the Constitution was written. Regardless, some people believe that the Constitution only grants rights exactly as they are written. This interpretation is not that common, however, as most people believe that the interpretation of the Constitution should change with the country. The more serious argument I can see is that the surveillance does not constitute unreasonable searches and seizures. This argument is focused on the idea that it is reasonable to perform mass surveillance to protect the American people. In fact, the push for more surveillance is constantly made in the interests of national security. However, there is very little evidence to back up the belief that this surveillance prevents terrorist attacks. Also, terrorist attacks are not a common way for Americans, or anyone, to die. Terrorist attacks are frightening, and people value security, but the ridiculous amount of money spent on surveillance that isn’t that useful should be going to things that would save more lives. The mass surveillance is not reasonable because it does not help that much with national security, and has ridiculous costs.

Hackers: Reading 04

I don’t have much experience with a variety of programming languages. The only languages I would say that I am proficient in are C++ and Python. I’ve done some Java and Scheme in a couple of courses, but outside of those courses I haven’t pursued learning those languages at all. My main experience with languages that aren’t necessarily “mainstream” programming languages was during my internship last summer when I programmed on a mainframe for a financial company. I worked with JCL and COBOL and SAS, but I never really got beyond the basics of those languages. Even without much experience, though, I can agree that different languages lead me to think differently about problems.

Scheme was difficult to wrap my mind around because it was so different from what I was used to programming in. I had to learn to think differently about data structures and recursion to be able to effectively program in Scheme. Working with the mainframe languages, I realized that programming languages definitely vary in power. At my internship, most of the work I did was really just writing programs to rearrange financial data. SAS was really useful for formatting reports, but it would have been really inconvenient if I had to use it to write something more complicated. COBOL is fairly similar, except that it is also super verbose. COBOL code uses a lot of English, which is supposed to make it easier to understand. In my experience, it simply filled up the page with a lot of words that could be represented in a simpler way.

Python and C++ are definitely more powerful than any of the languages I used at my internship, and they are also easier to use. In that way, I think that languages have improved. Still, Graham talks about how these languages are mostly descendants of FORTRAN that have just continued to pick up Lisp functionalities. I don’t count my experience with Scheme as giving me any real experience with Lisp. The programs I wrote were really simple, and I forgot what I did as soon as I was done. Reading these essays has given me a better understanding of Lisp than writing any of those programs. I’m actually pretty interested to give Lisp another shot, because I do believe that it is more powerful than the languages that I’m used to using. I don’t necessarily think it is a better language, though, because I think Python is much easier to use even if it is less powerful.

When it comes to the future of programming languages, I agree with Graham. I think that languages will focus on being very easy to use at a basic level because we won’t often need to worry about inefficiency as hardware technology increases. Also, I agree that these languages should be able to write more efficient programs if a programmer puts more effort into writing their code. Examples I can think of would be that simple programs would just run on one core, but it wouldn’t be that difficult for a programmer to change his code to run parts of the program concurrently. I also think that languages will continue to get more Lisp functionalities. In general, I think that a programming language in the future would have the functionality of Lisp, but could be easily understood at lower levels.