Accueil du site > Ressources > L’art du code

Première publication : 12 décembre 2008 sur maisonpop.fr.

Mise en ligne : 10 août 2010.

Tags :

JPEG - 34.2 ko
Dominique Cunin et Mayumi Okura, Collectionnisme, 2006 – extrait

L’informatique et le code

Petite histoire de l’informatique

Depuis des millénaires, l’être humain a créé et utilisé des outils l’aidant à calculer (abaque, boulier...), a mis en place des langages et des symboles interprétables, développé des codes.

Les origines

Parmi les algorithmes les plus anciens, on compte des tables datant de l’époque d’Hamurabi (env. 1750 avant JC). La découverte tardive de la machine d’Anticythère (île grecque entre Cythère et la Crète) montre que les Grecs de l’Antiquité eux-mêmes avaient commencé à réaliser des mécanismes de calcul.

La première machine à calculer mécanique réalisant les quatre opérations aurait été celle de Wilhelm Schickard (pasteur et universitaire allemand) au XVIe siècle, une « horloge calculante » destinée à calculer les positions des planètes, de leurs satellites, de la Lune, du Soleil, des étoiles, des comètes.

En 1642, Blaise Pascal (mathématicien et théologien français) réalise également une machine à calculer mécanique qui fut, pour sa part, commercialisée et dont neuf exemplaires existent encore dans des musées.

Ce n’est cependant qu’en 1694, soit 21 ans après sa conception par Gottfried Wilhelm von Liebniz (théologien et physicien allemand), que le premier exemplaire de machine capable de réaliser de façon automatique les multiplications et les divisions est construit.

Il faudra toutefois attendre la définition du concept de programmation pour disposer d’une base permettant d’enchaîner des opérations élémentaires de manière automatique. Celle-ci sera illustrée par Joseph-Marie Jacquard (inventeur français) avec ses métiers à tisser à cartes perforées, puis par George Boole (mathématicien et philosophe britannique) et Ada Lovelace (auteur de la description de la machine analytique de Charles Babbage). Charles Babbage (mathématicien britannique) travailla en effet une grande partie de sa vie à la construction d’un ordinateur mécanique qu’il appelait « machine à différences ».

La mécanographie

Une autre phase importante fut celle de la mécanographie, liée à l’apparition des machines électromécaniques alimentées par cartes perforées d’Herman Hollerith (ingénieur américain), à la fin du XIXe siècle. Elles furent utilisées à grande échelle pour la première fois par les Américains lors du recensement de 1890.

En 1935, Konrad Zuse (ingénieur allemand) décompose en étapes les calculs les plus fréquents. Il finit par concevoir, tout comme Babbage, une machine divisible en parties. Voyant toute la complexité de la mécanisation en base 10, il choisit d’utiliser le calcul binaire. Entièrement mécanique, la mémoire binaire du Z1 était constituée d’un millier de plateaux comportant des rainures, où la position d’une tige indiquait 0 à gauche et 1 à droite. Malheureusement, seule la mémoire était réellement fonctionnelle. C’est donc sur les conseils et avec l’aide d’Helmut Scheyer (ingénieur électrique et ami de Zuse), qu’il construisit une deuxième unité arithmétique à l’aide, cette fois, de relais téléphoniques, le Z2.

Cependant, on ne peut toujours pas parler d’informatique, car les traitements restent exécutés à partir de techniques électromécaniques et basés sur l’usage de lampes radio : anodes, cathodes, triodes…

Les machines électroniques

En 1936, Alan Turing (mathématicien britannique) théorise les concepts de programmation et de programme et présente sa « machine de Turing ». L’ère des ordinateurs modernes commence ainsi avec les développements de l’électronique pendant la Seconde Guerre mondiale, ouvrant la porte à la réalisation concrète de machines opérationnelles.

En 1943, John Eckert (pionnier américain de l’informatique) expérimente le premier compteur électronique, entraînant la fabrication des accumulateurs. Ces accumulateurs peuvent être considérés comme le coeur du travail de la machine en permettant la mémorisation d’un nombre décimal, son effacement, sa transmission vers d’autres accumulateurs ainsi que l’ajout d’un nouveau nombre à celui en mémoire.

La première machine fonctionnelle à avoir intégré l’enregistrement interne des programmes fut construite en Angleterre, à l’université de Manchester. Le projet démarré en 1946 permit de créer, en 1948, le premier ordinateur : le Manchester Mark 1. Il fut réalisé sous la direction de Max Newmann, professeur de mathématiques. Parmi ses collaborateurs, on retrouve Alan Turing.

L’informatique moderne

L’informatique est donc un domaine fraîchement développé, même s’il trouve ses origines dans l’Antiquité (avec la cryptographie) ou dans la machine à calculer de Blaise Pascal au XVIIe siècle.

