Creative coding
Creative coding is a type of computer programming in which the goal is to create something expressive instead of something functional. It is used to create live visuals and for VJing, as well as creating art installations, projections and projection mapping, sound art, advertising, product prototypes, and much more.
History
Using programming to create art is a practice that started in the 1960's. In later decades groups such as Compos 86 succesfully explored programing for artistic purposes, having their work exhibited in international exhibitions. From the 80's onwards expert programmers joined the 'Demoscene', and tested their skills against eachother by creating "demos": highly technically competent visual creations.
Tools
A number of libraries have been created that aid in the rapid prototyping and development of these works. There are libraries for various functionalities, such as computer vision, as well as technological products such as the Microsoft Kinect camera. Popular larger toolkits that are used (and often created by) creative coders are:
Gatherings
Two of the largest festivals in which creative coders gather and discuss their work are EyeO in the United States, and Resonate in Europe. Smaller festivals and meetups are organised all over the world.