In this workshop series, we practice the art of building, changing and growing software with principles and techniques that diverge from the conventional IF Strategy. Our aim is to enable the development of functionalities without the need for refactoring solutions derived through IF and Switch statements-approaches that often result in complex and nested code structures. Throughout each workshop, Francesco Cirillo will develop a series of software features, illustrating how adopting principles, design patterns, and a selection of other techniques supports the organic growth of the software system, thus avoiding the emergence of 'Code Monsters.'
Leveraging languages such as Java, Python, JavaScript, TypeScript, among others, we emphasize that the essence of this workshop lies not in the programming language but in the design principles. It's worth noting that each workshop edition may cover a selection of topics outlined in the Topics for Discussion—focusing on those most relevant to the challenges at hand, rather than attempting to cover all topics comprehensively. This approach ensures a focus on practical application and adaptability, allowing participants to learn and grow with each new edition of the workshop.