Entradas

Microservices

 Microservices  Microservices are a solution, to complex online services, normal services used to have 3 principal parts, the html server, a server dedicated to answer all HTML and javascript requests and a database. This monolithic approach is hard to maintain and fragile, if something happens with a functionality in this monolithic services is probable that parts in this service will fail and the load in the service is hard to balance, many people trying to access to only one part of the service could deny that service to other people. Micro services consist in dividing everything into different components, it allows to have a more explicit component interface. Microservices are meant to b as decoupled and cohesive as possible, basically consisting in smart endpoints and dumb pipes this takes advantage of http-request-response, microservices also give the option to use based on multiple technologies, not limiting your team to exclusively use C++ or node.js for example. The d...

Software Craftsmanship

 Architects should not be coders, unfortunately that is an widely spread idea. An architect is the responsible for taking all kind of decisions  in the project and a non coder architect usually takes decisions whith a negative impact in the project for all coders  because they are so out of contact with that area.  Craftsmanship: Learning theory for programs is important, am not denying the importance on attending conferences, reading books and analysis theory and code, but most programming students only learn theory and when they go out of school and go into a professional environment, they face new and completely different problems, for example pair programming, where knowing when to apply it or not is hard and it is overused. Programming skills should also be shared by real professionals in a similar way craftsmanship is learned. Teaching to program is not the only thing should be similar to craftsmanship.  Another important point is when teams aren't well co...

Hidden Figures

I am not a fan of historical movies, most of the time i already know what happened, if they are making a movie about someone it's because the protagonist did something great, broke some rules established at the time, and that maybe the rules for all movies or story but in historical movies that is something  obvious before you start the movie. This happened to me at the start, i was no interested and i was not paying real attention. I am not sure about how much time i lost but in some point something interesting happened. I was about white and black bathroom, a horrible and common practice where only white people could use a white bathroom and black people could use black bathrooms. There is no reason for that segregation and in Nasa it was only affecting everyone working there. Katherine, Mary and Dorothy were 3 capable human computers, they used to do the heavy math calculations needed during the hard, stressful and tiring 60s, in the middle of the cold war, they needed to work i...

Is design Dead?

"If you listen at your code good design will will appear". This is the base in extreme programming where common design techniques are commonly ignored is not that extreme programming does not have design but the design been established as we advance in the project. Is listening to the code easy?  Most of the time it's not, the system can grown without control and modifying or repairing the code is harder  and harder, bugs are hard to identify and solve. But to be fair, a bad planning or design will lead to this inevitably or maybe even worst.  A good design or plan should counter all of this, all problems should be planned ahead and the code design should be adaptable enough to overcome this problem the project size is does not become bigger and bigger. Obviously this perfect design does not exist,  but the side effects can be minimized with a good enough design.  One advantage in extreme programing is simplicity, "Do the Simplest Thing that Could Possibly Work"...

Who needs an Architect

 Blog Who needs an Architect "In software, Customers have a different concept than developers".  What is true is that the software architecture also depends a lot in the developer. Is not the same to talk about enterprise application than other kinds of applications. Software Architecture is another way to describe the design behind a project, all rules behind the design and tools used in the projects. The persistence could not matter in certain applications for example, where you only need to analyze the data, not store the data.   So the architecture role helps to diversify all task in a project, enterprise level project are usually big and complex, having multiple modules and parts interacting constantly. One single mind could never understand all this parts in the project, they understand the design of the project, often dividing the project in smaller modules to work. This modules should be designed to be really easily replaceable, if something about the old mod...

Moon Machines

 The video was all about all the technical problems behind the  moon landing in the 60s.  That project is one of the most complex projects humanity has ever faced, multiple disciplines were being applied to their limits at the time, manufacturing the spacecraft, training people for using the most complex machinery designed by the human race, training the personal to survive the process of leaving the planet and the extreme forces their bodies had to suffer during the process. One challenge they were not expecting to be such a problem was the software. Obviously they couldn't just let the pilots take control on the spacecraft,  the mathematics are really complex and couldn't be done without help. They had to design Completely new software and hardware for that task. One example in that hardware was the memory they designed, it had to have enough storage capacity for all the software they needed to make and also be tough enough for surviving the process, normal memory ...

Introduction Oscar Zuniga

     About me: Am a computing science student in 7th semester, my hobbies include video games, anime and music,  I've been trapped in my house since the covid 19 pandemic started, so i cannot play tennis anymore. Fortunately, the nature of the enduro allows me to continue practicing that sport, but not as often as before. I am interested in machine learning, i think is a really powerful tool to be used now and in the future it will be even better.