Notes on Design Patterns in Ruby