Live coding

Here comes the time of “live coding”.

My son and I were regularly following some French Youtubers playing Minecraft or other video games last year. This looks like a crazy life, but maybe living as a Youtuber is not so far to being a programmer. In any case, what is of interest to me is that the tools Youtubers actually use (Youtube, Twitch, Discord) are actually also used by some folks I follow in computer science. For instance, Swizec Teller, author of Why programmer work at night, has an account on Youtube for live coding. Likewise, Stephen Wolfram, who recently discussed computational essays on his weblog, created an account on where we can watch live coding session with Mathematica (with a little bit of promotion for Mathematica, now called Wolfram Desktop). And, in fact, (now called is similar to Twitch but its target audience is programmers, not gamers.

I know there are a lot of resources on Youtube, including conferences or courses, or just screencasts. Mike Bostock did a great presentation at the 2017 CSV Conf, but see A Better Way to Code for an edited transcript. Likewise, I was just listening to one of the Ihaka Lecture Series on Youtube, and I know I should probably go listen to the Statistical Rethinking lectures that Richard McElreath posted recently. Recently, Hadley Wickham recorded a short live session of R coding on Youtube. Other channels of interest: Joel Grus implementing a deep learning library in Python 3.6 or live coding during the advent of day event; the Clojure TV, including live coding Mathematics Your First Clojure Proof by Frédéric Peschanski, or Machine Learning with Clojure and Apache Spark. From the user perspective, you quickly have a feel of presence, like in an immersive experiment, while for the presenter live streaming is certainly less work compared to video editing for a complex screencast. So Youtube is great for that kind of stuff.

Are there any other platform that is used for such activity? Is this going to evolve over time? One of the best course I took on Coursera was run by Randall LeVeque: High Performance Scientific Computing, which I discussed in an old post of mine. The course relied on the Coursera platform but the instructor recorded his video during real courses and will lot of live coding. I found this was really captivating compared to more classical curricula on Coursera (fixed set of videos, quizz and project done offline).