20 plus grandes inventions dans la programmation informatique
Dans une des conversations que j'ai eues avec notre rédacteur en chef, on m'a posé la question: «Comment les premiers programmeurs ont-ils programmé?» Cela a mené à une discussion sur Babbage et Ada Lovelace, à la fin de laquelle j'ai été affecté à recherche comment tout a commencé - ce sont les nombreuses premières dans l'histoire de l'informatique.
J'ai creusé dans des livres et des sites Web et j'ai été confronté à de nombreuses révélations: Babbage n'est pas techniquement l' inventeur de l'ordinateur, FORTRAN n'était pas le premier langage de programmation de haut niveau et nous avions des stylets pour écrans CRT.
J'ai également été surpris de découvrir à quel point les guerres essentielles alimentaient les progrès rapides du développement informatique, ainsi que la contribution de nombreuses femmes que nos manuels ont choisi de négliger. Par conséquent, pour combler les lacunes dans l'histoire des ordinateurs et des programmes, j'ai réuni 20 premières dans le monde de l'informatique, des boules de bowling à la Seconde Guerre mondiale et tout ce qui est entre les deux.
1. Premier ordinateur: "Moteur de différence" (1821)
Le «moteur de différence» était un ordinateur mécanique proposé pour produire des tables mathématiques. Commandé par le gouvernement britannique, Charles Babbage (alias Father of Computer) a commencé à travailler dessus, mais en raison de son coût de production élevé, le financement a été arrêté et la machine n'a jamais été achevée .
2. Premier ordinateur à usage général: "moteur analytique" (1834)Le "moteur analytique" était également un ordinateur mécanique proposé, dont l'entrée était supposée être des cartes perforées, avec des programmes et des données gravés dessus. Une autre idée de Charles Babbage, cette machine n'était pas non plus terminée.
3. Premier programme informatique: algorithme pour calculer les nombres de Bernoulli (1841 - 1842)Ada Lovelace (le premier programmeur informatique du monde) a commencé à traduire les enregistrements du mathématicien italien Luigi Menabrea sur le moteur analytique de Babbage en 1841. Pendant la traduction elle s'est intéressée à la machine et a laissé des notes avec sa traduction. L'une des notes - note G contenait l'algorithme de calcul des nombres de Bernoulli par le moteur analytique, considéré comme le tout premier programme informatique.
4. Premier ordinateur de travail programmable: Z3 (1941)Konrad Zuse (l'inventeur des ordinateurs) avait déjà un ordinateur mécanique fonctionnel Z1 mais il ne travaillait que quelques minutes à la fois. L'utilisation d'une technologie différente - relais, conduit à Z2 et éventuellement Z3. Z3 était un ordinateur électromagnétique pour lequel le programme et les données étaient stockés sur des bandes perforées externes. C'était un projet secret du gouvernement allemand et mis à profit par le German Aircraft Research Institute. La machine d'origine a été détruite lors du bombardement de Berlin en 1943.
5. Premier ordinateur électronique: Atanasoff-Berry Computer (ABC) (1942)Créé par John Vincent Atanasoff & Clifford Berry, l'ordinateur Atanasoff-Berry ou ABC a été utilisé pour trouver la solution pour les équations linéaires simultanées. C'était le tout premier ordinateur qui utilisait des binaires pour représenter des données et des commutateurs électroniques au lieu de mécaniques. L'ordinateur n'était cependant pas programmable.
6. Premier ordinateur électronique programmable: Colossus (1943)Le Colossus créé par Tommy Flowers, était une machine créée pour aider les Britanniques à décrypter les messages allemands cryptés par le chiffre de Lorenz, lors de la Seconde Guerre mondiale. Il a été programmé par des interrupteurs et des prises électroniques. Colossus a pris le temps de déchiffrer les messages cryptés de quelques semaines à quelques heures.
7. Premier calculateur électronique programmable à usage général: ENIAC (1946)Financé par l'armée américaine, ENIAC ou Electronic Numerical Integrator And Computer a été développé à la Moore School of Electrical Engineering, Université de Pennsylvanie par John Mauchly & J. Presper Eckert. ENIAC mesurait 150 pieds de large et pouvait être programmé pour effectuer des opérations complexes comme des boucles; la programmation a été faite en modifiant ses commutateurs et câbles électroniques. Il a utilisé des lecteurs de cartes pour l'entrée et des perforations de cartes pour la sortie. Il a aidé avec des calculs pour la faisabilité de la première bombe à hydrogène du monde.
8. Premier Trackball: (1946/1952)Pourquoi les deux ans pour le premier trackball? Permettez-moi d'expliquer.
La première année était l'année donnée par Ralph Benjamin, qui affirmait avoir créé le premier trackball au monde lorsqu'il travaillait sur un système de surveillance des avions volant à basse altitude en 1946. L'invention qu'il décrivait utilisait une bille pour contrôler les coordonnées XY d'un curseur sur l'écran. Le design a été breveté en 1947 mais n'a jamais été publié parce qu'il est considéré comme un "secret militaire". L'armée a opté pour le joystick à la place.
Le deuxième concurrent pour le premier trackball au monde, utilisé dans le système DATAR de la Marine canadienne en 1952, a été inventé par Tom Cranston and co. Cette conception de boule de commande a eu une maquette qui a utilisé une boule de bowling canadienne filée sur des «roulements à air» (voir l'image ci-dessous).
9. Premier ordinateur à programme stocké: SSEM (1948)Pour pallier les insuffisances de la mémoire à ligne de retard, Frederic C. Williams et Tom Kilburn avaient développé le premier dispositif de stockage numérique à accès aléatoire basé sur le CRT standard. La SSEM ( machine expérimentale à petite échelle de Manchester) a été utilisée pour implémenter ce dispositif de stockage pour une utilisation pratique. Les programmes ont été entrés sous forme binaire en utilisant 32 commutateurs et sa sortie était un CRT.
10. Premier langage de programmation de haut niveau: Plankalkül (1948)Bien que Konrad Zuse ait commencé à travailler sur Plankalkül depuis 1943, ce n'est qu'en 1948 qu'il a publié un article à ce sujet. Malheureusement, cela n'a pas attiré beaucoup d'attention. Il faudrait près de trois décennies plus tard pour qu'un compilateur soit mis en place, un par Joachim Hohmann dans une dissertation.
11. Premier assembleur: "Ordres initiaux" pour l'EDSAC (1949)Assembler est un programme qui convertit les mnémoniques (bas niveau) en représentation numérique (code machine). Les commandes initiales dans EDSAC ( calculateur automatique de stockage électronique de retard ) étaient le premier d'un tel système. Il a été utilisé pour assembler des programmes à partir de l'entrée de bande papier dans la mémoire et l'exécution de l'entrée. Les programmes étaient en codes mnémoniques au lieu de codes machine, faisant du "code initial" le premier assembleur en traitant un code de programme bas niveau symbolique dans un code machine.
12. Premier ordinateur personnel: "Simon" (1950)"Simon" par Edmund Berkeley a été le premier ordinateur numérique abordable qui pourrait effectuer quatre opérations: addition, négation, plus grand que, et sélection. L'entrée était en papier perforé et le programme fonctionnait sur une bande de papier. La seule sortie était à travers cinq lumières.
13. Premier compilateur: A-0 pour UNIVAC 1 (1952)Un compilateur est un programme qui convertit un langage de haut niveau en code machine. Le système A-0 était un programme créé par la légendaire Grace Hopper pour convertir un programme spécifié comme une séquence de sous-routines et d'arguments en code machine. L'A-0 a ensuite évolué en A-2 et a été distribué aux clients avec son code source, ce qui en fait peut-être le tout premier logiciel open source .
14. Premier Autocode: Autocode de Glennie (1952)Un Autocode est un langage de programmation de haut niveau qui utilise un compilateur. La première autocode et son compilateur sont apparus à l'Université de Manchester pour rendre la programmation de la machine Mark 1 plus intelligible. Il a été créé par Alick Glennie, d'où le nom Glennie's Autocode.
15. Premier ordinateur d'affichage graphique en temps réel: AN / FSQ-7 par IBM (1951)AN / FSQ-7 était basé sur l'un des premiers ordinateurs qui affichait une sortie en temps réel, Whirlwind. Il est devenu la ligne de vie du système de défense aérienne des États-Unis connu sous le nom de SAGE (Semi-Automatic Ground Environment). Les ordinateurs ont montré des pistes pour les cibles et ont automatiquement montré quelles défenses étaient à portée. AN / FSQ-7 avait 100 consoles système; en voici une (image ci-dessous), l'OA-1008 Situation Display (SD), avec un pistolet optique utilisé pour sélectionner des cibles à l'écran pour plus d'informations.
16. Premier langage de programmation de haut niveau largement utilisé: FORTRAN (1957)Si vous vérifiez les manuels, vous trouverez FORTRAN répertorié comme le premier langage de programmation de haut niveau. Pensé par John W. Backus qui n'aimait pas écrire des programmes et a décidé de créer un système de programmation pour faciliter le processus, l'utilisation de FORTRAN a considérablement réduit le nombre d'instructions de programmation nécessaires pour faire fonctionner une machine. En 1963, plus de 40 compilateurs FORTRAN étaient déjà disponibles.
17. Première souris (1964)C'est en assistant à une conférence sur l'infographie que l'idée d'une souris est venue à Douglas Engelbart en 1964. Il a imaginé un appareil avec une paire de petites roues (l'une tourne horizontalement l'autre verticalement) qui peut être utilisée pour déplacer un curseur sur un écran. Un prototype (voir ci-dessous) a été créé par son ingénieur en chef, Bill English, mais l'anglais et Engelbart n'ont jamais reçu de royalties pour le design car techniquement, il appartenait à SRI, l'employeur d'Engelbert.
18. Premier ordinateur de bureau commercial: Programma 101 (1965)Aussi connu sous le nom de Perottina, Programma 101 a été le premier PC commercial au monde. Il pourrait effectuer l'addition, la soustraction, la multiplication, la division, la racine carrée, la valeur absolue et la fraction. Pour tout ce qu'il pouvait faire, il était au prix de 3 200 $ (c'était une époque très différente) et a réussi à vendre 44 000 unités. Perottina a été inventé par Pier Giorgio Perotto et produit par Olivetti, un fabricant italien.
19. Premier écran tactile (1965)Cela ne ressemble pas beaucoup mais c'était le premier écran tactile que le monde ait jamais connu. C'est un panneau à écran tactile capacitif, sans sensibilité à la pression (il y a un contact ou pas de contact) et il enregistre seulement un seul point de contact (par opposition au multitouch). Le concept a été adopté pour être utilisé par les contrôleurs de la circulation aérienne au Royaume-Uni jusqu'aux années 1990.
20. Premier langage de programmation orienté objet: Simula (1967)Basé sur le concept de construction de classe de CAR Hoare, Ole-Johan Dahl et Kristen Nygaard ont mis à jour leur langage de programmation "SIMULA I" avec des objets, des classes et des sous-classes. Cela a abouti à la création de SIMULA 67 qui est devenu le premier langage de programmation orienté objet.
Dernières penséesAutant que ce post était sur ce que nous pourrions apprendre sur les nombreuses premières dans l'histoire de l'informatique, il est difficile de se plonger dans l'histoire elle-même. Par conséquent, au moins pour moi, nous devenons plus reconnaissants pour le travail accompli par les générations avant les nôtres, et nous pouvons mieux comprendre ce qui motive les nombreux changements qui façonnent le monde dans lequel nous vivons aujourd'hui.
J'espère que ce post vous inspire autant qu'il m'a inspiré. Partagez vos réflexions sur ces premières, et si j'en ai manqué, j'en suis sûre, ajoutez-les dans les commentaires.
Lisez maintenant: 40 personnes qui ont changé Internet
Créez votre propre icône de police facilement avec Fontello
Nous pouvons voir que les icônes de polices sont largement utilisées sur les sites Web, et pour une bonne raison. L'icône de police est fiable, a un aspect net et précis dans un écran à haute résolution, et est facilement réglable en termes de taille d'icône, de couleur et de position d'icône par CSS. Cela ren
Nouvelles ressources pour les développeurs Web - Août 2017
Il y a un certain nombre de sociétés open-source qui se réunissent pour fournir des ressources web et des outils utiles que tout le monde peut utiliser gratuitement . C'est ce qui fait que la communauté Web prospère, innove et produit des ressources plus utiles.Dans cette série de la série Fresh Resources, j'ai rassemblé un certain nombre de nouvelles ressources de diverses catégories, y compris une application qui vous permet de gérer les plugins Sketch sur différents ordinateurs, une collection de polices iconiques pour votre âme nerd, quelques applications de bureau et une poignée d&