Zuckerberg: Friend or foe?
DISCLAIMER: ALL THE OPINIONS ARE RESPONSIBILITY OF THE AUTHOR AND ARE BASED ON THE FREEDOM OF SPEECH.
This time, I will write about the documentary video entitled "Mark Zuckerberg: The Real Face Behind Facebook". The documentary exposes how Mark Zuckerberg made Facebook, but not everything was a fairy tale. Again, I'll analyze some of the points of the documentary instead of writing a recap (as I did in the "Revolution OS" entry).
The first point to review is Mark's childhood. Many times, kids are kind of agressive with other kids that are "different". We can relate Mark's actual behavior to his childhood. When a kid is harassed, he or she automatically turns insecure in everything. In my case, I corrected that behavior in college (when I was 16-17 years old). Mark did after his D8 interview. Many people don't see this, but harassing other kids may affect for the rest of our lives. In Mark's case, he turned insecure... And "dangerous".
Now, let's talk about all the Facebook scandals. First of all, we already know that the greatest IT people is not known by being honest. We find the same pattern of someone taking someone else idea as his own (this is why we are taking ethics courses). Unfortunately this pattern is the initial action to a great company, but in my opinion, we (as people) can do better than that.
Then, we have the event Zuckerberg-Saverin. I think that not giving credit of something to someone who always trusted your idea is really disgusting. Zuckerberg did not have valid arguments to take this action, but sometimes the ambition can change people's mind.
Afterwards, we have "The social network" thing. As we have seen with other IT people, when you are famous, you are exposed to be critiziced (as well as applauded). I think that when Zuckerberg made public a donation in the Oprah show, he just exposed himself as a person who did a lot of things that appeared in the movie, but he just wanted to send another message with just one action... Not convincent at all.
Finally, I will write about Facebook involved in problems like cyberbulling and Facebook privacy. Nowadays, Facebook is used to spread information... ALL the information. If we want to harass someone, we take some private and embarrasing information and put it on Facebook (so everybody knows about it). Again, the people do not know the consequences of their actions and the person they harass can be affected. The point here is that Facebook is not guilty of the actions of the people, but the thing is that they provided the means to those actions... Complicated stuff, uh? About the data privacy, let's remember all the information on Facebook is not ours... It belongs to Facebook. Many people is not happy with this, but when we accept the terms and conditions, we are accepting that all the information, photos, videos and so on, are property of Facebook... Yes, we should read carefully before accepting anything.
Finally, Mark Zuckerberg is a great programmer/computer science person, and everybody loves Facebook, but he is also a human like everybody else, and as a human he has defects. I am not trying to justify his actions; indeed, I want to remark that as a human he might act in order to harm someone or to benefit himself.
Wow, I really missed blogging. I hope you liked this. Also the video is available here.
See ya!
Windows? Thanks but no thanks
DISCLAIMER: ALL THE OPINIONS ARE RESPONSIBILITY OF THE AUTHOR AND ARE BASED ON THE FREEDOM OF SPEECH.
This entry
is related to documentary video entitled “Revolution OS”. The documentary
exposes how the Open Source and the Free Software were created, under which
terms is distributed and how this projects were (and are) taking Microsoft
users. Now, what I'll try to do (yes, try) is to analyze some of the points of
the documentary video instead of just making a recap.
First of
all, let's talk about the Microsoft behavior. Even when Microsoft is a huge
company, they are afraid of the competition... Yes, they are AFRAID. We
have the Netscape case (I think almost everyone knows about this one) or the
OpenGL case. Let's check the OpenGL case: This time, when Microsoft Windows
Vista was released, DirectX had a positive feedback and the programmers wanted
to use it. Even when OpenGL was way better, Microsoft launched a FUD (fear,
uncertainty and doubt) campaign against OpenGL, making a wild exaggeration of
the merits of DirectX and the disadvantages of OpenGL. This way, programmers
used DirectX over OpenGL, even when OpenGL is multiplatform and DirectX is only
supported by Windows and XBOX. The key for Microsoft is to spread the fear
instead of taking advantage of the competition... Yes, TAKING ADVANTAGE. How
can you take advantage of a competition? Well, from my perspective, the competition
will help all the companies involved, because if you compete to be the very
best, like no one ever was (yup, that was Pokémon), then all the companies will
have to improve their software, so the companies will have better software. In
the OpenGL case, if Microsoft had accepted the competition, OpenGL and DirectX
could have been better by now...
I think this is enough for now, let me know if you what's your opinion about this. Also, the documentary is available in YouTube if you are interested.
See ya!
Software Architecture Fra Diavolo
This entry is related to the 14th chapter of the book "Code Craft". It explains why having a software architecture is a serious issue, the similarities with "real life" architecture and some types of architecture... Pasta architecture (for real).
Let's analyze some of these points.
Yes, having a software architecture is a serious issue. This will help a programming team in order to avoid any extra efforts in a project (and by "extra" I mean "unnecesary"), like too specific/general modules, redundancy and so on. We have to remember that a project is a limited-resources (time, money and quality) effort, so we have to achieve a goal without wasting any resource.
Now, let's analyze some of the architectural styles from the book (and by "some", I mean "the ones I liked"... You know... This is my blog :P):
Obviously, having no architecture (spaghetti ball) is not the best idea, because you do not have an idea of what you have to do. Layered architecture (lasagna) is one of the most common styles: you make some low-level modules, then you make some mid-level modules (using the low-level ones) and so on. This style might work well, but if you have a distributed aplication system, for example, maybe you are looking for a server/client style (gemelli). With this style, you take on count some client actions, and you don't need to have all the functionality on the server side, and you can consider your client is not a dumb terminal (like everyone does). I really like this style, because it makes some things safer. Even when some geeky dude achieves to use a client-side code to some personal goals, you can verify if everything is working well on the server-side. Also, you can find pretty cool asychronous stuff in the client/server style (yes, yes... I really enjoyed working on distributed aplications using Node.js). Now, if you are lazy (like me :D) and you don't like to work too much in general things, maybe you will like middlewares (canned ravioli). These things are one of the best thing I've seen in my life, because they LOVE my laziness :3 Middlewares provide you some general work, which is necessary for the most basic application (yes, I love you, Express). If you are a person that likes doing all the job... Well, middlewares are not for you... I'm sorry...
I began writting serious stuff and I ended fangirling (sorry about that). If you want to read more specifically about software architecures, I widely recommend the text I read to write this entry ("Code Craft" Ch. 14). Also, I would like you to know that I know the meaning of every culinary term used in this entry (it's hard to grow up with a chef sister). I hope you enjoyed this entry as I did. See ya!
Let's analyze some of these points.
Yes, having a software architecture is a serious issue. This will help a programming team in order to avoid any extra efforts in a project (and by "extra" I mean "unnecesary"), like too specific/general modules, redundancy and so on. We have to remember that a project is a limited-resources (time, money and quality) effort, so we have to achieve a goal without wasting any resource.
Now, let's analyze some of the architectural styles from the book (and by "some", I mean "the ones I liked"... You know... This is my blog :P):
Obviously, having no architecture (spaghetti ball) is not the best idea, because you do not have an idea of what you have to do. Layered architecture (lasagna) is one of the most common styles: you make some low-level modules, then you make some mid-level modules (using the low-level ones) and so on. This style might work well, but if you have a distributed aplication system, for example, maybe you are looking for a server/client style (gemelli). With this style, you take on count some client actions, and you don't need to have all the functionality on the server side, and you can consider your client is not a dumb terminal (like everyone does). I really like this style, because it makes some things safer. Even when some geeky dude achieves to use a client-side code to some personal goals, you can verify if everything is working well on the server-side. Also, you can find pretty cool asychronous stuff in the client/server style (yes, yes... I really enjoyed working on distributed aplications using Node.js). Now, if you are lazy (like me :D) and you don't like to work too much in general things, maybe you will like middlewares (canned ravioli). These things are one of the best thing I've seen in my life, because they LOVE my laziness :3 Middlewares provide you some general work, which is necessary for the most basic application (yes, I love you, Express). If you are a person that likes doing all the job... Well, middlewares are not for you... I'm sorry...
I began writting serious stuff and I ended fangirling (sorry about that). If you want to read more specifically about software architecures, I widely recommend the text I read to write this entry ("Code Craft" Ch. 14). Also, I would like you to know that I know the meaning of every culinary term used in this entry (it's hard to grow up with a chef sister). I hope you enjoyed this entry as I did. See ya!
Are smartphones the most powerful devices of all time? I DO NOT THINK SO!
I promised
you an entry about this documentary… So here it is!
Recently I
watched a documentary called "Moon Machines", that is about how men
built the necessary technology in order to travel to the moon. If we consider
the Apollo mission was about de 60's, then we should analyze the technology
that was used.
The Apollo Guidance Computer was the machine that provided guidance,
navigation and control of a spaceship. All this functionality was made with a
few MHz of processing and a few KB of memory.
Let's think about this: What
would have happened if in the 1960's they had had our technology? We could have
been living in Mars, or we could travel across the universe at the speed of
light. All of this sound great, but let's analyze our situation: We have some
powerful devices in our hands (computers, smartphones, and etcetera). What are
we using these devices for? Apps? Games?
If the Apollo Guidance Computer had the
capacity to guide and control a spaceship with less processing power and memory
than a Nokia cell phone, why don’t we take the power we actually have in order
to build something better? Maybe you are asking yourself “What is something better?” Well, we
have endless possibilities, like improve the Apollo Guidance Computer, making
it capable to locate the spaceship across the whole Universe (or a great part
of it, since the Universe is infinite), or make some calculations to travel to
an Earth-like planet.
Finally, what I’m saying is that if we have such powerful
machines, we should take advantage of this computing power… I don’t know, maybe
someday we will be capable to find the limits of the Universe.
I hope you
enjoyed reading this (or maybe you just said tl;dr… I don’t know). I do not
know when I will write my next entry, but it might be soon :)
puts("Hello Wolrd!");
Hi! :D
This is my first entry in my new Software Design and Architecture blog (yay!), so I'll introduce myself:
* My (almost) full name is Edwin A. González (yes, I have a middle name).
* At the time of this entry, I'm 18 y.o.
* I like playing videogames and dancing hip hop.
* Books I like: 1984 - Orwell, Da Vinci Code - Brown, Harry Potter Saga - Rowling (yes, I'm a Potterhead), Strange Case of Dr Jekyll and Mr Hyde - Stevenson.
* TV shows I like: Criminal Minds, NCIS, The Big Bang Theory, New Girl, The Simpsons.
* Movies I like: Despicable Me, Kill Bill (both), Pulp Fiction, V for Vendetta, The Avengers, Rise of the Guardians, Wreck It Ralph, Hotel Transylvania, Scary Movies, Iron Man, Sherlock Holmes, etcetera.
I expect to learn a lot of Ruby and patterns in the Software Design and Architecture course. I'm very interested in the language because I have seen some cool things done with Ruby, like having bare words in the Ruby shell (Why would you do that? o_O).
I guess that's it. Soon I'll upload an entry about the documentary video entitled “Moon Machines: The Navigation Computer”.
[If you want to read more about me, feel free to visit "The Author" section]
This is my first entry in my new Software Design and Architecture blog (yay!), so I'll introduce myself:
* My (almost) full name is Edwin A. González (yes, I have a middle name).
* At the time of this entry, I'm 18 y.o.
* I like playing videogames and dancing hip hop.
* Books I like: 1984 - Orwell, Da Vinci Code - Brown, Harry Potter Saga - Rowling (yes, I'm a Potterhead), Strange Case of Dr Jekyll and Mr Hyde - Stevenson.
* TV shows I like: Criminal Minds, NCIS, The Big Bang Theory, New Girl, The Simpsons.
* Movies I like: Despicable Me, Kill Bill (both), Pulp Fiction, V for Vendetta, The Avengers, Rise of the Guardians, Wreck It Ralph, Hotel Transylvania, Scary Movies, Iron Man, Sherlock Holmes, etcetera.
I expect to learn a lot of Ruby and patterns in the Software Design and Architecture course. I'm very interested in the language because I have seen some cool things done with Ruby, like having bare words in the Ruby shell (Why would you do that? o_O).
I guess that's it. Soon I'll upload an entry about the documentary video entitled “Moon Machines: The Navigation Computer”.
[If you want to read more about me, feel free to visit "The Author" section]