Skip to main content

Software Craftsmanship


On today’s blog we are going to review our first podcast named Software Craftsmanship, were Bob Martin talks about two things mostly, the software craftmanship (kind of obvious but ok) and some software techniques, during the whole podcast Bob is asked about the relation between and some of the characterises of each one that we are going to discuss later on.

The term Software Craftmanship refers to a software development technique based on the fact that when someone finish the college and then get its first formal job, the things that are actual work they are really different to the things learned in school. Now this explanation is really accurate because what we learn in the college is just the tip of the iceberg, that is why is so difficult at the beginning of a job to actually be settle down and adapt to the work rhythm the company has. This technique has an interesting approach on how to develop the skills, because normally we learn them by trial and error, but according this approach we develop them or even obtain them by the tutoring of the more skilled programmer.

This technique is very common nowadays, in fact I think that every area technically does it, the capacitation, this technique is the equal to a capacitation in any other job; because of this many companies doesn’t use more the waterfall technique, because the technology is constantly changing, there are new updates mostly every 2 or 3 months.

I cant say I loved the podcast, but can’t also say that I hated it, is just an interview to understand better a technique that can help everyone in the industry, is more like a very good advice for everyone out there having a hard time in the work, or at least that is what I think.

Comments

Popular posts from this blog

Is Design Dead?

On today’s entry we are going to talk about the article “Is design dead?”, which talks about how the design has been changing through the years and how the good practices were developed in order to create a good design. Is no lie that for all the people that develops software, is kind of difficult to come up with a good design because of the lack of and standards to create it, other areas may have standards or even a methodology, but not us. Because of these needs, developers have created a bunch of good practices, not to create, but to reach a good design probably in a 85% of success. For example, a good practice is a that the code we create has to be modular in order to make corrections or complete alterations in a easier, this changes may occur for many reasons, manteinance, update the information or just to simply chage the entire code to something more efficient, the same goes to the design, but the problem is that a design is more difficult to modify when is already d...

Microservices

On today’s blog entry we are going to talk about the Microservices architecture. This architecture has an approach where when we are developing a single app, we develop it as lots of small services, each of them running on its own process and communicating with each other with something that can bind them together. Now I have already used microservices without knowing I was actually using them, perhaps this architecture is quite intuitive for best practices or something like that, but anyway the author of the article gives some characteristics about this which are the following: ·          Componentization via Services: The components of the microservice need to be gather into libraries that will be used later on by the microservice to communicate with remote parts of the whole program. ·          Organized around Business Capabilities: This characteristic refers that we need to create divisions, e...

Understanding the SOLID principles

On today’s blog we are going to talk about the SOLID principles, which were discovered by Robert Martin, the famous Uncle Bob from the podcast of the previous entry. This principles are recommended to be used whenever someone wants to create an object oriented program. There are 5 principles where the acronym SOLID comes from which are the following S ingle Responsibility Principle (SRP) -> it says that any class should only have one responsibility. Yet, the author ends up saying that there might be some classes that have two responsibilities (the invoicing class that has some logging routines). In the end, I didn’t understand this principle well because I found the explanation confusing (as the author said, practice is much more difficult than theory).  O pen/Closed Principle (OPC) -> open extension but closed modification Although the author says that if you change a parent class method it might kill another part of the ...