Skip to content

z2018 notes Cutting Legacy Code Quickly

ollin edited this page Sep 24, 2018 · 6 revisions

Based on the workshop at Coders Only by @LlewellynFalco

@ollispieps, @crashtester

Refactoring Kata examples

Good examples to practice your skills can be found on Github:

Approvals Testing

Clear commit messages

Arlo's Commit Notation: https://github.com/RefactoringCombos/ArlosCommitNotation

Prefix Meaning
F Feature
B Bug
!!! non-provable refactoring
c comments (add/delete)
d developer documentation changes (not end-user facing)
e environment (non-code) changes
t Test only
r Provable Refactoring
a Automated formatting

Key: lower case means low risk.

Provable Refactorings

A collection of refactoring recipes that are provably safe. They never accidentally introduce nor fix a bug, including one that you don't know exists. They maintain all behavior, including unknown or unspecified behavior. To accomplish this, each recipe is concrete and language-specific.

Branch Normalisation

@crashtester came with the name "Branch Normalisation" for what @LlewellynFalco showed us at Coders Only.