L’émergence d’un aspect réellement scientifique de la programmation ne se manifeste qu’avec la série The Art of Computer Programming de Donald Knuth, professeur à l’université de Stanford, à la fin des années 60.

Par la suite, la miniaturisation des composants et la réduction des coûts de production, associées à un besoin de plus en plus pressant de traitement des informations de toutes sortes (scientifiques, financières, commerciales…), entraînent une diffusion de l’informatique dans toutes les couches de l’économie comme de la vie de tous les jours.

Le traitement de l’information

Le traitement de l’information peut être défini comme la conversion d’information non exprimée en information exprimée.

Codage des informations

L’information, pour être traitée, doit être représentée par un codage permettant ainsi des échanges entre composants logiciels et entre composants matériels. Pour cela, on définit des langages et des formes de représentation.

Un système de numération binaire est utilisé dont l’élément unitaire est le bit (contraction de l’anglais binary digit : chiffre binaire). Les bits sont généralement regroupés par huit, pour constituer des octets (ou bytes). Un octet peut être représenté par la séquence des bits qui le constituent (par exemple : 00101110) ou par une paire de valeurs hexadécimales (pour le même exemple : 2E), plus compact.

Échanges de données

Les protocoles définissent une manière de procéder, notamment pour codifier la façon dont deux entités communiquent. On parle notamment de protocole de communication lorsqu’on veut définir des mécanismes de contrôle sur la manière dont l’échange d’information est réalisé.

Certains protocoles sont définis par des normes pour permettre l’interopérabilité des matériels ou des logiciels les mettant en œuvre.

Stockage des données

En matière de stockage d’information, on distingue le dispositif permettant de l’enregistrer physiquement (mémoire de masse) de la manière dont on structure et représente l’information pour faciliter son traitement (mémoire volatile).

Vers une informatique participative

Théorie des systèmes

La théorie de l’information se préoccupe des systèmes d’information, des systèmes de communication et de leur efficacité.

Le connexionnisme

C’est en 1943 que Mac Cullogh et Pitts modélisent les phénomènes mentaux ou comportementaux comme des processus émergents de réseaux d’unités simples interconnectées : des réseaux de neurones.

L’interactionnisme

L’interactivité impliquant l’ajustement des comportements, Ray Birdwhistell (anthropologue américain) propose en 1970 de s’interroger non plus sur le contenu de l’échange, de la relation ou de l’interaction, mais sur le « système » qui a rendu l’échange possible.

L’acteur-réseau

La théorie de l’acteur-réseau est développée à partir des années 80 par Michel Callon (sociologue et ingénieur français) et Bruno Latour (sociologue, anthropologue et philosophe des sciences français). Voulant en finir avec les cloisonnements, ils reconsidèrent le fait scientifique et humain en fonction de la multiplicité des relations qui le constitue. Cette approche se distingue par sa prise en compte des objets et des discours. Ces derniers sont ici considérés comme des « acteurs ».

La perspective numérique

En 1986, Olivier Auber introduit le concept de perspective numérique. Dans l’Internet, les territoires sont définis par des codes, des codes sources, des adresses IP, des clés cryptographiques... Tous ces territoires, en relation les uns avec les autres, forment eux-mêmes un seul et même système fondé sur des codes de fuite capables d’organiser des formes à l’intérieur de la communauté humaine.

L’art du code

L’art du code (ou Software art) désigne une pratique des arts numériques qui utilise le code informatique comme matériau, comme moyen, comme média.

L’art du code réunit différentes catégories d’artistes motivés par le désir de contrer les formats standards ou par un refus de se voir dicter une conduite par la machine et les impératifs économiques de l’industrie informatique. En descendant sous la couche logicielle et en renouant avec les langages informatiques, l’artiste construit son propre programme ou détourne des applications existantes.

Cette approche particulièrement technoïde de l’art peut surprendre : la technique n’a en effet jamais (ou si rarement) justifié une œuvre d’art.

Cependant, la chimie (la peinture, la photo), la physique (la couleur, le son, le cinéma), la géométrie (la perspective) ne sont que quelques exemples simples de complicité entre savoirs techniques et art qui ont engendré de nouveaux outils de perception de la réalité. L’art du code s’incrit dans cette approche, et est une des conditions de la réappropriation de la machine par les artistes : créer ses propres outils, promouvoir une approche ouverte et critique du logiciel, sans oublier la dimension littéraire du code informatique...
Casey Reas

Casey Reas est à la fois artiste et programmeur. Il est co-auteur, avec Ben Fry, de l’environnement de programmation Processing. Behavioral kinetic sculpture est présentée en 1996. Il y définit le concept d’une sculpture comportementale en lui fournissant un contexte, une terminologie, et une structure conceptuelle.

