Have you been programming for a long time? If so, have you faced any situation that has come to be quite hard to solve? A feature that needs change but affects other features? A bug that’s hard to solve because it affects more than one place in your code?
Come learn the classical design patterns from the Gang of Four, applied to the Ruby language.