Entradas

Hidden Figures

There are many reasons of why I adore so much this movie and I am so grateful of seeing it in class and had my classmates to watch it too. Growing up as a lonely girl with lots of hobbies considered good only for boys I really relate to the main characters of the movie. I think that nowadays we girls fighting for a place in this men’s world, owe lots of things to all these wonderful women who came before us and let a path for us to follow. Now, something that is quite sad is that if not as marked as at that time, several things still happen in our modern world and not all of us are aware of it. I am really happy to have grown in a family as supportive as Katherine and even with that I could not escape all the criticism that brings choosing this “men’s career”. As a girl I have been told that a girl does not have the brain to make it in programming, even less so in security. I have seen my sister struggling with the inequality in salaries when she is an outstanding engineer. I hav...

Ethical Reflection on R.P.O.

Being RPO a book I really loved and enjoyed from the very first time I read it, I think we can rescue one or two things besides the entertained story and the wholesome references. I hope that those who read the book can see them and think at least a little about those topics. In the book, we have this society that has seek refugee of the reality inside a virtual world called Oasis, because for them, reality was not as interesting, or in some cases reality was really a terrible place to be. There is also this world with almost all the resources wasted and in consequence a lot of people living either in an extreme poverty, or being miserable with the little income they had, which pushed them further into Oasis.   Our reality being not as bad as this world inside R.P.O. nowadays this imaginary situation where people aisle themselves is similar to what we tend to do with technology and social media. We tend to create this image we want other people to see on this media and we...

An Introduction to Metaprogra... what?

During my first years studying programming, I always considered that creating a program that wrote programs was something quite confusing and complicated. I consider this article to be something useful and simple to introduce the concept of metaprogramming, even if I got lost at some point of the way and did not completely grasp the whole idea. The professor is right in that a metaprogram is usually considered as something complicated and a little bit mystified. It was quite helpful that the example for the introduction to this topic was given in ruby, since it is a very simple yet powerful language that is dynamic and lets you concentrate in the concept rather than in the language syntax, almost like it was pseudocode. What was left not so clear to me is how code modification during runtime can be considered as metaprogramming. Since it is something so exclusive of certain languages and until this course I had not been introduced to it or used it, I’m not very familiar with ...

Microservices

It is not the first time I have heard of Microservices, but I never had the time to really get into the subject. In particular, I believe that the Monolithic helps to visualize the reason of why microservices have been a hit, rebuilding and relaunching a whole application each time something changes. It may not seem something crazy… if we are talking about a small app, but when you really think about it in the real and productive world this can be quite difficult and that’s when microservices come in to save the day. The main advantage of a microservice style is that it makes everything modular, so you don’t have to go through the process of deploying the whole system with every change that is made, but it is not the only one. It also allows you to create several small cross functional teams, and what really caught my attention is the view that this style has over software and products, not just over projects. It makes more sense to me to think about software as a product that ev...

4+1 View model

When working on a software project, if you do not have a guide and keep in mind the whole picture, sometimes you as an individual that is part of a team, tend to forget about everything else but the part that was assigned to you. That is what the blog of this week is about and what a perfect example was the elephant story. From a personal perspective, I can say that this is a reality. If not as dramatic as the elephant chaos created by the blind people who failed to get the whole picture, it was quite funny to say the least to face this situation. Our last semester while working in the intelligent system, the front and back teams ran into a difference about the format of the data that had to be passed between applications. This happened because when each team started to work on their part, encapsulated in their task and never reached out to the other team to reach an agreement and in the end even the data mining and the AI teams got involved. This type of situations tends to ...

SOLID

Although the SOLID principles are something that should be, at least, common in object-oriented programs, we programmers tend to forget about some of them and incur in practices that negatively affect our code. From the beginning when we are taught OOP, we might not be aware of these principles even if we tend to gravitate towards some of them depending on how we learn to OOP program. For a start, I think that when we learn to program in the Object-Oriented Mode, we usually are taught to apply Single Responsibility because it is easier to think about classes as a description of an object that has a set of characteristics and one function. It might cost a little at the beginning to effectively accomplish this, but when you gain some practice, for the sake of clarity this is usually the go-to way. The next most usual behavior I follow is the Interface Segregation Principle. Since it is somewhat similar to the Single Responsibility, it is easier to understand and then apply in t...

War Games

