## Abaques et bouliers --- ## Pierres et Bâtons Outre le fait de compter sur ses doigts, le plus ancien outil de calcul est probablement le **bâton de comptage**, qui consiste à enregistrer des marques de dénombrement (souvent des entailles) sur un bâton (bâton en bois, os, ...), dont l'usage remonte à la préhistoire. Les géomètres et les comptables ont ensuite eu besoin de véritables instruments mécaniques manuels facilitant le calcul : un **abaque**. On peut donc voir un abaque comme une forme très rudimentaire d'ordinateur mécanique manuel. --- ## Abaque Romain Entre V et II siècles av. JC <p class="stretch"><img src="/assets/images/abaqueRomain.png"></p> --- ## Abaque chinois XIe siècle <p class="stretch"><img src="/assets/images/abaqueBoulier.png"></p> --- ## Abaque indien XVIIIe siècle <p class="stretch"><img src="/assets/images/abaqueIndien.jpg"></p> ----- ## Machines automatiques --- ## Machine d'Anticythère 87 av. JC <p class="stretch"><img src="/assets/images/anticythere.jpg"></p> Construite par les Grecs dans l'Antiquité, c'est le premier calculateur mécanique de l'histoire. Ces engrenages servaient notamment à prédire les dates et heures des éclipses (lunaires et solaires). <!-- .element class="r-stretch" --> --- ## Horlogerie mécanique XIIIe siècle <p class="stretch"><img src="/assets/images/astrolabe.jpg"></p> Astrolabe du prince Asld du Yémen (1291) --- ## Orgue de barbarie XVe siècle <p class="stretch"><img src="/assets/images/orgue-barbarie-cylindre.jpg"></p> Orgue de barbarie à cylindre --- ## Métier à tisser Bouchon 1725 - Basile Bouchon <p class="stretch"><img src="/assets/images/metierBouchon.jpg"></p> Premier métier à tisser semi-automatisé par des rubans perforés. --- ## Métier à tisser Jacquard 1801 - Joseph Marie Jacquard <p class="stretch"><img src="/assets/images/metierJacquard.jpg"></p> Premier système mécanique programmable avec des cartes perforées. ----- ## Machines à calculer mécaniques --- ## Pascaline 1642-1645 - Blaise Pascal <div class="admonition video" bis_skin_checked="1"><p class="admonition-title">Pascaline</p><iframe sandbox="allow-scripts allow-same-origin" src="https://ladigitale.dev/digiview/inc/video.php?videoId=GX4RQK__fQc&vignette=https://i.ytimg.com/vi/GX4RQK__fQc/hqdefault.jpg&debut=0&fin=22486&largeur=16&hauteur=9" allowfullscreen frameborder="0" width="700" height="394" style="display:block;margin: auto;"></iframe></div> Première machine à calculer réalisant des additions. --- ## Machine arithmétique 1673 - Gottfried Wilhelm Leibniz <p class="stretch"><img src="/assets/images/machineLeibniz.png"></p> Première machine à calculer réalisant en théorie des multiplications. La fiabilité mécanique ne permettait pas de réaliser une machine fonctionnelle. --- ## Arithmomètre 1820 - Thomas de Colmar <p class="stretch"><img src="/assets/images/arithmometre.png"></p> Première machine à calculer mécanique à avoir été produite en série et commercialisée dans le monde à près de 5000 exemplaires. --- ## Machine analytique 1834 - Charles Babbage <p class="stretch"><img src="/assets/images/machineAnalytiqueBabbage.jpg"></p> Cette machine analytique à vapeur, jamais finalisée, comportait déjà une mémoire, une unité de calcul et une unité de contrôle, ainsi que des périphériques de sortie (des équivalents de nos claviers et imprimantes). --- ## Premier programme informatique 1843 - Ada Lovelace <p class="stretch"><img src="/assets/images/adaLovelace.png"></p> Dans ses travaux sur la machine de Babbage, elle utilisa la première boucle conditionnelle (`while`) dans ses programmes théoriques. ----- ## Bases de l'informatique --- ## Logique booléenne 1815-1864 - Georges Boole <p class="stretch"><img src="/assets/images/Cool-Boole.jpg"></p> --- ## Modèle algorithmique 1936 - Alan Turing <p class="stretch"><img src="/assets/images/Alan-Turing.webp"></p> --- ## Interrupteurs et bits 1937 - Claude Shannon <p class="stretch"><img src="/assets/images/switchShannon.png"></p> Conception d'un additionneur à base d'interrupteur et de relais. Il désigne pour la première fois les chiffres binaires sous le terme de **bit** (contraction de binary digit). --- ## Architecture de von Neumann 1945 - John von Neumann Définition de l'architecture d'un ordinateur : machine programmable capable d'exécuter tous les programmes calculables sur une machine de Turing, et dont les programmes et les données sont enregistrés dans la même mémoire. ----- ## Machines à programmes externes --- ## Z1 - Z2 - Z3 🇩🇪 1937 - Konrad Zuse <p class="stretch"><img src="/assets/images/z3.jpg"></p> Premières machines allemandes d'abord motorisées, puis basées sur des relais, entièrement automatisées par des cartes perforées. --- ## Atanosoff-Berry Computer 🇺🇸 1937-1942 - John Vincent Atanasoff - Clifford Berry <p class="stretch"><img src="/assets/images/atanasoffBerry.jpg"></p> Premier ordinateur numérique électronique, conçu pour la résolution d'équations linéaires. --- ## Machines Lorenz 🇩🇪 1941 - SZ40 & 1942 - SZ42 <p class="stretch"><img src="/assets/images/lorenz.jpg"></p> Machines **électro-mécaniques** utilisées pour les communications sécurisées de l'armée allemande (type Enigma). --- ## Machine Colossus 🇬🇧 1943 - Tommy Flowers <div class="admonition video" bis_skin_checked="1"><p class="admonition-title">Colossus</p><iframe sandbox="allow-scripts allow-same-origin" src="https://ladigitale.dev/digiview/inc/video.php?videoId=g2tMcMQqSbA&vignette=https://i.ytimg.com/vi/g2tMcMQqSbA/hqdefault.jpg&debut=0&fin=22486&largeur=16&hauteur=9" allowfullscreen frameborder="0" width="700" height="394" style="display:block;margin: auto;"></iframe></div> Premier ordinateur entièrement **électronique et programmable**, a permis de craquer les clés de chiffrement de la marine allemande. --- ## Le Harvard Mark I. 🇺🇸 1944 - Howard Aiken <p class="stretch"><img src="/assets/images/harvardMarkI.webp"></p> Première grande machine électromécanique états-uniennes, considérée comme étant l'un des premiers calculateurs universels. --- ## ENIAC 🇺🇸 1945 - Mauchly et Eckert <p class="stretch"><img src="/assets/images/eniac.jpg"></p> Machine entièrement électronique, l'[ENIAC](https://fr.wikipedia.org/wiki/ENIAC) utilise des tubes à vide à la place de relais et opère en décimal. ----- ## L'ordinateur, machine à programme enregistré --- ## Manchester baby 🇬🇧 1948 - Frederic C. Williams et Tom Kilburn <p class="stretch"><img src="/assets/images/Manchester-Baby.webp"></p> Première machine à être dotée d'une mémoire à accès direct (RAM), la [Small-Scale Experimental Machine](https://fr.wikipedia.org/wiki/Small-Scale_Experimental_Machine) est la première machine à **architecture de von Neumann**. --- ## EDVAC 🇺🇸 1949 - Mauchly, Eckert & von Neumann <p class="stretch"><img src="/assets/images/edvac.jpg"></p> Doté de RAM, EDVAC opère en mode binaire en suivant l'architecture de von Neumann. --- ## BINAC 🇺🇸 1949 - Mauchly & Eckert <p class="stretch"><img src="/assets/images/binac.jpg"></p> Premier ordinateur à programme enregistré aux États-Unis. Premier ordinateur commercial au monde. --- ## EDSAC 🇬🇧 1949 - Maurice Wilkes <p class="stretch"><img src="/assets/images/edsac.jpg"></p> Machine électronique à programme enregistré sur ruban de papier. --- ## Univac 1 🇺🇸 1951 - Mauchly & Eckert <p class="stretch"><img src="/assets/images/univac1.jpg"></p> Premier ordinateur commercial fabriqué en grande série (46 exemplaires). ----- ## Miniaturisation de l'électronique --- ## Diode à vide 1904 - John Ambrose Fleming <p class="stretch"><img src="/assets/images/Fleming_valves.jpg"></p> Laisse passer le courant dans un sens unique. --- ## Triode à vide 1906 - Lee De Forest <p class="stretch"><img src="/assets/images/triode.jpeg"></p> Permet d'amplifier un courant, ancêtre du transistor à la base des premières radios. --- ## Le transistor 1947 - Bardeen, Shockley et Brattain <p class="stretch"><img src="/assets/images/Bardeen-Shockley-Brattain.jpeg"></p> Le transistor plus petit, plus fiable, et moins gourmand en énergie remplace progressivement les tubes à vide. --- ## Le circuit intégré 1958 - Jack Kilby et Robert Noyce <p class="stretch"><img src="/assets/images/IC-Kilby-Noyce.jpg"></p> Mise au point d'un circuit intégrant des transistors à la surface de plaques de silicium. --- ## Miniaturisation 1960-2023 <p class="stretch"><img src="/assets/images/mooreslaw.jpg"></p> La densité de transistors par unité de surface sur les circuits intégrés double environ tous les 18 mois (**loi de Moore**). --- ## Premiers microprocesseurs 1971 - Intel 4004 <p class="stretch"><img src="/assets/images/intelP4004.jpg"></p> Intégrant 2250 transistors bipolaires, sa puissance de calcul est comparable à celle de l'ENIAC (1946) qui occupait 167m<sup>2</sup>... ----- ## Démocratisation des ordinateurs personnels --- ## L'ordinateur commercial Dans les années 1950, les firmes DEC, BULL et surtout IBM développent les premiers ordinateurs commerciaux. --- ## Informatique mobile Avec l'essor du réseau Internet et de ses applications comme le Web et l'explosion des télécommunications mobiles, les objets se transforment en ordinateurs : smartphones, objets connectés,... ----- ## Les systèmes d'exploitation (OS) --- ## 1970-1990 Développement du système **Unix** (laboratoire Bells) par notamment Ken Thomson et Dennis Ritchie. --- ## 1980-1990 Développement du système **ms-dos** (Microsoft) --- ## 1983 Projet de création d'un système d'exploitation libre semblable à unix (Richard Stallman). C'est le projet **GNU**. --- ## A partir de 1990 Développement progressif de **Windows** (Microsoft) --- ## 1991 Linus Torvalds alors étudiant se lance dans le développement d'un système d'exploitation *open source*. --- ## A partir de 1992 Développement rapide de **Linux** qui est associé à des applications du projet gnu. On devrait donc parler de **GNU-Linux**. --- ## 2001 Apple démarre le développement de **MacOS** sur la base du système bsd, lui-même une variante d'unix. --- ## 2008 Google crée et diffuse le système d'exploitation **Android** pour téléphone. Ce système utilise le noyau du système Linux. ----- ## Le web --- ## 1969 - ARPANET La première version de l'ARPANET, le prédécesseur d'Internet, est créée par l'Advanced Research Projects Agency (ARPA) du Département de la Défense des États-Unis. --- ## 1971 - Courrier électronique Ray Tomlinson envoie le premier courrier électronique en utilisant le symbole "@" pour séparer le nom de l'utilisateur de celui de l'hôte. --- ## 1983 - TCP/IP La mise en œuvre du protocole TCP/IP devient la norme pour la communication sur l'ARPANET, jetant ainsi les bases de l'Internet moderne. --- ## 1989 - WorldWideWeb Tim Berners-Lee invente le WorldWideWeb, le premier système de gestion de l'information sur le Web, qui combine le langage HTML, l'URL et le protocole HTTP. --- ## 1990 - Premier serveur Web Le premier serveur Web est créé par Tim Berners-Lee au CERN, permettant aux utilisateurs de visualiser des pages Web à l'aide d'un navigateur. --- ## 1993 - Mosaic Le navigateur Mosaic, développé par Marc Andreessen et son équipe à l'Université de l'Illinois, popularise l'utilisation du Web en introduisant des fonctionnalités graphiques telles que les images intégrées. --- ## 1994 - Netscape Navigator Netscape Communications Corporation lance Netscape Navigator, un navigateur Web commercial qui devient rapidement le navigateur le plus populaire de l'époque. --- ## 1995 - JavaScript Netscape introduit JavaScript, un langage de programmation côté client qui permet d'ajouter des fonctionnalités interactives aux pages Web. --- ## 1995 - Internet Explorer Microsoft lance Internet Explorer, un navigateur Web qui devient un concurrent majeur de Netscape Navigator dans la "guerre des navigateurs". --- ## 1996 - CSS Le World Wide Web Consortium (W3C) introduit les feuilles de style en cascade (CSS), permettant aux concepteurs Web de contrôler l'apparence des pages HTML. --- ## 1997 - XML Le langage de balisage extensible (XML) est introduit pour structurer les données sur le Web et faciliter l'échange d'informations entre les différentes plates-formes. --- ## 1998 - Google Larry Page et Sergey Brin fondent Google, un moteur de recherche qui révolutionne la façon dont les utilisateurs trouvent des informations sur le Web. --- ## 1999 - Napster Le service de partage de fichiers Napster, créé par Shawn Fanning, devient extrêmement populaire et pave la voie à l'essor de la musique en ligne et du piratage numérique. --- ## 2000 - Dot-com Bubble La bulle Internet atteint son apogée, avec une valorisation excessive des entreprises en ligne, suivie d'un effondrement du marché des actions technologiques. --- ## 2001 - Wikipédia L'encyclopédie en ligne Wikipédia est lancée, permettant la création collaborative et la modification de contenu par les utilisateurs. --- ## 2003 - WordPress Matt Mullenweg lance WordPress, une plate-forme de gestion de contenu qui devient l'un des systèmes de gestion de contenu les plus populaires et les plus utilisés sur le Web. --- ## 2004 - Web 2.0 Le terme "Web 2.0" est introduit pour décrire une nouvelle génération de sites Web interactifs et sociaux qui encouragent la participation active des utilisateurs. --- ## 2004 - Facebook Mark Zuckerberg crée Facebook, un réseau social qui connaît une croissance rapide et devient l'une des plateformes de médias sociaux les plus influentes. --- ## 2005 - YouTube Le site de partage de vidéos YouTube est lancé, permettant aux utilisateurs de télécharger, de visualiser et de partager des vidéos en ligne. --- ## 2006 - Twitter Twitter, une plateforme de microblogging permettant aux utilisateurs de publier des messages courts appelés "tweets", est lancé et connaît une popularité mondiale. --- ## 2007 - iPhone Apple lance l'iPhone, un smartphone révolutionnaire qui popularise l'accès mobile à Internet et ouvre la voie aux applications mobiles. --- ## 2008 - App Store Apple lance l'App Store, une plateforme qui permet aux utilisateurs de télécharger et d'installer des applications mobiles sur leurs appareils iOS. --- ## 2009 - Bitcoin La cryptomonnaie Bitcoin est créée par une personne (ou un groupe) utilisant le pseudonyme Satoshi Nakamoto, ouvrant la voie à l'émergence des monnaies numériques décentralisées. --- ## 2010 - Instagram Kevin Systrom et Mike Krieger lancent Instagram, une application de partage de photos qui devient rapidement populaire grâce à ses filtres et à son interface conviviale. --- ## 2010 - Pinterest Ben Silbermann, Paul Sciarra et Evan Sharp lancent Pinterest, une plateforme de découverte et de partage d'images qui connaît une forte croissance dans les années suivantes. --- ## 2011 - Snapchat Evan Spiegel, Bobby Murphy et Reggie Brown créent Snapchat, une application de messagerie éphémère qui permet aux utilisateurs d'envoyer des photos et des vidéos qui disparaissent après leur consultation. --- ## 2012 - Facebook atteint 1 milliard d'utilisateurs Facebook annonce avoir atteint le cap d'un milliard d'utilisateurs actifs mensuels, ce qui en fait le plus grand réseau social du monde. --- ## 2013 - Slack Stewart Butterfield lance Slack, une plateforme de communication collaborative en entreprise qui simplifie la coordination et la communication entre les équipes. --- ## 2014 - WhatsApp acquis par Facebook Facebook acquiert WhatsApp, une application de messagerie instantanée populaire, pour la somme de 19 milliards de dollars. --- ## 2015 - React.js Facebook publie React.js, une bibliothèque JavaScript open source, qui permet de développer des interfaces utilisateur interactives et réactives. --- ## 2016 - Pokémon Go Niantic et The Pokémon Company lancent Pokémon Go, un jeu en réalité augmentée pour smartphones qui connaît un succès mondial et popularise cette technologie. --- ## 2017 - Net Neutrality La Federal Communications Commission (FCC) des États-Unis abroge les règles de neutralité du net, suscitant des inquiétudes quant à l'égalité d'accès à l'information en ligne. --- ## 2018 - GDPR Le Règlement général sur la protection des données (RGPD) entre en vigueur dans l'Union européenne, renforçant les droits des individus en matière de protection des données personnelles en ligne. --- ## 2019 - TikTok L'application de partage de vidéos TikTok, développée par ByteDance, devient extrêmement populaire auprès des jeunes utilisateurs du monde entier. --- ## 2020 - COVID-19 et télétravail La pandémie de COVID-19 entraîne une augmentation massive du télétravail, stimulant la demande d'outils de communication en ligne tels que Zoom, Microsoft Teams et Slack. --- ## 2021 - NFTs Les jetons non fongibles (NFTs) connaissent une popularité croissante, permettant aux artistes et aux créateurs de vendre des œuvres numériques uniques sur la blockchain. ----- ## Les languages de programmation --- ## 1949 - Fortran Le premier langage de programmation élevé, développé par IBM, permettant aux programmeurs d'écrire des instructions en utilisant des mots anglais plutôt que des codes binaires. --- ## 1957 - Lisp Le premier langage de programmation dédié à l'intelligence artificielle, créé par John McCarthy, qui a introduit le concept de listes chaînées et la manipulation symbolique. --- ## 1970 - Pascal Un langage de programmation structuré, créé par Niklaus Wirth, qui a introduit des concepts tels que les types de données abstraits et les pointeurs. --- ## 1972 - C Créé par Dennis Ritchie chez Bell Labs, le langage C est devenu l'un des langages les plus populaires de tous les temps. Il a influencé la conception de nombreux autres langages et est encore largement utilisé aujourd'hui. --- ## 1972 - Prolog Un langage de programmation logique développé par Alain Colmerauer et Robert Kowalski, utilisant des règles logiques pour résoudre des problèmes basés sur la logique formelle. --- ## 1978 - Smalltalk Un langage de programmation orienté objet développé au Xerox PARC, qui a introduit des concepts tels que les classes, les objets et l'héritage. --- ## 1983 - Ada Un langage de programmation structuré et sécurisé, développé pour répondre aux besoins du ministère américain de la Défense pour les applications critiques. --- ## 1984 - MATLAB Un langage de programmation axé sur le calcul numérique et l'analyse de données, largement utilisé dans les domaines scientifiques et d'ingénierie. --- ## 1987 - Perl Un langage de script polyvalent, conçu par Larry Wall, qui intègre des fonctionnalités de nombreux autres langages et est principalement utilisé pour le traitement de texte et la manipulation de fichiers. --- ## 1980 - C++ Une extension du langage C, développée par Bjarne Stroustrup, qui a ajouté des fonctionnalités orientées objet. --- ## 1990 - Haskell Un langage de programmation fonctionnel pur, développé pour faciliter la programmation fonctionnelle et la vérification de la cohérence des programmes. --- ## 1991 - Python Un langage de programmation interprété, conçu par Guido van Rossum, qui met l'accent sur la lisibilité du code et la simplicité syntaxique. --- ## 1993 - Ruby Un langage de programmation interprété, orienté objet et axé sur la simplicité et la productivité, développé par Yukihiro Matsumoto. --- ## 1993 - R Un langage de programmation et un environnement logiciel utilisés pour le traitement et l'analyse statistique des données. --- ## 1995 - Java Un langage de programmation orienté objet développé par Sun Microsystems, qui est devenu populaire pour sa portabilité, sa sécurité et sa capacité à créer des applications web. --- ## 1995 - PHP Un langage de script principalement utilisé pour le développement web, conçu par Rasmus Lerdorf pour créer des pages web dynamiques. --- ## 1995 - JavaScript Un langage de script côté client développé par Netscape, qui permet d'ajouter des fonctionnalités interactives aux pages web. --- ## 1995 - Visual Basic Un langage de programmation développé par Microsoft, destiné à la création d'applications Windows avec une interface utilisateur graphique. --- ## 1995 - Delphi Un langage de programmation basé sur Pascal, développé par Borland, qui permet de créer des applications Windows. --- ## 2000 - C# Un langage de programmation développé par Microsoft, destiné à la création d'applications Windows et à la programmation sur la plateforme .NET. --- ## 2003 - Ruby Un langage de programmation interprété, orienté objet et axé sur la simplicité et la productivité, développé par Yukihiro Matsumoto. --- ## 2007 - Go Un langage de programmation développé par Google, conçu pour être simple, efficace et adapté aux systèmes distribués et aux gros volumes de données. --- ## 2011 - Swift Un langage de programmation développé par Apple pour créer des applications iOS et macOS, qui se veut plus sûr, plus rapide et plus moderne que Objective-C. --- ## 2012 - Julia Un langage de programmation scientifique utilisé pour les calculs numériques et le calcul haute performance. --- ## 2014 - Rust Un langage de programmation système développé par Mozilla, qui vise à fournir une sécurité, une concurrence et une performance élevées. --- ## 2014 - Kotlin Un langage de programmation développé par JetBrains, qui peut être utilisé avec Java pour le développement d'applications Android. --- ## 2017 - TypeScript Microsoft publie TypeScript, un langage de programmation qui étend JavaScript avec des fonctionnalités de typage statique, améliorant ainsi la maintenabilité des grands projets JavaScript. --- ## 2020 - WebAssembly Le WebAssembly (Wasm) devient un standard du web, permettant l'exécution de langages de programmation autres que JavaScript dans les navigateurs web.