I just recently finished taking an online course titled "Functional Programming Principles in Scala". The course was offered by Coursera, and it is an example of an MOOC (massive open online course). This class was conducted entirely online, via video lectures, PDF handouts, online forum discussions, and programming assignments which were graded by computer.
"Indie Game: The Movie" is a documentary about independent game developers, and I highly highly recommend it. This beautiful movie follows game developers in various stages of releasing their product. The movie's focus on the personal trials, rather than the technical trials, really elevates the story.
I've been learning about Drupal Module Development the past few weeks. I'm using the venerable "Definitive Guide to Drupal 7" and a few times in the module development chapters (18, 19, 20), author Ben Melançon mentions running Drupal "in an IDE" to see how Drupal creates its various internal arrays.
I've been spending the past few evenings noodling with the HTML5 <canvas> element. I often bring up the HTML Canvas 2D Context Working Draft specification. The spec shows what functions are available to the canvas' context, and the examples are instructive. However, the spec also introduced me to a method for "hiding" HTML text directly inside another HTML file, using the "data URI" technique.
Like a lot of programmers, I've begun to wonder what all the fuss is about regarding HTML5. Casting about, I found Mark Pilgrim's fantastic tutorial on HTML5, appropriately titled "Dive into HTML5". I've been mucking with the canvas element, testing out the basics, and I put together a small web page showing a very simple random but colorful "box" generator.