Just completed Functional Programming Principles in Scala on Coursera. Martin Odersky is impressive, as are the ideas behind his language. Favourite moment: all primes as a lazy evaluated infinite recursive stream, via the the Sieve of Eratosthenes. To iterate is human, to recurse divine… etc. Also liked Coursera a lot. Combine the coursework with a meetup with other participants, and you get something very close to the experience of university study. Recommended.