25 lines
No EOL
16 KiB
Text
25 lines
No EOL
16 KiB
Text
Title: Code créatif
|
||
|
||
----
|
||
|
||
Author: Jean-Noël Lafargue
|
||
|
||
----
|
||
|
||
Typeof: essai
|
||
|
||
----
|
||
|
||
Cover: - file://a8u2rj1e35diuqs4
|
||
|
||
----
|
||
|
||
Chapeau:
|
||
|
||
----
|
||
|
||
Text: [{"content":{"text":"<p>On peut distinguer deux types d’enseignements des pratiques numériques dans le cadre des départements d’art ou de design en école d’art ou à l’université.</p><p>Le premier consiste à former les étudiants aux outils que leurs métiers requièrent désormais : logiciels de traitement d’image, de mise-en-page, de montage, de traitement sonore, de traitement de texte. Chacun de ces outils est la version informatique de pratiques manuelles préexistantes, rendues en partie caduques depuis une trentaine ou une quarante d’années. La maîtrise des logiciels de la chaîne graphique et de la création audiovisuelle n’est plus un sujet en soi, et, sauf dans les brochures d’orientation scolaire qui ont besoin d’une mise-à-jour, on ne distingue plus le « graphiste » de « l’infographiste ». On notera, et les étudiants en école d’art en sont souvent très conscients, que les outils numériques ne remplacent pas tout à fait leurs modèles analogiques. La normalisation des pratiques, les limites des outils et la prédictibilité du résultat obtenu peuvent s’avérer frustrants. Il en découle chez beaucoup d’étudiants un regain d’intérêt pour des pratiques artisanales dont le grain, la possibilité d’accidents voire le caractère laborieux et physique ont une forme de charme : photographie analogique, anciens supports vidéo, banc de montage, cyanotype, héliographie, xylogravure, taille-douce, sérigraphie et autres techniques traditionnelles des arts graphiques.</p><p>Le second type d’enseignement s’attache à investiguer les propriétés spécifiques aux médias numériques. C’est le plus ancien, puisqu’il se confond avec l’époque pionnière qui a vu sortir des centres de recherche (mathématiques, computer science, technologies de l’information et de la communication) des productions artistiques réalisées sur ordinateur, avant même l’invention de la notion de pixel ou celle du logiciel applicatif. À cette époque, où tout était à inventer, on n’utilisait pas un logiciel, on écrivait un programme. On n’utilisait pas d’écran (et encore moins de souris), on communiquait avec l’ordinateur à l’aide de cartes perforées et il pouvait en retour imprimer une sortie sur papier listing – il reste une rémanence de cette époque dans la commande « print » qui dans la plupart des langages informatiques ne s’applique pas à l’impression physique mais à l’affichage d’une chaîne de caractères à l’écran. On ne disposait, enfin, d’aucun moyen pour convertir une image analogique en fichier numérique. On date les premiers enseignements dans le domaine du tout début des années 1970 avec Frieder Nake à l’Université de Brême ; Herbert W. Franke à l’Université de Munich ; Roy Ascott à l’Ealing college de Londres ; John Whitney Sr. à L’Université de Californie à Los Angeles ; le Groupe Art et informatique de Vincennes à l’Université Paris 8. On notera au passage l’impulsion déterminante qu’ont amené les théoriciens européens Max Bense, Abraham Moles et Frank Popper, qui chacun à sa façon s’est intéressé avec une précocité visionnaire aux spécificités de ce que l’on a nommé successivement « art cybernétique », « art à l’ordinateur », « art (multi-)médiatique », « art interactif » ou à présent « art numérique ».</p><p>Au cours du demi-siècle écoulé, et de manière encore plus prégnante depuis l’invasion d’Internet par le grand public (ou l’invasion du grand public par Internet), le « numérique » s’est diffusé dans de nombreuses strates économiques, industrielles et sociales, proposant ou imposant de nouveaux usages et amenant aux artistes autant de nouveaux sujets philosophiques, anthropologiques, politiques et esthétiques dont s’emparer : code créatif, live-coding, médias numériques, géolocalisation, surveillance, hacking, cybersécurité, glitch, réseaux sociaux, dark patterns, communautés en ligne, blogging, vlogging, podcasting, wikis, peer-to-peer, viralité, mèmes, open-source, pratiques amateures, web-to-print, mobilité, objets intelligents, ville intelligente, DIY, impression 3D, capteurs, robotique, drones, biométrie, biotechnologies, cyborg, transhumanisme, post-humanisme, mutations de l’emploi, gouvernance algorithmique, big data, data-graphism, data-art, crowdfunding, crowdsourcing, humanités numériques, OSINT, logiciel libre, visioconférence, post numérique, extractivisme, digital labour, blockchain, permacomputing, réalité augmentée, transmédialité, réalité virtuelle, Fake News, Deep Fake et bien entendu, ces derniers temps, Intelligence Artificielle,… </p><p>Cette énumération, qui grandit chaque année, justifie à elle seule l’existence de pratiques et de recherches centrée sur la question du numérique dans les sciences humaines, en art et en design.</p><p>Il n’est pas inintéressant de le dire, de le rappeler, face à la fausse évidence qui veut que puisque le numérique est partout et puisque tout est numérique, alors le numérique n’est nulle part un sujet qui mérite attention et tout ce qui compte, c’est le progrès des outils, leur perfectionnement, leur optimisation, leur maximisation.</p><p>L’actualité n’est pas le seul objet de l’enseignement et de la recherche dans le domaine du numérique. Son Histoire, y compris récente, est particulièrement méconnue du public quand bien même ce public est composé de personnes qui ont vécu les différentes mutations amenées par l’informatique. Il n’y a pas que les millenials qui ne sachent pas dater la micro-informatique, l’Internet grand public, Wikipédia ou le smartphone… Une fois ces éléments acquis, beaucoup oublient leur chronologie, ignorent leur protohistoire et n’ont qu’un souvenir vague de leur préhistoire. C’est pourtant l’Histoire qui permet de savoir ce qui change, ce qu’on a gagné mais aussi ce qu’on a perdu, c’est l’Histoire qui permet de faire des analogies fertiles entre contextes spatiotemporels apparemment distincts. C’est l’Histoire — puisque l’Histoire n’est jamais finie — qui permet de se dire qu’il reste des choses à inventer. Il en va de même dans les disciplines scientifiques, qui sont souvent présentées aux collégiens comme une somme de faits à accepter et non comme le fruit d’un processus et de controverses, amenant l’illusion que la science est une forme de croyance et non une méthode, ce qui ouvre un boulevard pour tous les marchands de théories complotistes ou religieuses, qui ont l’avantage de sembler moins passives : l’homme de la rue sait que la Terre est une sphère mais n’a aucune idée de la manière dont on l’a déduit puis prouvé, alors que le « platiste » est spécialiste en platisme et peut même se voir comme quelqu’un qui est capable de douter des faisses évidences, ce qui est le moteur même du progrès scientifique. De même, la foi religieuse n’est pas un état passif, c’est une action, car pour croire en quelque chose que l’on ne peut ni prouver ni infirmer, il faut se convaincre soi-même avant tout — et un peu convaincre les autres pour ne pas se sentir trop seul puisque l’humain reste un animal social. On nous pardonnera, espérons-le, cette digression possiblement polémique.</p><p>L’idée est celle-ci : c’est précisément parce que le numérique est « partout » qu’il est important de s’en emparer de manière consciente et active et non de se contenter de le subir. Les artistes, par le « pas de côté » qu’ils proposent, ont un rôle potentiellement intéressant à jouer dans ce cadre puisqu’ils ne subissent pas les mêmes contraintes que la plupart des acteurs techniques ou politiques. Et pour eux-mêmes, bien entendu, les artistes ont tout intérêt à ne pas être dépendants des interfaces que leur offre l’industrie, à savoir changer de logiciels, contourner les limites des logiciels existants, voire d’écrire leurs propres logiciels.</p><p>L’enseignement du code créatif semble une bonne première approche pour les pratiques numériques en école d’art et de design. Même si la locution « code créatif » ne s’est imposée qu’au début des années 2000, l’utilisation de la programmation informatique comme outil de création est l’origine historique de la création visuelle numérique.</p><p>Il est assez compliqué de déterminer le meilleur langage de programmation pour initier des étudiants à cette pratique. Au cours de la seconde moitié des années 1990, c’est à dire lorsque l’utilisation de la programmation dans le domaine artistique a commencé à se diffuser véritablement, les langages les plus répandus dans les formations artistiques étaient le langage Lingo, qui servait à rédiger les scripts pour le logiciel Director, le langage Actionscript, utilisé pour Flash, et enfin l’association HTML/Javascript/css, qui servait et sert toujours à construire les sites Internet.</p><p>Les trois avaient comme atout d’être des outils de production véritables, puisque c’est Director que l’on utilisait le plus pour la réalisation de cd-roms culturels et d’installations numériques, tandis que la maîtrise de Flash, HTML, Javascript et Css permettaient d’obtenir assez facilement un emploi dans les métiers, alors émergents, du web.</p><p>Les choses se sont compliquées en 2005 avec l’acquisition de Macromedia, éditeur de Director et de Flash, par la société Adobe. L’indifférence d’Adobe envers Director et l’hostilité d’acteurs majeurs du Net tels qu’Apple et Google envers Flash, ont plongé les deux logiciels dans un lent et douloureux processus d’agonie. Les langages du Web, de leur côté, ont commencé à devenir puissants et sophistiqués. L’époque où le web était alimenté par des autodidactes enthousiastes qui s’occupaient à la fois du contenu et du contenant a cédé la place à une ère de compétences spécialisées : developpement UX, développement UI, architecte d’information, designer visuel, bakckoffice. Une page web apparemment simple peut être le produit du travail des trois langages de base (HTML, Javascript, CSS), mais aussi de langages fonctionnant sur le serveur (PHP, Ruby, SQL, etc.) ou encore de librairies et d’environnements spécialisés (Jquery, Masonry, etc.). Face à cette multitude, face à la relative complexité conceptuelle de l’écosystème du web (hébergement, domaines, sécurité, accessibilité) et face à une normalisation des pratiques — le web n’est plus autant un terrain d’invention et d’expérimentation qu’il a su l’être au début du siècle —, l’initiation des étudiants en école d’art et design aux outils de la création en ligne est devenue une tâche un peu délicate. Elle reste intéressante, car ces outils du web débordent désormais du web, s’étendant à la production d’applications autonomes (CommonJs, Node.js) ou de mise-en-pages destinées à l’impression (Paged.js). Par ailleurs, ces outils sont tributaires d’une philosophie intéressante, depuis leur conception jusqu’à leur utilisation puisqu’ils fonctionnent hors de tout écosystème propriétaire exclusif.</p><p>Un autre outil intéressant à enseigner est le langage Python. Extrêmement répandu dans le monde scientifique, permettant d’accéder à de nombreuses fonctions dans le domaine de l’Intelligence artificielle ou de la robotique, Python est sans doute le langage qui offre le meilleur rapport entre la facilité d’apprentissage, la puissance et la diffusion. Pour des gens essentiellement intéressés par la création visuelle, ce langage généraliste peut cependant s’avérer un peu abstrait.</p><p>Restent les langages et les logiciels qui ont été précisément conçus pour la pédagogie du code.<br>Scratch, par exemple, permet de comprendre visuellement les grands concepts de la programmation informatique : itérations, conditions, variables… Mais, conçu d’abord pour les enfants, ce logiciel est très contraint et limité. La philosophie de la programmation par blocs inspire cependant d’autres outils : mBlock, MIT AppInventor, MakeCode Arcade, … On pourrait par ailleurs parler des outils de programmation visuelle, souvent particulièrement adaptés à la création en temps réel, qui reposent non sur la séquence de commandes mais sur la connexion de briques logicielles et de médias : Max/MSP, PureData ou encore TouchDesigner.</p><p>Pour ma part, cela fait vingt ans que je suis fidèle à Processing et, depuis un peu moins longtemps, à Arduino, système qui s’inspire de Processing pour la programmation de mircrocontrôleurs électroniques. Sachant le piège qu’ont constitué des logiciels propriétaires tels que Director et Flash, je voulais absolument trouver un outil qui permette d’allier pédagogie, autonomie et puissance d’utilisation. Je me suis d’abord penché sur le langage Java, qui avait l’avantage de fonctionner sur de nombreuses plateformes et était très répandu. Langage généraliste, Java est plutôt lisible mais aussi relativement complexe. Le langage Processing, qui est dérivé de Java (et qui s’appuie sur Java pour fonctionner) avait et a toujours de nombreux atouts. Le premier, c’est qu’il a été conçu par deux artistes-designers, Ben Fry et Casey Reas, et que ses fonctions sont donc principalement orientées vers la création visuelle. Le second atout de Processing est la simplicité de mise-en-œuvre des programmes : l’éditeur est sobre et lorsque l’on a saisi un programme, on clique sur le bouton dédié à son exécution, sans plus de cérémonie. La documentation de Processing reprend cette philosophie, puisqu’elle montre le résultat visuel de l’exécution de chaque commande avant même de détailler le fonctionnement de la commande. Enfin, Processing est un langage apte à initier à des langages répandus dans l’industrie tels que Java bien sûr, C++ ou encore C#. Le fait que les variables de Processing soient explicitement typées ou que la rédaction des programmes soit structurée d’une manière un peu stricte (point-virgule après une commande, blocs d’instructions encadrés par des accolades) déroutent parfois les débutants mais permet d’éviter certaines erreurs ou aberrations et surtout, permettent de mieux comprendre des langages tels que le C.</p><p>L’extension de la philosophie de Processing aux langages Javascript (p5js) et Python, et la création d’une version spécifique pour Android lui amènent encore quelques arguments. Si les performances de Processing n’ont jamais été époustouflantes, le logiciel et son langage restent un « couteau suisse » très généraliste : son, vidéo, port série, 3D, exportation d’images vectorielles….<br>Après quelques années de relatif engourdissement, le développement de la version Java de Processing – qui fête ses vingt-cinq ans – reprend avec une certaine vigueur : interface améliorée, code réécrit, et nouvelles fonctionnalités en cours d’implémentation, comme la connexion au navigateur avec WebGPU et WebAssembly, ou encore la possibilité de profiter de Bevy, un moteur de jeu vidéo reposant sur Rust.</p><p>Pour toutes ces raisons – parfois un peu techniques, désolé –, Processing reste un des meilleurs langages pour sensibiliser des étudiants en art et design (et pourquoi pas dans d’autres disciplines) à la programmation créative. Une telle initiation n’a pas forcément pour but de faire de tous les étudiants de véritables experts du domaine, mais à montrer à tous les principes de l’image numérique et la voie de l’autonomie vis-à-vis des outils proposés par l’industrie.</p>"},"id":"e680291c-feaf-41db-b60d-6285555d7f08","isHidden":false,"type":"text"}]
|
||
|
||
----
|
||
|
||
Uuid: yjaqgy40ko5mcusg |