Ruby: Patterns Deep Dives