From Camp 2011 Public Wiki
Livecoding Visuals with (fluxus) | |
---|---|
Shiny visuals, coded live. | |
Organizer | User:Cupe |
Contact | cupe-camp@erleuchtet.org |
DateTime | Day 4 / Aug 13 @ 22:00 |
Duration | 2 hours to 2 days |
End | Error: invalid timewarning.pngThe date "<strong class="error">Error: invalid time</strong>" was not understood. |
Location | OpenLeaks |
Date, time and location are totally subject to change.
From Wikipedia:
Live coding is the process of writing software in realtime, as a form of improvised time-based art. Typically, the process of writing is made visible by projecting the computer screen in the audience space. Live coding is particularly prevalent in computer music, combining algorithmic composition with improvisation. Live coding is also used to improvise video animation, for example using the Fluxus environment.
Which is what we will do. If you have a notebook on which you get fluxus to run (download at http://www.pawfal.org/fluxus/) you can code on your own, otherwise we will try "group programming" on my notebook via the projector that we will hopefully have. We will probably start by me showing you around fluxus and you suggesting things to try. We will sync to music and possibly android accelerometers. I do recommend installing and testing fluxus before coming to the workshop if you want to code on your own.
Fluxus uses racket (which is a scheme (which is a lisp)) as programming language and has a programming model that is similar to (and based on) OpenGL, but without the boilerplate. We might also write shaders in the GL Shading Language for even more fancyness. None of these is a prerequisite, although some coding experience in any language will help.
The Toplap Manifesto:
We demand: * Give us access to the performer's mind, to the whole human instrument. * Obscurantism is dangerous. Show us your screens. * Programs are instruments that can change themselves * The program is to be transcended - Artificial language is the way. * Code should be seen as well as heard, underlying algorithms viewed as well as their visual outcome. * Live coding is not about tools. Algorithms are thoughts. Chainsaws are tools. That's why algorithms are sometimes harder to notice than chainsaws. We recognise continuums of interaction and profundity, but prefer: * Insight into algorithms * The skillful extemporisation of algorithm as an expressive/impressive display of mental dexterity * No backup (minidisc, DVD, safety net computer) We acknowledge that: * It is not necessary for a lay audience to understand the code to appreciate it, much as it is not necessary to know how to play guitar in order to appreciate watching a guitar performance. * Live coding may be accompanied by an impressive display of manual dexterity and the glorification of the typing interface. * Performance involves continuums of interaction, covering perhaps the scope of controls with respect to the parameter space of the artwork, or gestural content, particularly directness of expressive detail. Whilst the traditional haptic rate timing deviations of expressivity in instrumental music are not approximated in code, why repeat the past? No doubt the writing of code and expression of thought will develop its own nuances and customs.