Being a professional developer is crucial in the software industry. Many developers are not working in a professional manner and this will bring a lot of trouble for the client and developer in the future; maintenance, scalability, performance, security, are just a few issues that will emerge and will put the project in danger, no developer will want to fix it and the client or company will be left with a useless project and a lot of money wasted.

We as developers always seek to be better, but sometimes we don’t know the practices or principles to achieve this. In…


In this post I will be talking about Robert Martin’s aka “Uncle Bob” conference about The Reasonable Expectations of Your CTO. In which he explains what he would expect from us if he happened to be our CTO.

Are we professionals?

Based on our practices and principles we will answer this question. We need to be professional in this working environment and take our jobs seriously. Our civilization depends upon our work, software is everywhere in our daily life. …


In this post I will be talking about the first 4 packages principles. In this context a package is a binary deliverable like a .jar file, or a dll as opposed to a namespace like a java package or a C++ namespace.

The 4 principles are:

The Release Reuse Equivalency Principle (REP)

The granule of reuse is the granule of release. Only components that are released through a tracking system can be effectively reused. This granule is the package. Reusing is not the…


In this post I will be talking about some practices that the refactoring.guru website recommends, more specifically, primitive obsession and feature envy.

Primitive Obsession

Signs and Symptoms

Reasons for the Problem

This type smell is born when you use a primitive field to store information, instead of creating a class…


In this post I will be talking about David Thomas and Andrew Hunts’ The Pragmatic Programmer book, specifically Chapter 8, in this chapter we will talk about what to do before a project.

The Requirements Pit

When start any project, we need to define first what we want to achieve or solve with it. The requirements phase is crucial, in the early days, computer were not as flexible as today. So, back in the day, requirements needed to be really specific and not change overtime because of the technology back then. Today, this is not the case, requirements change everyday…


In this post I will be talking about David Thomas and Andrew Hunts’ The Pragmatic Programmer book, specifically Chapter 7, in this chapter we will talk about The Pragmatic Approach.

Listen to Your Lizard Brain

All of us have have an animal side that represents in our instincts, throughout the years we have been taught to eliminate that animal part from us, but the reality is that this part is really important. Many people that have been attacked or robbed, sensed something different or uncomfortable before getting assaulted, that’s our animal side screaming danger. In coding, this applies in the…


In this post I will be talking about David Thomas and Andrew Hunts’ The Pragmatic Programmer book, specifically Chapter 2, in this chapter we will talk about The Pragmatic Approach.

The Essence of Good Design

Making a good design is pretty important, not as a rule but as a value. Is is easier to change in the future a good design rather than a bad design. There is a principle called the ETC which means Easier To Change. ETC covers the main reasons for change:


In this post I will be talking about Kent Beck’s Extreme Programming Explained book, specifically Chapter 7, in this chapter we will talk about XP Practices.

In XP there are several practices that go in line with Extreme Programming, these practices help teams to get the best of them and to produce code in a new way that brings with it a lot of advantages. The XP practices are the following and we will talk a little bit of each one, for this part 2we will talk about the last 7:


In this post I will be talking about Kent Beck’s Extreme Programming Explained book, specifically Chapter 7, in this chapter we will talk about XP Practices.

In XP there are several practices that go in line with Extreme Programming, these practices help teams to get the best of them and to produce code in a new way that brings with it a lot of advantages. The XP practices are the following and we will talk a little bit of each one, for this part 1 we will talk about the first 6:


In this post I will be talking about Kent Beck’s Extreme Programming Explained book, specifically Chapter 23, in this chapter we will talk about Timeless Way of Programming in XP.

Client Needs

Kent Beck explains that in the older times, it was really common for people to build their own houses, since the person building the house was the one that was going to live there, they knew exactly what to do and how they wanted the house. The client needs are critical and should be taken into consideration in all matters.

After some time, architects started designing houses instead…

Victor Elizalde

Software Engineer with a passion for sharing knowledge. Also, sports lover, musician, gamer, and a tremendous food fanatic.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store