Object Oriented Design Patterns for Model Attribute EventsThanks Arun! I thought about a strategy, but I'm less concerned with if we bill than the act of how to pass the messages around. When Person changes, both CreditCard and Event need to be notified, but neither notifications really apply to Person's domain.

How to group count and join in sequel?Awesome! Thanks Jeremy! I didn't notice IFNULL in any of the sequel documentation, is that part of Sequel's query DSL or directly to MySQL (I may not understand how the {} expression blocks are evaluated)