https://www.youtube.com/watch?v=xJZrMbS2dDk
refactoring-pattern-flatten-nested-conditionals
At 9:45 does a re-factoring
At 10:50 code that is really bad only gets worse because developers make the smallest change possible to ship
At 13:50 uses method_missing
At 17:10
At 19:20 exceptions
A thought I had while watching: We want code to tell a story. We should also want documentation to tell a story, too.
"tests detect and warn you about changes in behavior"
tests allow you to experiment and rearrange your code to see what tells the best story
TODO: not done watching this video