We share our lessons learned on how to regain control of a legacy codebase written in Java (https://github.com/xpepper/fifty-shades-of-legacy-goose-game/tree/master/goose-game-two). This codebase shows some classic design problems but more than that, badly expresses the domain of the problem we want to solve. During the session we will tackle the code the XP way: it will be a live refactoring in pair programming; we will show how the quality and expressiveness of the code can be progressively improved if we apply some good development practices with the help of some effective tools.