Usually as developers we are forced to implement functionalities over legacy code that wasn’t ever designed to support them. We have time constraints, pressures and last minute changes that push us to make ugly code. It is not always the fault of an external factor, sometimes we begin a project with a new technology, language […]