A live coding movement has arisen from everyday use of interpreted programming environments, where the results of new code can be immediately established. Running algorithms can be modified as they progress. In the context of arts computing, live coding has become an intriguing movement in the field of real-time performance. It directly confronts the role of computer programmers in new media work by placing their actions, and the consequences of their actions, centrally within a work's setting. This article covers historical precedents, theoretical perspectives and recent practice. Although the contemporary exploration of live coding is associated with the rise of laptop music and visuals, there are many further links to uncover throughout rule-based art. A central issue is the role of a human being within computable structures; it is possible to find examples of live coding that do not require the use of a (digital) computer at all.