David Wolever (a freelance developer here in Toronto) has released the first version of BrowserCast, an IPython Notebook plugin that allows you to synchronize a voice-over soundtrack with a step-by-step reveal of a notebook, thereby creating a screencast-style presentation in the browser. He has created two traditional (video) screencasts showing why BrowserCast is cool and how to create a presentation with BrowserCast, but if you really want to get a feel for it, you can use the bookmarklet that lets you give it a try with your own notebooks, or grab the plugin from GitHub and take it for a test drive.
Regular readers will know that I've been wanting something like this for a while. Long story short, the stuff that looks like text in a conventional screencast is actually just pixels painted to look like text; your favorite search engine can't look for the name of a particular class, you can't copy and paste code examples, and accessibility aids can't read it aloud. David Seifried and Jeremy Banks took a run at solving this problem last year using slideshows as their starting point (see this post for an early progress report, and this one for a later discussion of why our lives would all be better if someone made this work). BrowserCast comes closer than anything ever has to what I've been dreaming of; if and when we can add in-browser drawing (by integrating an SVG sketching tool into the IPython Notebook), I think it will be a world-beating platform for teaching people how to program. So check it out, and give David feedback—he'd love to hear from you.
This post originally appeared in the Software Carpentry blog.