• Aucun résultat trouvé

1.1 2 Le source dans les situations natives numériques

Dans le cas des productions natives numériques, le source est lui-même d'une matérialité numérique, même si des éléments analogiques sont intervenus dans certaines phases de son élaboration. L'appareillage et l'étage technique final de l'élaboration du source sont alors de la même nature informatique bien que n'appartenant pas, sur cet axe, au même sous-système, l'étage technique d'élaboration du source étant inclus dans le rôle auteur. Il nous faut donc fixer la frontière du rôle auteur dans cet ensemble continu de transformations numériques qui vont de l'élaboration du source à celle du transitoire observable. On pressent bien que le source est du côté du programme, mais où s'arrête-t-il dans la chaîne technique qui mène du "code" écrit par le programmeur à l'exécutable actif à la lecture ?

La dénomination de "programme" recouvre en fait un certain nombre d'objets numériques qui sont transformés les uns dans les autres. Faisons un bref rappel de ces transformations, ce qui nous permettra de préciser le vocabulaire que nous utiliserons. La machine de Turing définit le programme comme une série d'instructions qui agissent sur des données en fonction d'un état interne et génèrent la production en un nombre fini de pas.

Le jeu d’instructions peut avoir été créé par un acteur technique totalement étranger à l’auteur du source. C’est le cas lorsqu’on utilise un logiciel de dessin pour effectuer une retouche, un logiciel de montage sonore ou vidéo… Dans ces circonstances, les auteurs du logiciel utilisé sont bien des acteurs intervenants dans le dispositif technologique utilisé mais ne sont pas, loin s’en faut, les auteurs du résultat produit. Dans tous les cas, pourtant, le programme, en tant que jeu d’instructions, existe bel et bien. L’activité du créateur du source consiste, même dans un environnement auteur graphique, d’une part, à introduire sous forme de data les données manipulées par les instructions, et d’autre part, à sélectionner les instructions qui seront effectivement utilisées (utiliser tel pinceau, telle transformation…). Cette activité est

donc bel et bien une activité de programmation, elle construit une configuration d’instructions exécutables. C'est le cas lorsqu’un auteur multimédia utilise un logiciel auteur comme Flash. Même s’il n’écrit lui-même aucune ligne de code, il manipule et met en place une logique d’instructions exécutables en manipulant graphiquement des éléments sur une timeline. Il ne faut donc pas confondre la programmation, qui consiste à construire un jeu d’instructions à usage de l'ordinateur, avec le codage informatique qui consiste à écrire ce jeu d’instructions sous la forme d'instructions verbales. La programmation peut procéder par codage, manipulations graphiques ou mélanger ces deux procédés. La plupart des logiciels de haut niveau proposent aujourd’hui une programmation par manipulation symbolique qui opère, soit sur une métaphore de

timeline lorsque la dimension temporelle du résultat prime (Flash, Director…), soit sur

un modèle de patchs lorsque la logique des interactions prédomine (par exemple Max, pure data).

Environnement de programmation avec timeline Programmation par patchs

Figure 39 : programmation par manipulations graphiques

Cette première forme du programme : l'objet que la personne construit dans son environnement logiciel, porte le nom, en informatique, de programme source. On réserve en général en informatique le terme de "code", pour désigner le code source, l'ensemble des lignes d'instructions et de données créées par codage informatique et imprimables sur un listing. Aujourd'hui, il n'y a plus lieu de privilégier le codage sur les autres formes de programmation. Aussi, j'utiliserai le terme de code39 comme abréviation de code source pour désigner le jeu d'instructions du programme, quelles que soient les formes sémiotiques que prend ce jeu d'instructions.

39 à ne pas confondre avec le code sémiotique bien que le code du programme source soit un code sémiotique dont nous verrons qu'il est pluricode

Le programme source (ou code source) n'est pas un programme pour l'ordinateur, il n'est pas exécutable. Il s'agit en fait d'un jeu de données à usage d'un autre programme exécutable. Le programme source présente ainsi la particularité d'appartenir au domaine de l'auteur alors que les états suivants du programme lui échappent et font partie de l'appareillage.

Le code source peut subir deux types de transformations selon que le programme est compilé ou interprété. Dans un programme interprété, ce code est directement utilisé par un programme de lecture, player (flash, shockwave), plug-in ou navigateur (HTML), voire directement par le langage auteur (pure data, iannix) qui sera mis en œuvre sur la machine du lecteur, à l'autre extrémité de l'appareillage, en vue de produire le transitoire observable. Dans un programme compilé, le code source est transformé en programme exécutable en deux transformations successives qui produisent chacune un fichier binaire inintelligible pour l'homme. La première étape consiste à associer au programme source les bibliothèques écrites par d'autres et qui gèrent en général des opérations de bas niveau (gestion des entrées-sorties du programme…). Cette opération, dite d'édition des liens, produit un fichier binaire dénommé programme objet qui n'est pas encore exécutable mais peut être compris par un compilateur sur diverses plateformes. La seconde étape consiste à adjoindre à ce fichier objet des instructions spécifiques au système d'exploitation dans lequel sera exécuté le programme. C'est ce dernier fichier qui constitue le programme exécutable. C'est lui qui produira sur la machine de lecture le transitoire observable40.

Le source, dans notre modèle, étant l'ensemble des éléments matériels à destination de l'appareillage manipulables par le rôle auteur et pouvant faire signe pour lui, il ne peut être constitué, dans un dispositif numérique, que du programme-source et des données créées ou recueillies au sein de la fonction auteur et présentées sous la forme qu'elles ont dans l'environnement de programmation auteur. Le source est ainsi l'ensemble des éléments numériques, tels qu'ils se présentent et peuvent être manipulés dans l'environnement auteur et non les fichiers binaires ultérieurs inintelligibles pour l'homme.

40 nous nous plaçons implicitement dans ce paragraphe dans l'hypothèse où l'appareillage est totalement numérique et pour lequel, par conséquent, le transitoire observable résulte uniquement de l'exécution d'un

IX. 2 Les dispositifs tout numériques