Skip to content

💻Origins & Evolution

Ingénieur logiciel · Écrit, teste et maintient le code qui gère la vie moderne – et est l’une des premières professions à voir l’IA automatiser son propre travail quotidien.

Partager cette page

Le génie logiciel est une profession inhabituellement jeune qui repose sur une vieille idée. Les gens concevaient des procédures étape par étape que les machines devaient suivre depuis les années 1840, mais personne n'était payé pour devenir « ingénieur logiciel » avant une bonne partie du XXe siècle, et le titre de poste lui-même n'a été proposé – à moitié provocateur – qu'en 1968.

Son histoire traverse une comtesse qui n'a jamais vu son algorithme fonctionner, des femmes qui ont recâblé à la main un ordinateur de la taille d'une pièce, un officier de la marine qui voulait des machines pour lire l'anglais et une conférence dans les Alpes bavaroises qui a donné son nom au domaine en déclarant qu'il était en crise.

Where it began

1843Londres, Angleterre

Ada Lovelace, traduisant l'article d'un ingénieur italien sur le moteur analytique non construit de Charles Babbage, ajoute une série de notes plus longues que le texte original. Le dernier d’entre eux, Note G, expose étape par étape comment la machine calculerait une séquence de nombres – un algorithme écrit pour un ordinateur qui n’existerait pas avant un autre siècle, et le point que la plupart des historiens considèrent comme la naissance conceptuelle de la programmation : l’idée que les instructions d’une machine pourraient être conçues, écrites et vérifiées comme une chose distincte de la machine elle-même.

Timeline

1843Ada Lovelace publie le premier algorithme

Traduisant un article italien sur le moteur analytique non construit de Charles Babbage, Lovelace ajoute une note décrivant étape par étape comment la machine calculerait les nombres de Bernoulli – généralement cité comme le premier programme informatique publié.

1890Les cartes perforées de Hollerith compilent un recensement

Les tabulatrices à cartes perforées d'Herman Hollerith traitent le recensement américain en un an environ, un travail qui avait pris manuellement près de huit ans pour le décompte précédent ; son entreprise devient plus tard partie d'IBM.

1943–1945Six femmes programment l'ENIAC

Kay McNulty, Jean Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas et Ruth Lichterman programment l'ENIAC de la taille d'une pièce à l'Université de Pennsylvanie en réglant physiquement les interrupteurs et en branchant les câbles, sans manuel ni langage de programmation pour les guider.

1952Grace Hopper termine le premier compilateur

Le système A-0 de Hopper chez Remington Rand traduit automatiquement la notation mathématique symbolique en code machine, remplaçant ainsi la pratique sujette aux erreurs consistant à copier manuellement les adresses de sous-programmes - un ancêtre direct de chaque compilateur depuis.

1957FORTRAN est livré pour l'IBM 704

L'équipe de John Backus chez IBM publie FORTRAN après environ deux ans de travail ; en deux ans, plus de la moitié de tout le code exécuté par machine aux États-Unis y serait écrit.

1968La conférence de l'OTAN nomme le « génie logiciel »

Lors d'une conférence à Garmisch, en Allemagne de l'Ouest, les participants ont délibérément emprunté le terme « ingénierie logicielle » pour affirmer que la construction de grands programmes nécessite la même discipline que la construction de ponts, qualifiant les dépassements chroniques dans ce domaine de « crise logicielle ».

1969–1973Unix et C prennent forme aux Bell Labs

Ken Thompson et Dennis Ritchie construisent le système d'exploitation Unix sur un PDP-7 de rechange, puis le réécrivent dans le nouveau langage C de Ritchie en 1973 afin qu'il puisse fonctionner sur plusieurs types d'ordinateurs.

1981L'IBM PC apporte des logiciels à chaque bureau

Le PC d'IBM est lancé avec le PC-DOS de Microsoft, transformant le logiciel en un produit grand public presque du jour au lendemain et consolidant la jeune entreprise que Bill Gates et Paul Allen avaient fondée six ans plus tôt sur Altair BASIC.

