domingo, 11 de noviembre de 2018

Ethical Reflection on Ready Player One


About this quote:
Morrow wrote in his autobiography that he’d left GSS because ... he felt that the OASIS had evolved into something horrible. “It had become a self-imposed prison for humanity,” he wrote. “A pleasant place for the world to hide from its problems while human civilization slowly collapses, primarily due to neglect.” (p. 120)


I do not agree. I think OASIS, like the current technology was simply a tool in which players could have all the entertainment they wanted, and students could have at their disposal all the knowledge they wanted. I think that you cannot blame a tool for the problems that arise from its misuse, it would be like blaming a knife because you can harm people with that. I think the problem is that people do not make good use of technology. Such is the case that today people use technology in a wrong way; for example, social networks that instead of focusing on bringing those who are far away, has replaced the communication in person and has even generated problems such as cyberbullying. I also think that, if the users wanted to use OASIS to escape a terrifying reality, it is not all bad. In the end, they are not hurting anyone and if they find in OASIS a place where they can be happy, it's fine.

About the second quote that says:
(Halliday speaking) “I created the OASIS because I never felt at home in the real world. I didn’t know how to connect with people there. I was afraid, for all of my life. Right up until I knew it was ending. That was when I realized, as terrifying and painful as reality can be, it’s also the only place where you can find true happiness. Because reality is real.” (p. 364)
I think he's partly right. However, I think you cannot generalize about happiness or about what is real or not. Although it is an existentialist theme, it is also true that it is partly relative. People can be happy with what they themselves define as their happiness. On the other hand, we cannot be sure that the reality we perceive is the absolute reality, since for better or for worse we depend on our senses and thoughts to define the reality, and it has been proven that the senses and thoughts are manipulated and can be deceived.

In a system like OASIS I see several virtues. For example, the fact that there are virtual classes and online. In addition, the fact that you can have access to all the information such as old books, movies and video games. Another virtue in a system like OASIS is that education is free.

sábado, 20 de octubre de 2018

Hidden Figures


In the movie called "Hidden Figures" directed by Theodore Melfi I could see how things were in the 60's. At that time there were a lot of racism, so much that even the laws promoted it. I think it's unfair that, for the simple fact of being African-American, people have had to go through so much cruelty and injustice. As shown in the film with the main characters (Katherine, Dorothy and Mary), people of color could not formally have jobs, at least not in the same way as whites. The film talks about African Americans being paid less, they did not have official titles and their jobs were despised. The three African-American women were excellent at their job and yet they were reminded that their jobs were temporary (unless otherwise stated) and no matter how hard and skillful they were, they were considered replaceable.

It is for the above that I was impressed to see how Katherine and her friends managed to stand out despite all the obstacles that an African-American had at that time. They were able to show that they were better than other white people (those who were supposedly qualified). However, the racism against them did not stop, but increased the further they climb the stairs of success.

The film also shows a story of how an African American passenger vehicle was attacked with bombs and even then, it did not seem like justice was being done for that fact. It is noted that African Americans were not respected for their rights (maybe because they were not considered American citizens), and that is what makes it amazing how Katherine managed to stand out with her abilities to perform calculations and solve complex problems. In addition, it is also impressive how Mary managed to be an engineer and how Dorothy managed to direct a whole team of African Americans to work with IBM computers (Technology that was quite novel and difficult to manage at that time).

sábado, 22 de septiembre de 2018

Understanding the SOLID Principles


In the section of the book called "Ace the Programming Interview: 160 Questions and Answers for Success" by Edward Guinness entitled "Understanding the SOLID Principles", the author tells us about the meaning of SOLID. Even though I didn't know this term, I had already heard about the contributions of Robert Martin to the world of good software practices. I could say that a very important assertion was made at the beginning: "the more things you depend on, the greater the chance something will go wrong". In my experience, that is quite true and for that reason, I think that dependencies between classes should be avoided as far as possible.

I think that the first principle called "Single Responsibility Principle" is one of the easiest to understand but at the same time one of the hardest to apply. To get a class to have only one responsibility, there has to be a very good software design, but developers must also devote time to code analysis (especially those that are dedicated to maintenance). Otherwise, programmers will simply do what is faster and simpler: Add code wherever it is going to work (Apparently) what was requested by clients.

The principles with which I do not agree at all are "Open / Closed Principle" and "Liskov Substitution Principle" since I believe that the base classes should have the flexibility to be modified as long as the repercussions of the modification are understood. On the other hand, I think that classes must certainly be made to be extended or replaced by functions, since in this way it is easier to add future changes without having to analyze too much (which is quite useful when delivery times are very limited).

The principle called "Interface Segregation Principle" seems very true to me. I think it is very important to keep the code in small fragments so that they are understandable and reusable at the same time without wasting resources (unnecessary code fragments).

Finally, I believe that "Dependency Inversion Principle" is extremely important for static typing languages since by using this tool, the dependency between the concrete classes is minimized.