I gave a lecture yesterday at the University of Warwick as part of one of the Department of Computer Science's undergraduate courses.
I spoke about two things: Firstly, the way Microsoft Research operates within Microsoft. People are always surprised about how we operate - we're not told what to do by the product groups. What's interesting is to look at other research labs to see how they operate. There's a surprising amount of variation. I was very happy to point the students to Roy Levin's recent paper.
The second thing I spoke about was (surprise, surprise) C# 3.0. More specifically I wanted to emphasize the very strong influence of functional programming on the new features that appear in C# 3.0. [Particularly pertinent as it appears that Warwick was dropped functional programming from its degree course - which is a real shame.] I also wanted to show how formal techniques can and are used in commercial language design.
Overall it was great fun. I'm always impressed by the quality of students at Warwick.