We will never be able escape form legacy code. When working on a project there are always tradeoffs and code quality is not always the top priority, so there is usually an interesting quantity of technical debt. Along with other things, entropy can lead a project to a place where it will become hard to change and difficult to maintain.
In this talk we will explore the idea of using refactoring, code smells and good practices to improve your code one commit at a time.
Also we will explore the importance of test first approach to revert the natural consequences of bad code.
Making clean, maintainable and flexible code is not something easy to achieve. It requires lot of accumulated experience, the correct mindset and culture and making the correct tradeoffs.
Since we are human beings, mistakes will be made, but more important than being perfect is how to create a safe environment that enables learning at the same time that you continue to provide value to the business in a sustainable way.
In this talk we will explore some of the solutions proposed by other that have achieved success in software development:
- Rules for simple design
- Extreme Programming Values and Practices
- Test Driven Development
- The pragmatic programmer