Brian Beckmann has a Channel 9 interview in which he describes operating as a “Mort” programmer during his academic cosmology career. You might think that someone who programs to solve real day job problems in the most expedient way possible wouldn’t want to think about type theory, monoids/monads, or functional vs imperative programming styles, but Brian might convince you otherwise.
Some time ago, the LINQ teams decided not to try to sugar-coat the well-established but somewhat esoteric concepts at its core, e.g. lambda expressions and query comprehensions. This poses quite a challenge for those of us who have to explain to the masses why we think a) these concepts aren’t as hard as they sound; b) they will make your life much easier once you grok them; and c) how VB9 and C# 3 let you move incrementally and pragmatically in this direction without forcing you to give up the good ol’ imperative programming style altogether. Brian meets that challenge far better than I can hope to!