Chapitre 4 L'histoire de l'informatique
Nous avons choisi de n'aborder l'histoire de l'informatique qu'à la
fin de notre présentation, car il nous semble inutile de faire
l'archéologie d'une discipline dont on ne connaît pas les
principes. Faire l'histoire de l'informatique, c'est suivre en
parallèle l'évolution de 3 domaines :
(a) les méthodes de codage (données) ;
(b) le calcul automatique (traitements) ;
(c) la conception d'être artificiels (simulation).
Ces 3 domaines serviront à baliser chacune des avancées ayant
contribué d'une façon ou d'une autre à l'émergence de l'informatique.
1 Préhistoire
Quelques méthodes de calcul dans l'antiquité (b) :
-
les premiers "algorithmes" connus datent des babyloniens (1 800
av. J.C.) ;
- abaques : planches de bois avec des rainures sur lesquelles on
faisait glisser des cailloux (calculi), en respectant la
numérotation de position ;
- utilisation de bouliers avérée depuis très longtemps en Russie
et en Asie.
Quelques mythes faisant intervenir des êtres artificiels (c) :
-
il est question de "servantes d'or" dans l'Iliade d'Homère ;
- légende antique de Pygmalion (sculpteur) et de Galatée (une de
ses oeuvres devenue vivante) ;
- légende juive du Golem (être d'argile créé par le rabbin Loew et
évoluant dans le ghetto de Prague vers 1580).
2 Ancêtres et précurseurs
-
XIIIe : fabrication de l'Ars Magna, par Raymond Lulle (b) : il
s'agit d'une "machine logique" faite de cercles concentriques
contenant des mots qui, disposés dans un certain ordre, forment des
questions tandis que d'autres mots y répondent
- XVIe : invention du codage binaire par Francis Bacon (a) et du
logarithme (à l'origine créé pour simplifier des calculs compliqués)
par Napier (b)
- 1624 : Wilhem Schickard construit une "horloge automatique
calculante" à Heidelberg
- 1642 : Blaise Pascal, à 19 ans, crée la "Pascaline", machine à
calculer mécanique à base de roues dentées, capable de faire des
additions et des soustractions (b) ; le langage informatique PASCAL sera plus tard ainsi
nommé en son honneur
- 1673 : Leibniz, grand mathématicien, améliore la Pascaline en y
ajoutant la multiplication et la division ; par ailleurs, il
s'intéresse beaucoup à la numérotation binaire avec laquelle il
essaie de concevoir une "caractéristique universelle" dont
l'objectif est de réduire toutes les opérations logiques à un calcul
(b)
- XVIIIe : La Mettrie, philosophe disciple de Descartes,
radicalise la philosophie de ce dernier et écrit L'homme machine,
où il argumente en faveur d'une vision mécaniste du vivant (c)
(Descartes lui-même aurait construit un automate à visage humain).
Les automates sont très à la mode à cette époque. L'horloger suisse
Vaucansson en construit de très célèbres parmi lesquels un joueur de
flûte et un canard pourvu de fonctions locomotrices et digestives,
exposés à paris en 1738 : leur fonctionnement utilise un "arbre à
came" (comme dans les boîtes à musique), codage binaire du
mouvement (a). Un célèbre "joueur d'échec artificiel" parcours
aussi les cours européennes à la fin du siècle (il aurait notamment
battu Napoléon) avant qu'on ne démasque la supercherie : un nain
caché sous la table actionnait en fait le mécanisme (c).
- 1805 : Jacquart crée les métiers à tisser automatiques, qui
utilisent des "programmes" sous forme de cartes perforées,
également utilisées dans les pianos mécaniques (a)
- 1818 : Mary Shelley publie "Frankenstein", où l'électricité
donne l'étincelle de vie à un être composé à partir de morceaux de cadavres (c)
- 1822 : l'ingénieur anglais Babbage fait les premiers plans de sa
"machine à différences", sorte de machine à calculer mécanique
utilisant les logarithmes (b) : trop complexe pour la technologie de
l'époque, elle ne sera construite d'après ces plans qu'au XXième
siècle.
- 1832 : invention du langage Morse, pour coder les caractères de
l'alphabet (c'est un code binaire, composé uniquement des deux
symboles : un trait court et un trait long) (a)
- 1833 : Babbage conçoit sa "analytical engine", encore plus
performante (et compliquée) que la "machine à différence",
utilisant des cartes perforées pour enchaîner l'exécution
d'instructions élémentaires sur un calculateur universel (mécanique)
: il passera sa vie et se ruinera à essayer en vain de construire sa
machine (a, b). Il sera aidé par Lady Ada Lovelace, fille du poète
Lord Byron, qui écrira les premiers "programmes" qu'aurait pu
exécuter la machine (le langage de programmation ADA sera ainsi nommé pour lui
rendre hommage). Cette machine aurait pourtant répondu aux besoins
croissants en calcul dans la société anglaise, notamment pour
l'astronomie et la navigation.
- 1854 : Le logicien anglais Georges Boole publie son livre The
Mathematical Analysis of Logic, où il définit les opérateurs
logiques dits "booléens", fondés sur deux valeurs 0/1 pour coder
Vrai/Faux (a)
- 1876 : Bell invente le téléphone (a)
- 1884 : L'ingénieur américain Hollerith dépose un brevet de
machine à calculer automatique
- 1890 : Hollerith commercialise des machines à calculer
électriques, utilisées notamment pour traiter automatiquement les
données d'un recensement aux Etats-Unis (b). Les besoins industriels
en calcul automatique se multiplient.
- 1896 : Hollerith crée une société appelée "Tabulation Machine
Corporation", qui deviendra en 1924, "International Business
Machine" (IBM), qui existe toujours...
- 1921 : invention du mot "robot" par Karel Capek, auteur
dramatique tchèque, dans une de ses pièces (c)
- 1925 : Vannevar Bush, ingénieur américain, construit un
calculateur analogique au MIT (Massachusetts Institute of
Technology, prestigieuse école d'ingénieur américaine)
- 1927 : la télévision et la radio deviennent opérationnels (a)
- 1931 : l'allemant Konrad Zuse construit un calculateur
automatique, le Z1 (b)
- 1936 : Alan Turing propose sa définition des "machines de
Turing" et Church invente le "lambda-calcul", qui se révèlent
avoir des capacités de calcul équivalentes (b)
- 1938 : fondation de Hewlett Packard, société de matériels
électroniques
- 1939 : John Atanassoff et Clifford Berry, son étudiant,
conçoivent un prototype appelé ABC à l'université de l'Iowa, reconnu
comme le premier ordinateur digital (b)
- 1939-1945 : pendant la guerre,
-
Alan Turing travaille dans le service anglais de décryptage des
messages secrets allemands (codés suivant le système appelé
"Enigma") : il réalise une machine à décrypter qui contribuera à la
victoire des alliés (a, b) ; en 1941, il construit le " Colossus " à
l'université de Manchester (bientôt suivi du Mark I et du Mark II),
premiers ordinateurs européens avec le Z3 de Konrad Zuse qui, pour
la première fois, propose un contrôle automatique de ses opérations
- John Von Neumann, travaille sur les calculs de balistique
nécessaires au projet Manhattan (conception et réalisation de
la première bombe atomique américaine) (b).
- 1945 : John Von Neumann écrit un rapport où il propose
l'architecture interne d'un calculateur universel (ordinateur),
appelée désormais "architecture de Von Neumann".
- 1946 : construction de l'ENIAC à l'Université de Pennsylvanie,
dernier gros calculateur électrique programmable (mais pas
universel) : il fait 30 tonnes, occupe 160m2 et sa mémoire est
constituée de 18 000 tubes à vide, sa puissance est équivalente à
celle d'une petite calculette actuelle (b) ; pendant ce temps,
Wallace Eckler et John Mauchly conçoivent le Binac (Binary Automatic
Computer), qui opère pour la première fois "en temps réel" mais ne
sera construit qu'en 1949, avec l'apport de Von Neumann
- 1947 : invention du transistor (qui peut être vu comme un
interrupteur miniature)
- 1948 : Claude Shannon publie sa Théorie mathématique de
l'information, où est introduite la notion de quantité
d'information d'un objet et sa mesure en bits (a) ; l'année suivante
il construit la première machine à jouer aux échecs
3 Histoire contemporaine
A partir de cette date, l'ordinateur existe et son histoire matérielle
se réduit donc à l'évolution des progrès technologiques, qu'on découpe
habituellement en termes de "générations". Les avancées
conceptuelles les plus spectaculaires concernent, elles,
principalement la conception de nouveaux langages de programmation
évolués.
3.1 Première génération : les monstres
-
1949 : construction de l'EDVAC, premier ordinateur construit
suivant l'architecture de Von Neumann et stockant ses données sur
disques magnétiques
- 1950 : Turing écrit un article dans une revue philosophique pour
argumenter que le modèle des ordinateurs peut réaliser tout ce que
fait l'esprit humain
- 1952 : IBM commercialise les premiers ordinateurs à lampes et à
tubes à vide, IBM 650 puis IBM 701
- 1954 : premiers essais de programmation avec le langage FORTRAN
(FORmula TRANslator), encore utilisé de nos jours pour le calcul
scientifique
- 1955 : invention du mot "ordinateur" en France, à la demande
d'IBM
- 1956 : le terme d'Intelligence Artificielle est inventé lors
d'une conférence à Dartmouth, aux Etats-Unis
3.2 Deuxième génération : intégration du transistor
-
1958 : l'IBM 7044, 64 Koctets de mémoire, est le premier
ordinateur intégrant des transistors ; John McCarthy invente le
LISP, premier langage de l'Intelligence Artificielle
- 1959 : conception de COBOL (Common Business Oriented Language) :
langage de programmation spécialisé pour la gestion et le domaine
bancaire, encore utilisé de nos jours et du langage LISP (List
Processing), adapté à des applications d'intelligence artificielle
- 1960 : conception de ALGOL (ALGOrithmic Language), langage
évolué de calcul scientifique
3.3 Troisième génération : les circuits intégrés
-
1962 : le terme "informatique" est créé en France par
contraction de "information automatique"
- 1964 : utilisation des circuits intégrés (circuits électroniques
miniatures)
- 1965 : le premier doctorat (thèse) en informatique est attribué
à l'université de Pennsylvanie ; conception du langage BASIC
(Beginners' All-purposes Symbolic Instruction Code) et du langage
PL/1 (Programming Language 1)
- 1969 : premier essai de transfert de fichier à distance par le
réseau Arpanet, ancêtre d'Internet ; invention du langage PASCAL par
Nicklaus Wirth
- 1971 : introduction des disquettes pour l'IBM 370 ; conception
du langage LOGO, destiné à l'initiation pédagogique aux concepts de
la programmation
3.4 Quatrième génération : les micro-ordinateurs
-
1972 : conception du langage C, particulièrement adapté à la
programmation et à l'utilisation de systèmes d'exploitation
- 1973 : apparition des premiers micro-ordinateurs munis d'un
clavier et d'un écran ; création de MICRAL, le premier
micro-ordinateur français, et invention à Marseille du langage
PROLOG (PROgrammation LOGique), par Alain Colmerauer
- 1975 : Bill Gates commercialise le langage BASIC et crée la
société Microsoft avec Paul Allen ; le premier magasin spécialisé en
informatique ouvre en Californie
- 1976 : conception du langage Smalltalk, qui introduit la
programmation "orientée objet"
- 1977 : création de la société Apple par Steve Jobs et Steve
Wozniak et commercialisation de l'Apple II, premier micro-ordinateur
largement diffusé
3.5 Cinquième génération : l'interface graphique et les
réseaux
Les japonais avaient annoncé pour les années 90 l'apparition d'un
nouveau type d'ordinateurs "cinquième génération" dédiés à des
applications d'Intelligence Artificielle, mais ces machines d'un
nouveau genre n'ont jamais vu le jour, et les évolutions majeures
récentes sont plutôt à chercher du côté d'Internet.
-
1983 : conception du langage ADA (en hommage à Lady Ada
Lovelace), extension du langage PASCAL, pour répondre à une demande
de la NASA
- 1984 : Le McIntosh d'Apple introduit pour la première fois une
interface graphique (menus, icônes...) et la souris ; conception du
langage C++, version orientée objet du langage C
- 1992 : création de Mosaïc au CERN de Genève, premier navigateur
permettant de visualiser des pages Web (et donc ancêtre de Netscape,
Mozilla, Firefox...)
- 1995 : Windows 95 généralise l'interface graphique sur les PCs.
- 1998 : naissance de Google