Categories
Uncategorized

Live Coding

Live coding demonstration. This blog post explains a YouTube video on Live Coding.

I am a big fan of live coding as a pedagogical technique to teach programming. As I note in my book (HTTCS available here) the evidence for effectiveness of live coding is clear:

Live-coding is an approach to teaching programming by writing actual code during class as part of the lectures. In a live-coding session, the instructor thinks aloud while writing code and the students are able to understand the process of programming by observing the thought processes of the instructor. […] We found that live-coding (1) makes the process of programming easy to understand for novice programmers, (2) helps students learn the process of debugging, and (3) exposes students to good programming practices.

Raj, Patel et al, Role of Live-coding in Learning Introductory Programming: link

On my YouTube channel I have now uploaded a live coding lesson I recorded recently. I talk through my thought processes as I solve a programming problem I composed. The problem itself and many others are available in a booklet I created for teaching skills needed to tackle the Non-Examined Assessment (NEA) in the 2016 GCSE spec. Although the NEA is no longer required, practical programming experience is still vital, so I still use these exercises with my classes.

In the video you can see and hear me narrate my thought processes as I solve the problem. I also demonstrate “call before write” coding, where I write a call to a subroutine, before later writing the actual subroutine. This matches my thought processes, and fits with the idea of decomposition, and solving a problem from the top down, focusing on the highest level of abstraction first, and filling in details later.

mraharrisoncs's avatar

By mraharrisoncs

Freelance consultant, teacher and author, professional development lead for the NCCE, CAS Master Teacher, Computer Science lecturer.