Ben Fry

Spécialisé dans les méthodes de visualisation de grands ensembles de données provenant de sources ou de systèmes dynamiques, Ben Fry propose en 1997 un cadre conceptuel nouveau, lié au design de flux de données. L’approche développée s’inspire de propriétés organiques pour collecter et gérer des informations changeantes et complexes. Les solutions proposées sont des objets/processus, dynamiques et graphiques, capables de trier qualitativement des données quantitatives, émises par des environnements interactifs.

Golan Levin

Golan Levin est un artiste, un compositeur, un interprète et un ingénieur dont le travail est centré sur la conception de systèmes pour la création, la manipulation et l’exécution de l’image et du son en simultané. À travers la création, il utilise les technologies numériques afin de mettre en lumière notre rapport avec les machines, ainsi que nos modes d’interaction les uns avec les autres, explorant les liens entre la communication et l’interactivité.

Scott Draves

En 1998, Scott Draves, artiste et docteur en informatique, crée Electric Sheep, un économiseur d’écran fonctionnant sur des algorithmes et se basant sur la puissance de l’Internet afin de pouvoir transformer le monde mathématique en « peintures vivantes ». Chacun des 60 000 ordinateurs des différents participants, une fois connectés au réseau, devient une sorte de cerveau interdépendant, mettant à l’œuvre toute sa puissance informatique afin de rendre à l’écran ces animations, une œuvre d’art abstraite, alliant évolution et mathématiques.

IN/OUT x.0

InOut permet la mise en relation de projets artistiques connectés en réseau. Les échanges de flux (data, audio, vidéo) s’effectuent en temps réel. Chacun des neuf projets, présentés au sein de l’édition x.0 et réalisés par Alexandre Berthier, Emilie Brout, Thomas Cheneseau, Vincent Ciciliato, Dominique Cunin, Florent Di Bartolo, Vincent Goudard, Cyrille Henri, Yves-Maris Lhour, Maxime Marion, Benoît Meudic, Mayumi Okura, Stéfane Perraud, Olivier Perriquet, se nourrit de flux extérieurs et rend disponible le résultat de sa production. Les trois types de flux peuvent être intégrés dans tout type d’environnement logiciel.

Pour Thomas Cheneseau, la lumière s’immisce dans les ouvertures, envahit les multiples creux de l’espace intérieur, se dissipe et disparaît dans la transparence de l’air. À chaque fois, elle est conduite à travers la masse. Elle est dirigée ou tout simplement accompagnée dans sa course, interceptée, renvoyée, absorbée, modulée, colorée. De la lumière au flux, Cartels d’identité, écran mobile et site Internet intégrés dans le réseau InOut invite en ce sens le public à se saisir d’un écran-cartel afin de générer en temps réel un monochrome numérique modulé par les flux reçus.

Le travail d’Émilie Brout questionne plus particulièrement les réseaux et les interactions sociales, exploitant les traces collectives par le biais de dispositifs relationnels basés sur la vidéo, le numérique ou la typographie. Le projet Tempo, qu’elle développe avec Maxime Marion, s’intéresse moins aux flux qu’aux connections qui permettent leurs échanges ; il se veut discret et omniprésent. Aussi, l’activité de Tempo ne peut se ressentir qu’au travers des autres installations du réseau InOut, par des réactions identifiables et rythmiques.

Dominique Cunin tente de définir une interactivité liée à l’espace à l’intérieur même des dispositifs artistiques interactifs. Sa recherche Architecture de l’interactivité l’amène à se questionner sur le son et l’espace dans les arts numériques. Collectionnisme 2 .0, qu’il développe avec Mayumi Okura au sein du dispositif In-Out est une forme de mémoire des flux. Un dispositif qui tend à être équivalent à un collectionneur allant glaner pour l’essentiel les flux sortants vidéo et audio provenant des autres projets. Il ne s’agit pas ici d’une mémoire exhaustive, mais bien d’une collection régie par des règles qui sont propres au collectionneur lui-même, impliquant dès lors de créer ce collectionneur de sorte qu’il puisse choisir quelles parties des flux il va intégrer dans sa collection.

L’art du code contient ainsi un fond (les idées, les algorithmes) et une forme (le code source).

Sources : Évolution des machines à calculer par Alexandre Faribault / Wikipédia / Dictionnaire des techno-sciences / Multimedialab.be


Haut
Contrat Creative Commons Contenus mis à disposition sous un contrat Creative Commons.
Plan du site | Réalisé avec Spip | Hébergé par Frédéric Guerrier | jQuery Twitter | RSS 2.0