I think that for us geeks, the movie War Games is considered some sort of mandatory movie. I had not seen it before, and still knew that despite the sci-fi the movie has, it was entertained and funny. What I loved most about the movie, besides the things it showed about machines at that time, like the sound control they had to access the lines, or how you had to connect to the internet, or the low security implemented back then, like in The cuckoos egg, is that they show the limitations we sometimes tend to forget about machines. They. Don’t. Think. In the movie, after the tech people in charge to turn the key fail the test, they replace them with a super advanced programmed with AI machine, because it would not hesitate to do the job if necessary. This started to cause every sort of trouble when David managed to enter via a backdoor the system had, while trying to filter a video games company. Then, thinking that the programs the computer had were games, David makes the comp...

Software craftsmanship

What I liked most about the podcast is the realistic approach that Bob Martin, with all his years of experience, takes on our work context. The tools, the way how we work evolved, how should we do it, how we make it to the professional field, the professional relationship with our customers, etc. I liked how he takes the fact that programmers used to look at cascade developing as a sort of bible or default go to in order to make code and then when we evolved to extreme programming, like the best practices of SCRUM, sometimes abusing some practices like pair programming, ignoring others, like debugging and making mistakes since nothing is set in stone. The truth is that, as “Uncle Bob” says it, we arrive to our first job without knowledge about the real word. The college gives us a general idea, but only practice is what gives us the true knowledge. We are no longer in a controlled environment, you do not know what can go wrong and how to act. In this case, I think that the dynami...

Is design dead?

It might have to do with the way we were educated by our professors, but I have never thought of software design as something dead or that is dying. The article made a very complete explanation why this is not something true: design is not dying, I agree with the article that design is evolving. As the article states it, going into the extremes of both positions can be something risky, Extreme programming as its prosecutors paint it and with a wrong execution can effectively lead into that glorious spaghetti not understandable code that is difficult to change, to work with and to grow. On the other hand, planning everything and trying to strictly adhere to the original design does not make room for changes that you learn when you are coding that must be made in order to achieve better results and to get to the goal, also if you try to get out a working code as fast as you can, a full old-school planned design is not the best way to go. What the article states, we experienced ...

Who needs an architect?

I think that the article’s author did a great job for setting a basis for a definition of architecture and for software architecture. I consider that the approach of defining architecture as the part of the design that is considered important, and as something that is difficult to change at later stages of the development. I consider this an accurate approach, since one of the parts we try to define at this stage of our majors is the language we will work on since we are not so versed yet in that field. That being said, this helps to separate between software architecture and the definition of planning and designing of software development. Considering architecture as something more specific than the design helps understand what the past lecture for the blog tried to tell when defining software architecture and its types. On the other hand, I quite disagree with the textual approach they took when specifying who determined what is software architecture. I don’t think that onl...

Software architecture

Software planning and design was not something we gave the importance it has when we started programming, creating and developing small projects for our courses. It was only when we started making greater projects that we became aware of one of the statements the chapters make: having a mess spaghetti or subway-like it’s going to make it hard for you to know what you did, how to fix an error, where it was or to add more functionality. What I take from the lecture, besides the types of software architecture and how it resembles pasta, is how awfully important it is to plan and create a design in the early stages of how your project is going to be implemented to have clarity and help the detection of errors or lack of requirement fulfillments. Just what happened to us last semester when we had to redesign the whole project midway into the semester. Still I had not come up with the term software architecture and if it was not for that lecture, I still would be confusing it with othe...

Moon Machines

To be honest I didn’t have an idea of how important the whole Apollo project was to the software world and vice versa.   I was already aware to a point that it had helped the computer hardware industry to develop great achievements and progress on the technology to be used because of the challenging requirements, but I did not expect it to play such an important part to the software engineering development as it was presented in here. It was shocking how the project pushed the software development so far it had to evolve. To fit the requirements of complexity and size, they laid the ground for preemptive scheduling and process priority that is used now in our computers. The gyroscopes we nowadays have in lots of our devices. The project was also important in the aspect that it brought up some of the most important issues about software development we have to these days, like how they began not knowing what to do, that requirements were needed, the importance they had to assig...

Hi there

Hello there.I'm Desirée. I don't have an idea of what to expect of the course. I hope i like it. In my free time i like to play video games, listen to music, read, draw, dance and sports. The most recent books I have read are Fire and Blood from Song of Ice and Fire, The Last wish and Sword of Destiny from the Witcher collection. Some series I've been watching are The Big Bang Theory, The Nanny, Friends and You.