1991Linux et le World Wide Web arrivent à des mois d'intervalle

Linus Torvalds publie son noyau de hobby sur Usenet en août, le qualifiant de « juste un hobby, qui ne sera ni grand ni professionnel » ; Le World Wide Web de Tim Berners-Lee est rendu public le même mois et les logiciels ouverts et librement partagés deviennent la norme sur Internet.

2021–2023L'IA s'installe dans l'éditeur de code

GitHub Copilot (2021) et ChatGPT (2022) mettent en œuvre quotidiennement la génération de code de modèle en grand langage ; d'ici quelques années, GitHub rapporte que les utilisateurs de son propre outil acceptent le code suggéré par l'IA pour une part importante et croissante des lignes qu'ils conservent.

The eras

Console opérateur d'un mainframe IBM System/360
ArnoldReinhold · CC BY-SA 3.0 · Wikimedia Commons
Années 1950-1960

Mainframes et programmation par lots

Les premiers programmes étaient soumis sous forme de jeux de cartes perforées et exécutés par lots, souvent du jour au lendemain, de sorte qu'une seule faute de frappe pouvait coûter à un programmeur une journée entière à attendre la prochaine exécution. Les mathématiciens, et en grand nombre des femmes, sont passés du calcul manuel à ce nouveau travail de « programmation », car il était considéré comme un travail de bureau et axé sur les détails plutôt que prestigieux. FORTRAN (1957) et COBOL (1959) se sont imposés au cours de cette décennie, et la simple difficulté de construire de grands systèmes fiables sur ce matériel a déclenché la « crise logicielle » que l'ère suivante tenterait de nommer et de résoudre.

Un mini-ordinateur PDP-11, la machine la plus associée aux premiers Unix
Stefan_Kögl · CC BY-SA 3.0 · Wikimedia Commons
1969-1983

Unix, une programmation structurée et une discipline porte un nom

Après que la conférence de l'OTAN de 1968 ait mis un nom sur les problèmes chroniques de budget et de fiabilité du terrain, les années 1970 ont produit à la fois un diagnostic et une boîte à outils : une programmation structurée, des tests disciplinés et Unix, un système d'exploitation construit aux Bell Labs et réécrit dans le nouveau langage C afin qu'il puisse fonctionner sur plus d'une machine. Les mini-ordinateurs comme le PDP-11 ont étendu la puissance de calcul réelle au-delà d'une poignée de salles d'ordinateurs centraux, et le « génie logiciel » a commencé à apparaître comme un diplôme universitaire à part entière plutôt que comme un sous-domaine des mathématiques ou du génie électrique.

Un ordinateur personnel IBM original de 1981
Own work (based on graphics by International Business Machines Corporation) · Public domain · Wikimedia Commons
1975-1990

Ordinateurs personnels et logiciels dans une boîte

Le kit Altair 8800 (1975), puis l'Apple II et l'IBM PC (1981) ont transformé le logiciel d'un objet institutionnel en quelque chose qu'une famille pouvait acheter dans le commerce. Une industrie logicielle grand public et destinée aux petites entreprises a vu le jour autour des traitements de texte, des feuilles de calcul et des jeux, vendus dans des boîtes emballées sous film rétractable avec une politique de retour au lieu d'un contrat de support. Le développement en cascade et fortement documenté dominait les grands projets, même si les marginaux de l'industrie – les codeurs de chambre à coucher, les hackers universitaires – travaillaient dans un style plus proche du style plus rapide et plus informel d'aujourd'hui.

Tux, la mascotte pingouin du système d'exploitation open source Linux
Larry Ewing , Simon Budig , Garrett LeSage · CC0 · Wikimedia Commons
1991-2005

Le Web, l'open source et le cycle point-com

