Initié dans les années 1990, JavaScript est devenu le langage de programmation incontournable des pages Web modernes.
Depuis 2014, Lauren McCarthy, s'est associée à Casey Reas et Ben Fry les créateurs en 2001 de la bibliothèque Java nommée Proccessing afin de refondre ce projet en JavaScript pour le web d'aujourd'hui.
Comme Processing, p5.js permet d'écrire des programmes pour créer des images, des animations et de l'interaction. Le concept est qu'à partir d'une simple ligne de code on obtient très rapidement sur l'écran un cercle par exemple ; Puis, juste en modifiant les paramètres de cette ligne, le cercle suit la souris ; Encore quelques lignes, et le cercle changera de couleur si on clique... Les auteurs parlent d'esquisser avec du code. Ligne après ligne vous construisez un programme qui génère votre création.
Initialement imaginé par et pour des artistes pour rendre la programmation graphique interactive plus facile, cette simplicité peut également servir à l'apprentissage accéléré des concepts de la programmation par des "Noobs" (débutants en informatiques) dans bien d'autres domaines d'application que le dessin numérique.
Attention, ce n'est pas parce que c'est simple que c'est simpliste : p5.js est un outil puissant, bien plus encore que Processing. En effet, avec P5.js vous n'êtes pas limité à des fonctionnalités de dessin dans une balise canvas de HTML5 mais votre création peut s'étendre sur tout l'environnement multimédia de la page web. Pour celà, on peut augmenter p5.js avec de nombreuses bibliothèques additionnelles.
L’art génératif fait référence à l’art qui a été créé en totalité ou en partie avec l’utilisation d’un système autonome. Dans ce contexte, un système autonome est généralement un système non humain et peut déterminer de façon indépendante les caractéristiques d’une œuvre qui, autrement, nécessiterait des décisions prises directement par l’artiste. Dans certains cas, le créateur humain peut prétendre que le système génératif représente sa propre idée artistique et, dans d’autres, que le système assume le rôle de créateur.
Exemples d'art génératif
http://www.generative-gestaltung.de/2/
Projet Recode Le projet Recode est une entreprise communautaire dont l’objectif est préserver des œuvres d’art créées avec l’ordinateur en le traduisant dans un langage de programmation moderne (Processing). L’objectif du projet Recode est triple:
- Rendre visible des œuvres créées avec un ordinateur.
- Rendre accessible et utilisable.
- Sauvegarder le code. Processing a été choisi en raison de son omniprésence dans les milieux éducatifs et parce que sa plate-forme open source bien documentée dispose d’une grande communauté de développeurs. Le code des œuvres proposées a été adapté pour p5.js