Joe Kuemerle does an INCREDIBLE job of laying the foundation for why developers need aspect-oriented programming, introducing the paradigm, and tools available that support AOP. The InfoQ recording is from his presentation at CodepaLOUsa earlier this year. "If you've done any WPF programming, you've got your model view classes and you've got that INotifyPropertyChanged implementation in every...single...setter...in...your...type. Why? It's 2012, why do you have to do that ceremony -- put that boilerplate code in for something you know should be there and everyone else knows should be there?"