I talk a little about my love-hate relationship with notification-based design patterns in application development, based on some recent ideas around Cacophony.
While these approaches seem to make the high-level responsibilities within the system easier to understand, they do seem to make the relationships between them much harder to see and trace through when debugging.
I will need to further experiment with these ideas but I suspect that this might be fine if only done for constructing data views. Using these for data model updates or control logic invocation might be where this idea becomes an anti-pattern.