Did you know that coding and programming can be a form of creative expression? Not many people would associate art and programming, but you can exercise creativity in many programming applications. Here is a look into how art and computer science work together.
The Early Days of Computer Art
Computer programming and artistic expression first intersected in the 1970s and 1980s with a computer art subculture called demoscene. It was born during the dawn of home computer systems when purchasing a computer for personal use was first possible.
Demoscene is still an international art subculture today. You can find gatherings of demoscene participants at events called demoparties or computer festivals. Artistic programmers get together to push the boundaries of what computers are known to do, including music, graphics and programming techniques. Their audiovisual presentations, called demos, are technical and artistic achievements.
Code Poetry
Code poetry mixes computer programming language and human expression. Code poems may run as executable binaries, while others are static. Coding languages have their own unique semantics and syntax. They are, after all, a language written by humans.
Code poetry is a way for people to express imagination through coding. This act gives meaning and purpose to the coder's labor beyond what is expected. It gives coders tasks beyond their usual scope of working with data structures and querying metrics with
PromQL. It also challenges coders and the audience to push known boundaries.
Creative Coding
The definition of creative coding is using computers, code and software to create art or express oneself. Simply put, it is the idea of making art with code.
Branding, advertising and the design industry, in general, make use of creative coding. Cutting-edge brands use it to stand out among the advertising overload of today. Creative coders willing to push past the expected can find a place in advertising via creative coding.
Coding skills are also essential to creative pursuits such as:
Augmented reality
Virtual reality
Data visualization
The Internet of Things
Artificial intelligence
Live Coding
Live coding is also known by other names: on-the-fly, conversational, and just-in-time programming. It is a performing art form. This creative technique uses improvisation with source code and interactive programming.
The term live coder, used to describe the person creating the live code, demonstrates the intersection of programming and art. A live coder is defined as either an artist who wants to learn code or a programmer who wants to express creativity. Both definitions hold equal importance.
Live coding creates sounds and images alongside improvised dance, poetry and light systems. The computer screen is projected so that the audience can see the programmer writing the source code. Live coding is also implemented in making sound for the film industry or creating interactive art installations with audio and visual components.
A Contest for Artistic Coders
The International Obfuscated C Code Contest is a creative computer programming contest. It was first held in 1984. A panel of judges reviews entries anonymously; traditionally, no one knows how many entries there are each year. The winner appears on the IOCCC website, and its appearance is also the contest reward. Some winning categories include "Worst Abuse of the C Preprocessor" and "Most Erratic Behavior."
Generative Art
Generative art is a collaboration between a human and an autonomous source. The artist begins with a system, such as a computer program, and inputs an algorithm or mathematical formula. A set of rules automates the output, but the algorithm has some randomness embedded a work of art results between the regulations and the randomness and between the human and the machine. Generative music is another product of this art form.
On the surface, programming and coding appear technical, scientific and straightforward. However, even outside purely artistic applications, coding is a creative endeavor as the coder creates something new. The coders' medium is often a keyboard and screen. Coding as art has limitless possibilities; only the future knows where it will lead.