Creative coding
Express with code.
If programming a game is like writing a book, creative coding is writing a poem.
Creative coding uses code in the contexts of art, play, creativity, and self-expression. Often, this involves making artworks with computer code, but the field of ‘creative coding’ is far more broad than that.
For students, creative coding is far more accessible than a traditional engineering or systems approach to code. When programming towards expressive ends - as opposed to functional - the needs and tools can be dramatically different. Usually the differences make life easier for the programmer. For example, there are few “best practices” that one must follow before they have a chance to understand why the practices are the way that they are. The most inaccessible element of creative coding tends to be graphics pipelines and signal processing concepts, which are both well worth learning about in their own right.
All in all, Creative coding is an excellent introduction to programming and graphics, and complementary to learning real-time 3D engines.
You can do creative coding with all sorts of tools, although a few stand out. See Libraries and Software.