Refactoring is the process of changing the structure of a codebase without changing its external behavior. In addition to being an important part of ongoing development, it can also be used to get a legacy codebase under control.
Using the Gilded Rose Kata as a basis, this workshop explores how to refactor a legacy codebase safely, even when you don't yet understand what the code is doing.