Advanced Agile Programming Techniques

We sometime forget, but Agile is primary about delivering working software. For working software we need to code, and this workshop is dedicated for the coding craftsman, and those who aspire to become one.

This is an opportunity to learn about different ways to code, experience them, and hopefully make use of them the day after when you’re back in the office.

We’ll explore different techniques: From Kent Beck’s simple design principles, going through a bunch of code smells, identifying and fixing them. We’ll talk about the Mikado method, and use it for refactoring, learn about preparing legacy code for testability, and even discuss the Transformation Priority Premise, a new concept that may alter the way we think about Test Driven Development.

Pick any language, as long as your IDE carries it. You can even switch languages to see what works for you better. This is deliberate practice at its best.

In this 1-day workshop, participants will get familiar with the technical skills and expertise that every team needs in order to truly be successful transitioning to Agile. Just changing how we manage our projects is not enough. To consistently deliver working software at high speeds, we need to improve the way we write code and why this workshop exists.

Learning outcomes

After this workshop attendees will be able to:

  • Use refactoring patterns for making legacy code testable
  • Use techniques for refactor safely without tests
  • Write simple, expressive code
  • Identify and fix code smells
  • Use TDD in a more structured way

Target Audience

The course is targeted for programmers who would like to learn new skills for writing software. Attending this workshop will introduce new techniques and ideas on how to write quality code.

This course is intended for experienced programmers with at least 2 years of work in writing code using an object oriented language.

Workshop Outline

  • Refactoring for testability
  • Using output comparison for refactoring
  • Dancing the Mikado refactoring dance
  • Simple design and coding by intention
  • The code smell deodorant
  • Transformation priority premise
  • Wrap up