I'm a fan of LINQ in C#. It means you can mix and match imperative and declarative code to suit the need. I prefer not to make things any more complicated than they actually are.
I'm still trying to understand why Android was a commercial success and Windows Phone wasn't, when Android is inferior in almost every way. I hope that when I figure this out I will be ready to market my own products.