L’informatique, c’est devenu très commun. Au mieux, on ne se rend plus compte que ça existe. Au pire, on ne supporte plus ces satanés ordinateurs qui n’y comprennent rien. C’est pourtant l’une des plus grandes révolutions du XXe siècle.
Au début, l’homme ne pouvait compter que sur ses doigts pour effectuer les tâches les plus ingrates. Et puis, un jour, il s’est rendu compte qu’il pouvait utiliser des outils pour se faciliter le quotidien, pour dépecer les animaux, par exemple. Ça, c’était il y a plus de 2 millions d’années. Par la suite, l’homme a commencé à compter : en -30 000, il effectuait des entailles sur des bouts d’os ou de bois. Et puis, avec le commerce, il s’est mis à faire de la comptabilité, s’aidant pour cela de boules d’argiles, les calculi (voir notre article sur l’histoire du zéro).
Tout au long de son histoire, l’homme n’a cessé d’améliorer ses outils, le but étant de mieux chasser, de mieux dépecer, de mieux récolter, de mieux compter.
Mieux compter
Mieux compter, c’est non seulement compter plus vite, mais c’est aussi s’assurer que l’on ne commet pas d’erreur de calcul. Pour cela, les hommes ont développé quantité d’outils, d’abord rudimentaires comme les calculi, puis un peu plus complexes, comme les bouliers chinois (ci-dessous).
Au fil des siècles, les inventions se sont succédées, jusqu’à donner l’ordinateur que l’on connaît aujourd’hui, celui qui ne se contente pas de faire notre compta mais qui en plus nous joue de la musique, nous affiche nos pages web et nous propose les dernières sorties cinéma. Plutôt que de vous énumérer les figures importantes de l’informatique et leurs inventions, nous avons décidé de vous proposer un petit coup de projecteur sur quelques concepts clés et personnages fondateurs de l’informatique. Une petite sélection qui en oublie nécessairement (Leibniz, Pascal, Boole, etc.), mais qui garde l’essentiel.
La programmation: le coeur de l’informatique
Un ordinateur, c’est avant tout une machine, faites de rouages (au départ) ou d’électronique (jusqu’à présent), mais c’est aussi de la logique, du logiciel. Un logiciel, ou programme, ce n’est autre qu’une suite d’instructions ou de données envoyées à une machine afin qu’elle effectue certaines tâches. En gros, c’est avec ça qu’on donne des ordres aux machines (l’étymologie du mot « ordinateur » vient même de là) !
Bizarrement, ce n’est pas dans le développement de l’informatique ou des mathématiques que l’on retrouve les premiers programmes, mais dans… l’industrie du textile. Les métiers à tisser étaient en effet des machines très complexes, et l’élaboration de motifs était un tâche très répétitive et laborieuse. Au XVIIIe siècle, le Lyonnais Basile Bouchon mit au point un système de programmation basé sur un ruban perforé. Cette invention permit notamment de réduire le temps de fabrication d’un tissu. C’était la première forme de programmation d’une machine.
La machine à différences de Babbage
Un siècle plus tard, un mathématicien et inventeur anglais, Charles Babbage, se rendit compte que les personnes qui réalisaient les tables mathématiques de l’époque (tables qui servaient de base pour tous les autres calculs) commettaient très régulièrement des erreurs. Le seul moyen d’éviter ces erreurs était selon lui de s’affranchir de l’humain. Il se lança alors dans l’élaboration d’une machine extrêmement complexe, la machine analytique, qui devait résoudre automatiquement certaines fonctions mathématiques.
Malheureusement, Babbage ne réussit jamais à terminer sa machine. En 1991, des ingénieurs du London Science Museum conçurent la machine de Babbage à partir de ses plans originaux… elle fonctionna parfaitement. En 1991, un roman de science-fiction, La machine à différences (de Bruce Sterling et William Gibson), s’intéressa même à ce qui se serait passé si le mathématicien avait réussi à compléter sa machine au XIXe siècle, déclenchant ainsi la révolution informatique un siècle plus tôt.
La machine universelle de Turing
Alan Turing était un brillant mathématicien anglais. En 1936, à l’âge de 24 ans, il écrivit un article fondateur : Théorie des nombres calculables. Afin de résoudre un problème de logique qui faisait débat à l’époque (existe-t-il des problèmes qui échappent à toute preuve logique ?), il expliqua le fonctionnement d’une machine, la machine universelle.
A l’époque, les calculateurs étaient construits pour résoudre un type de problème et un seul. Si une machine était inventée pour résoudre une fonction x, elle ne pouvait pas résoudre une fonction y : sa machinerie interne n’était pas conçue pour (de la même manière qu’une voiture n’est pas conçue pour faire des frites).
Dans son article, Alan Turing développa l’idée d’une machine capable de faire tous les calculs possibles. Son idée, c’était qu’un algorithme (un programme) devait être appliqué à une machine pour modifier sa configuration logique interne. C’est aujourd’hui cela qu’on appelle un ordinateur : une machine capable de traiter n’importe quelle donnée grâce à un programme, qu’on appelle aussi logiciel. A l’époque, l’état de la technique ne permettait pas la mise en place d’une telle machine, mais le travail de Turing fut unanimement reconnu comme l’un des plus importants du siècle.
Après la Seconde Guerre mondiale, Turing continua de travailler sur les ordinateurs et écrivit même certains des premiers programmes au monde. Avant de mourir en 1954, Turing lancera un dernier challenge à l’humanité, celui du test de Turing, destiné à évaluer l’intelligence artificielle d’une machine : si un programme est capable de faire croire à un interlocuteur humain qu’il est humain, alors on a à faire à une machine pensante. C’est aujourd’hui l’un des Graals de la recherche en intelligence artificielle.
L’information au coeur de l’informatique
En informatique, tout est question d’information (le terme lui-même est forgé à partir de ce mot). L’information, c’est un texte, une image, une donnée quelconque ou même une absence de donnée (si quelqu’un ne vous dit jamais bonjour, c’est une info en soit !).
En 1948, dans sa Théorie mathématique de la communication, l’Américain Claude Shannon développa le concept d’information et traça l’avenir de l’informatique moderne. Pour lui, l’information élémentaire peut se réduire à l’un deux chiffres, 0 ou 1, qu’il appela “bit” (un bit étant un élément d’information). Derrière chaque morceau de musique, chaque image ou chaque mot qui s’inscrit sur nos écrans, se trouve ce concept de Shannon : celui de la numérisation.
Maintenant, on sait comment représenter une information, mais comment la transmettre ? Pour Shannon, la réponse est simple : chaque bit peut être représenté à l’aide de commutateurs : éteint pour 0, allumé pour 1. Les informations, une fois encodées en binaire, peuvent donc être traitées et transmises par des circuits électriques. Le père de la “théorie de l’information” développa aussi l’idée de la compression numérique : étant donné que chaque information comporte un certain nombre de données redondantes, il n’est pas nécessaire de tout transmettre. Les codages permettant les formats Mp3 ou DivX sont ainsi hérités des travaux de Shannon !