Le World Wide Web et le noyau Linux sont tous deux devenus accessibles au public à quelques mois d'intervalle en 1991, et ensemble, ils ont prouvé que les logiciels construits ouvertement, par des bénévoles qui ne s'étaient jamais rencontrés, pouvaient rivaliser avec tout ce qu'une entreprise proposait. Le navigateur Web a créé un tout nouveau marché du travail presque du jour au lendemain ; ce marché a ensuite explosé et, en 2000-2001, s’est effondré de façon spectaculaire, anéantissant une génération de startups mais laissant derrière lui Amazon, Google et l’infrastructure sur laquelle la prochaine ère s’appuierait. Le Manifeste Agile (2001) a formalisé une réaction contre une planification lourde et documentaire en faveur de cycles plus courts et plus itératifs.

Schéma conceptuel de l'infrastructure de cloud computing
Sam Johnston · CC BY-SA 3.0 · Wikimedia Commons
2006-présent

Ingénierie assistée par Cloud, DevOps et IA

La location d'un serveur à l'heure auprès d'Amazon Web Services (2006) a supprimé l'un des coûts fixes les plus importants liés à l'exécution des logiciels, et les magasins d'applications ont offert aux ingénieurs un deuxième canal de distribution, axé sur le mobile, presque simultanément. Git et GitHub (2005-2008) ont rendu la collaboration distribuée sur la même base de code normale, même entre inconnus, et les pipelines de déploiement automatisés ont réduit l'écart entre la finalisation d'une modification et son exécution devant les utilisateurs de plusieurs mois à quelques minutes. Au début des années 2020, les assistants de codage d’IA formés au code public étaient passés du statut de nouveauté à celui d’outil quotidien pour une grande partie des ingénieurs professionnels – la diffusion la plus rapide d’un nouvel instrument dans la profession dans son histoire.

What this job replaced

Neighbouring trades that no longer exist — absorbed, automated or regulated away.

Ordinateur humain

Années 1750-1960

Bien avant les machines électroniques, « ordinateur » était le titre de poste d'une personne, souvent une femme, qui effectuait des calculs mathématiques à la main ou avec une calculatrice mécanique : tables astronomiques, trajectoires d'artillerie, trajectoires orbitales de la NASA. Les ordinateurs électroniques ont repris les calculs à partir des années 1950 et 1960 et, au moment où le travail a disparu, ils avaient déjà donné son nom à la machine.

Opérateur de frappe

Années 1930-1980

Pour la plupart des femmes, les opérateurs de frappe tapaient des données et même le code source du programme sur des cartes perforées sur des machines comme les IBM 026 et 029, une carte par ligne d'un programme. Les terminaux interactifs et les écrans vidéo ont permis aux programmeurs de saisir du code directement dans l'ordinateur, et ce travail a disparu en une génération.

Webmestre

1993-2000

Au cours de la première décennie du Web, un « webmaster » concevait, codait, rédigeait et administrait souvent un site Web entier – le mot est entré dans les dictionnaires en 1993 et ​​a obtenu sa propre adresse e-mail réservée selon les normes Internet en 1997. À mesure que les sites devenaient complexes, le rôle s'est divisé en développeur front-end, développeur back-end, ingénieur DevOps et éditeur de contenu, et « webmaster » a disparu des offres d'emploi.

Trades that vanished →

Chaque époque de cette histoire se termine de la même manière : un outil arrive qui supprime le travail manuel autour duquel toute une catégorie d'emplois avait été construite - calcul manuel, perforation des cartes, planification par lots, approvisionnement manuel des serveurs - et les personnes qui ont effectué ce travail progressent dans la pile ou passent à autre chose.

Les ingénieurs qui lisent ceci vivent actuellement la prochaine itération de ce cycle, et non une première rencontre avec celui-ci. Le reste de ce profil examine ce que cela signifie spécifiquement jusqu’à présent, et ce que suggère une lecture raisonnable des données probantes.

Métiers proches

Voisins les plus proches sur le profil à six scores — pas seulement le même champ.

Continuer à explorer

Keep exploring

More in Engineering & Technology