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 Twitch.tv where we can watch live coding session with Mathematica (with a little bit of promotion for Mathematica, now called Wolfram Desktop).1 And, in fact, LiveCoding.tv (now called LiveEdu.tv) 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
See also 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. There is an interesting discussion about live coding on Medium, with great tips about how to setup a working environment for live coding.
From a user perspective, it seems to me that you quickly have a feel of presence, like in an immersive experiment, and I find it very rewarding to learn how people actually work, how they solve problems as they arise, or how they debug their programs in real time. The Advent of Code that Joel Grus recorded on Youtube was very great for that. I guess for the presenter live streaming certainly represents less work compared to video editing for a complex screencast, although it remains a one-shot one-to-many exposition. So Youtube is great for that kind of stuff. Should you prefer a more traditional text-based approach, I can recommend How I start, where you will learn how people actually works using their language and editor of choice.
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, quizzes and project done offline).
♪ Foals • What went down
See also this blog entry: What Do I Do All Day? Livestreamed Technology CEOing. This is where I learned that Twitch is the successor of Justin.tv, involving Paul Graham and Y Combinator. ↩︎