Refactoring oo-design

http://yellerapp.com/posts/2015-06-01-getting-to-exception-zero.html

Really enjoyed this STABLE acronym from Sarah Mei:

  • S: Smell your code
  • T: Make Tiny changes first
  • A: Augment tests (one level above what you're trying to refactor)
  • B: Back up when necessary
  • L: Leave it better than you found it.
  • E: Expect good reasons (there's probably a good reason the code is in the state it's in - e.g. pressure, change over time, inexperience) https://speakerdeck.com/sarahmei/is-your-code-too-solid-with-transcript

http://drboolean.gitbooks.io/mostly-adequate-guide/

https://code.tutsplus.com/articles/rubyrails-code-smell-basics-01--cms-25261