Software
Processing
"Processing is an open source programming language and environment for people who want to program images, animation, and interactions.... It was created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool."
Learn more and download Processing @ the official Processing site.
A few things I've made with Processing:
WebGL
See the dedicated WebGL section.