I've been taking a couple of classes on Coursera, Algorithms and Machine Learning. Algorithms is taught by Robert Sedgewick of Princeton and is simply excellent. Admittedly, it is fundamental computer science, but as a particle physicist we tend to learn this stuff on the fly and it is very nice to fill in the basics with more rigour.
Machine Learning is taught by Andrew Ng of Stanford. It's also very good, but doesn't have the polish of decades that Sedgewick has. The content is even more promising though. We've just started to hit the meat with techniques like neural networks.