Informatique

1.1 Informatique

Objectifs d'apprentissage

À la fin de cette section, vous serez capable de :

  • Discuter de l'histoire qui a mené à la création de l'informatique en tant que domaine
  • Définir l'informatique
  • Évaluer ce que l'informatique peut faire, ainsi que ce qu'elle ne devrait pas faire

Le domaine de l'informatique (computer science - CS) est l'étude du calcul (computing), qui inclut tous les phénomènes liés aux ordinateurs, tels qu'Internet. Fondée sur l'ingénierie et les mathématiques, l'informatique se concentre sur l'étude des algorithmes. Un algorithme (algorithm) est une séquence d'instructions précises qui permet le calcul. Cela inclut les composants que les ordinateurs utilisent pour traiter l'information. En étudiant et en appliquant des algorithmes, l'informatique crée des applications et des solutions qui ont un impact sur tous les domaines de la société. Par exemple, l'informatique a développé les programmes qui permettent les achats en ligne, l'envoi de SMS à des amis, la diffusion de musique en continu et d'autres processus technologiques.

Bien que les ordinateurs soient courants aujourd'hui, ils n'ont pas toujours été aussi omniprésents. Pour ceux dont la vie a été façonnée par la technologie informatique, il peut parfois sembler que la technologie informatique est ahistorique : l'informatique se concentre souvent sur l'innovation et l'amélioration rapides, sans perdre de temps à regarder en arrière et à réfléchir sur le passé. Pourtant, les fondations de l'informatique définies il y a plus de 50, voire 100 ans, façonnent encore grandement ce qui est possible avec le calcul aujourd'hui.

L'histoire ancienne de l'informatique

Les premiers dispositifs de calcul ne ressemblaient en rien aux ordinateurs que nous connaissons aujourd'hui. C'étaient des dispositifs de calcul physiques tels que l'abaque (abacus), qui est apparu pour la première fois dans de nombreuses sociétés à travers le monde il y a des milliers d'années. Ils permettaient aux gens de compter, de totaliser ou d'additionner des nombres (Figure 1.2). Aujourd'hui, les abaques sont encore utilisés dans certaines situations, comme pour aider les jeunes enfants à apprendre l'arithmétique de base, pour tenir le score dans les jeux et comme outil de calcul pour les personnes malvoyantes. Cependant, les abaques ne sont pas courants aujourd'hui en raison de l'invention de systèmes numériques tels que le système numérique arabe (0, 1, 2, 3, . . .), qui incluait le zéro et les valeurs de position qui ne peuvent pas être calculées avec des abaques. Le concept d'algorithme a également été inventé à cette époque. Les algorithmes utilisent des entrées et un nombre fini d'étapes pour effectuer des opérations arithmétiques comme l'addition, la soustraction, la multiplication et la division, et produisent des sorties utilisées en informatique. Les ordinateurs d'aujourd'hui reposent toujours sur les mêmes fondements de nombres, de calculs et d'algorithmes, sauf à l'échelle de milliards de nombres et de milliards de calculs par seconde.

Pour introduire un exemple concret d'algorithme, considérons l'algorithme de recherche binaire (binary search algorithm), qui est utilisé pour localiser efficacement un nombre dans un tableau trié d'entiers. L'algorithme fonctionne en divisant à plusieurs reprises l'intervalle de recherche en deux pour effectuer la recherche. Si le nombre recherché est inférieur à l'entier au milieu de l'intervalle, l'intervalle est réduit à la moitié inférieure. Dans l'alternative, l'intervalle est réduit à la moitié supérieure. L'algorithme vérifie à plusieurs reprises jusqu'à ce que le nombre soit trouvé ou que l'intervalle soit vide.

Les algorithmes peuvent sembler compliqués, mais ils peuvent être assez simples. Par exemple, les recettes de cuisine sont des algorithmes avec des instructions précises sur les quantités d'ingrédients, le processus pour les combiner, et les températures et méthodes de cuisson nécessaires pour transformer les ingrédients combinés en un plat spécifique. Le plat est le produit produit en suivant l'algorithme (algorithm) d'une recette.

L'image représente un abaque traditionnel, un simple outil de calcul composé d'un cadre en bois et de plusieurs tiges, chacune contenant des perles rouges. Les perles peuvent être glissées d'avant en arrière le long des tiges pour représenter des nombres afin d'effectuer des opérations arithmétiques.
Figure 1.2 Un abaque est l'une des premières calculatrices. (crédit : « Traditional Chinese abacus illustrating the suspended bead use » par Jccsvq/Wikimedia Commons, CC0)

Le prochain développement majeur dans l'évolution de l'informatique s'est produit en 1614 lorsque John Napier, un mathématicien écossais, a développé les logarithmes (logarithms), qui expriment les exposants en désignant la puissance à laquelle un nombre doit être élevé pour obtenir une autre valeur. Les logarithmes ont fourni un raccourci pour effectuer des calculs fastidieux et sont devenus la fondation de multiples machines à calculer analogiques inventées au cours des années 1600.

Les scientifiques ont continué à explorer différentes façons d'accélérer ou d'automatiser les calculs. Dans les années 1820, le mathématicien anglais Charles Babbage a inventé la Machine à différences (Difference Engine) dans le but de prévenir les erreurs humaines dans les calculs manuels. La Machine à différences a fourni un moyen d'automatiser les calculs de fonctions polynomiales et les calculs astronomiques.

Babbage a fait suivre la Machine à différences de son invention de la Machine analytique (Analytical Engine). Avec l'aide d'Ada Lovelace, la Machine analytique était contrôlée par programme et incluait des fonctionnalités telles qu'une mémoire intégrée et une unité arithmétique et logique. Lovelace a utilisé des cartes perforées pour créer des instructions de séquençage qui pouvaient être lues par la Machine analytique pour effectuer automatiquement tout calcul inclus dans le code de programmation. Avec son travail sur la Machine analytique, Lovelace est devenue la première programmeuse informatique au monde.

Le prochain développement majeur en informatique (computing) s'est produit à la fin des années 1800 lorsque Herman Hollerith, un employé du Bureau du recensement des États-Unis, a développé une machine capable de perforer des cartes et de les compter. En 1890, l'invention de Hollerith a été utilisée pour tabuler et préparer des statistiques pour le recensement des États-Unis.

À la fin des années 1800 et au début des années 1900, les calculatrices, les machines à additionner, les machines à écrire et les machines connexes sont devenues plus courantes, préparant le terrain pour l'invention de l'ordinateur. Dans les années 1940, plusieurs ordinateurs sont devenus disponibles, y compris le Harvard Mark 1 d'IBM. Ce furent les précurseurs de l'avènement de l'ordinateur numérique dans les années 1950, ce qui a tout changé et a évolué vers les ordinateurs et la technologie connexe que nous avons aujourd'hui.

À cette époque, l'informatique (computer science) a émergé en tant que discipline académique enracinée dans les principes des mathématiques, située principalement dans des institutions d'élite, et financée par la demande de l'armée pour une utilisation dans les systèmes de guidage de missiles, les avions et d'autres applications militaires. Comme les ordinateurs pouvaient exécuter des programmes plus rapidement que les humains, l'informatique a remplacé le calcul manuel par des méthodes de résolution de problèmes assistées par ordinateur. De cette façon, les premiers informaticiens universitaires ont envisagé l'informatique comme une discipline bien plus intellectuelle et cognitive que le travail de calcul manuel qui la précédait.

Richard Bellman a été un contributeur important à cet effort. Professeur de mathématiques à Princeton, puis à Stanford dans les années 1940, Bellman a ensuite travaillé pour la Rand Corporation, où il a étudié la théorie des processus de décision multi-étapes. En 1953, Bellman a inventé la programmation dynamique (dynamic programming),1 qui est une méthodologie d'optimisation mathématique et une technique de programmation informatique. Avec la programmation dynamique, les problèmes complexes sont divisés en sous-problèmes plus gérables. Chaque sous-problème est résolu, et les résultats sont stockés, ce qui aboutit finalement à une solution au problème complexe global.2 Avec cette approche, Bellman a contribué à révolutionner la programmation informatique et à permettre à l'informatique de devenir un domaine robuste.

Qu'est-ce que l'informatique ?

Le terme informatique a été popularisé par George E. Forsythe en 1961. Mathématicien qui a fondé le département d'informatique de l'Université de Stanford, Forsythe a défini l'informatique comme « la théorie de la programmation, de l'analyse numérique, du traitement des données et de la conception de systèmes informatiques ». Il a également soutenu que l'informatique se distinguait des autres disciplines par l'accent mis sur les algorithmes, qui sont essentiels pour une programmation informatique efficace.3

L'informatique ne concerne pas seulement l'étude du fonctionnement des ordinateurs, mais aussi tout ce qui les entoure, y compris les personnes qui conçoivent les ordinateurs, les personnes qui écrivent les programmes qui s'exécutent sur les ordinateurs, les personnes qui testent les programmes pour en assurer la correction, et les personnes qui sont directement et indirectement affectées par les ordinateurs. De cette façon, l'informatique concerne autant les personnes et la façon dont elles travaillent avec les ordinateurs que les ordinateurs eux-mêmes.

Tout le monde n'est pas d'accord avec cette définition. Certaines personnes soutiennent que l'informatique concerne davantage les ordinateurs ou les logiciels que les personnes qu'elle affecte. Cependant, même si nous n'étudiions que les « choses » de l'informatique, les personnes sont toujours là. Lorsqu'une personne conçoit un système informatique, elle réfléchit aux types de programmes que les gens pourraient vouloir exécuter. Généralement, des efforts sont faits pour concevoir le système informatique de manière à ce qu'il soit plus efficace pour exécuter certains types de programmes. Un ordinateur optimisé pour le calcul des trajectoires de missiles, par exemple, ne sera pas optimisé pour l'exécution d'applications de médias sociaux.

De nombreuses innovations en informatique (computing) ont été initialement développées à des fins de recherche militaire et de communication, y compris le prédécesseur d'Internet, l'ARPANET (ARPANET) (Figure 1.3).

L'image montre une carte des États-Unis illustrant les premières connexions réseau ARPANET à travers le pays. Divers emplacements sont marqués de carrés rouges représentant différentes institutions et sites connectés à l'ARPANET. La carte utilise des lignes pour indiquer les connexions réseau, montrant comment les terminaux et les réseaux étaient liés à travers plusieurs États et régions clés, y compris la Californie, l'Utah et le Nord-Est.
Figure 1.3 L'ARPANET, vers 1974, était un prédécesseur précoce d'Internet. Il permettait aux ordinateurs des installations de recherche financées par le Pentagone de communiquer via des lignes téléphoniques. (crédit : modification de "Arpanet 1974" par Yngvar/Wikipedia, Domaine public)

Qu'est-ce qu'un ordinateur ?

Bien que l'informatique (computer science) concerne bien plus que de simples ordinateurs, il est utile d'en savoir un peu plus sur les ordinateurs car ils sont une composante importante de l'informatique. Tous les ordinateurs sont faits de matériaux physiques et réels que nous appelons matériel (hardware). Le matériel – qui a quatre composants, y compris le processeur, la mémoire, le réseau et le stockage – est le composant informatique qui permet les calculs. Le processeur (processor) peut être considéré comme le « cerveau » de l'ordinateur, car il suit les instructions des algorithmes et traite les données. La mémoire (memory) est un moyen d'adresser l'information dans un ordinateur en la stockant à des emplacements cohérents, tandis que le réseau (network) fait référence aux divers dispositifs technologiques qui sont connectés et partagent des informations. Le matériel et les composants physiques d'un ordinateur qui abritent de manière permanente les données d'un ordinateur sont appelés stockage (storage).

Une façon de comprendre les ordinateurs est d'un point de vue matériel : les ordinateurs exploitent l'électronique numérique et la physique des matériaux utilisés pour développer des transistors. Par exemple, de nombreux ordinateurs d'aujourd'hui reposent sur les propriétés physiques d'un métalloïde cassant et cristallin appelé silicium, ce qui le rend adapté à la représentation de l'information. Les batteries qui alimentent de nombreux smartphones et appareils mobiles d'aujourd'hui reposent sur le lithium, un métal mou et argenté principalement extrait de minéraux en Australie, au Zimbabwe et au Brésil, ainsi que des dépôts de saumure continentaux au Chili, en Argentine et en Bolivie. Les ingénieurs informaticiens combinent ces substances pour construire des circuits et des chemins d'information à l'échelle microscopique afin de former la base physique des ordinateurs modernes.

Cependant, la base physique des ordinateurs n'a pas toujours été le silicium. L'Intégrateur et calculateur numérique électronique (Electronic Numerical Integrator and Computer) (ENIAC (ENIAC)) a été achevé en 1945, ce qui en fait l'un des premiers ordinateurs numériques. L'ENIAC fonctionnait sur des principes physiques différents. Au lieu du silicium, l'ENIAC utilisait la technologie d'un tube à vide (vacuum tube), un dispositif physique comme une ampoule qui était utilisé comme mémoire dans les premiers ordinateurs numériques. Lorsque la « lumière » dans le tube à vide est éteinte, le tube à vide représente le nombre 0. Lorsque la « lumière » est allumée, le tube à vide représente le nombre 1. Lorsque des milliers de tubes à vide sont combinés de manière logique, nous avons soudainement de la mémoire. L'ENIAC est remarquable dans l'histoire de l'informatique car il a été le premier ordinateur à usage général, ce qui signifie qu'il pouvait exécuter non pas un seul programme, mais n'importe quel programme spécifié par un programmeur. L'ENIAC était souvent exécuté et programmé par des femmes programmeuses (Figure 1.4). Malgré son âge et ses différences de propriétés matérielles, il partage une similitude fondamentale et surprenante avec les ordinateurs modernes. Tout ce qui peut être calculé sur les ordinateurs d'aujourd'hui peut également être calculé par l'ENIAC dans les bonnes circonstances – juste des billions de fois plus lentement.

Cette image en noir et blanc montre quatre femmes de l'ère informatique précoce debout devant un grand système informatique. Chaque femme tient différentes pièces de matériel, telles que des cartes de circuits imprimés, des tubes à vide et d'autres composants informatiques.
Figure 1.4 Cette image représente des femmes programmeuses tenant des cartes utilisées dans des ordinateurs tels que l'ENIAC, dont beaucoup ont été conçues expressément pour la recherche sur la balistique et le guidage de munitions. Aujourd'hui, ces ordinateurs de la taille d'une pièce peuvent être reproduits à une échelle littéralement microscopique – pratiquement invisibles à l'œil humain. (crédit : modification de "Women holding parts of the first four Army computers" par U.S. Army/Wikimedia Commons, Domaine public)

Comment est-ce possible ? Les principes algorithmiques qui déterminent comment les résultats sont calculés constituent le logiciel (software). Presque tous les ordinateurs, de l'ENIAC aux ordinateurs d'aujourd'hui, sont considérés comme Turing-complets (Turing-complete) (ou universels en termes de calcul, par opposition aux dispositifs de calcul spécialisés tels que les calculatrices scientifiques) car ils partagent le même modèle fondamental pour calculer les résultats et chaque ordinateur a la capacité d'exécuter n'importe quel algorithme (algorithm). Alan Mathison Turing était un mathématicien anglais très influent dans le développement de l'informatique théorique, qui se concentre sur les processus mathématiques derrière les logiciels, et a fourni une formalisation des concepts d'algorithme et de calcul avec la machine de Turing. Un ordinateur Turing-complet stocke les données en mémoire (memory) (en utilisant des tubes à vide ou du silicium) et manipule ces données selon un programme informatique (computer program), qui est un algorithme pouvant être exécuté sur un ordinateur. Ces programmes sont représentés à l'aide de symboles et d'instructions écrits dans un langage de programmation (programming language) composé de symboles et d'instructions qui peuvent être interprétés par l'ordinateur. Les programmes sont également stockés en mémoire, ce qui permet aux programmeurs de modifier et d'améliorer les programmes en changeant les instructions.

Bien que le matériel et le logiciel soient importants pour le fonctionnement pratique des ordinateurs, les racines historiques de l'informatique dans les mathématiques soulignent également une troisième perspective. Alors que le logiciel se concentre sur les détails du programme pour résoudre des problèmes avec les ordinateurs, l'informatique théorique se concentre sur les processus mathématiques derrière le logiciel. L'idée de Turing-complétude est un concept fondamental en informatique théorique, qui examine comment les ordinateurs en général – pas seulement l'ENIAC (ENIAC) ou les ordinateurs d'aujourd'hui, mais même les ordinateurs de demain que nous n'avons pas encore inventés – peuvent résoudre des problèmes. Cette perspective théorique élargit les connaissances en informatique en apportant des idées sur (1) si un problème peut être calculé par un ordinateur Turing-complet, (2) comment ce problème pourrait être calculé à l'aide d'un algorithme, et (3) à quelle vitesse ou efficacité un ordinateur peut exécuter un tel algorithme. Les réponses à ces questions suggèrent les limites de ce que nous pouvons réaliser avec les ordinateurs d'un point de vue technique : en utilisant des idées mathématiques, est-il possible d'utiliser un ordinateur pour calculer tous les problèmes ? Si la réponse à un problème est oui, quelle quantité de ressources informatiques est nécessaire pour obtenir la réponse ?

Il est clair que les humains et les ordinateurs ont leurs forces et leurs limites. Un exemple de problème que les humains peuvent résoudre mais avec lequel les ordinateurs ont du mal est l'interprétation des émotions subtiles ou la prise de jugements moraux dans des situations sociales complexes. Bien que les ordinateurs puissent traiter des données et reconnaître des modèles, ils ne peuvent pas comprendre pleinement les nuances des émotions humaines ou de l'éthique, qui impliquent souvent le contexte, l'empathie et l'expérience. D'un autre côté, il y a des tâches que ni les ordinateurs ni les humains ne peuvent effectuer, comme prédire avec précision des systèmes chaotiques comme les modèles météorologiques à long terme. Malgré les avancées en intelligence artificielle (artificial intelligence - AI) — c'est-à-dire les fonctions informatiques qui effectuent des tâches telles que la perception visuelle et la prise de décision habituellement réalisées par l'intelligence humaine — ces problèmes restent hors de notre portée collective en raison de l'imprévisibilité et de la complexité inhérentes à certains systèmes naturels.

L'informatique théorique est souvent mise en avant dans les programmes d'informatique de premier cycle parce que l'informatique académique a émergé des mathématiques, souvent au détriment des perspectives qui se concentrent sur les valeurs sociales et techniques incarnées par les applications de la technologie informatique. Ces perspectives, cependant, changent progressivement. Tout comme la conception de l'ARPANET (ARPANET) a façonné la conception d'Internet, les informaticiens apprennent également que les aspects physiques du matériel (hardware) informatique déterminent ce qui peut être efficacement calculé. Par exemple, de nombreuses technologies d'intelligence artificielle d'aujourd'hui reposent sur du matériel informatique hautement spécialisé qui est fondamentalement différent au niveau physique par rapport au silicium programmable à usage général qui a été le centre d'intérêt traditionnel de l'informatique. Les organisations qui développent l'interaction homme-machine (human-computer interaction - HCI), un sous-domaine de l'informatique qui met l'accent sur les aspects sociaux du calcul, organisent désormais des conférences annuelles qui rassemblent des milliers de chercheurs universitaires et de professionnels de l'industrie. L'enseignement de l'informatique est un autre sous-domaine qui met l'accent sur les aspects cognitifs, sociaux et communautaires de l'apprentissage de l'informatique. Bien que ces sous-domaines centrés sur l'humain ne soient pas encore présents dans tous les départements d'informatique, leur représentation croissante reflète le désir croissant des informaticiens de servir non seulement des étudiants plus engagés, mais aussi un public plus engagé à comprendre les valeurs des technologies informatiques.

Les capacités et les limites de l'informatique

Les ordinateurs peuvent être compris comme des sources, des outils et des opportunités pour changer les conditions sociales. De nombreuses personnes ont utilisé l'informatique pour atteindre des objectifs divers au-delà de cette vision dominante de l'informatique. Par exemple, considérons les ordinateurs dans l'éducation.

À peu près au même moment où l'ARPANET a commencé son développement à la fin des années 1960, Wally Feurzeig, Seymour Papert et Cynthia Solomon ont conçu le langage de programmation (programming language) LOGO pour permettre de nouveaux types d'expression et de communication médiatisées par ordinateur. Comparé aux langages de programmation contemporains tels que FORTRAN qui mettaient l'accent sur le calcul pour les applications scientifiques et d'ingénierie, LOGO est bien connu pour son utilisation des graphiques tortue, où les programmes étaient utilisés pour contrôler les actions d'une tortue numérique à l'aide d'instructions telles que avancer d'un certain nombre d'unités et tourner à gauche ou à droite d'un certain nombre de degrés. Papert a soutenu que cette programmation tortue permettait un raisonnement corps-syntonique, une sorte d'expérience qui pouvait aider les étudiants à apprendre plus efficacement des concepts en mathématiques tels que les angles, la distance et les formes géométriques en demandant à la tortue de les dessiner, et en physique en construisant leurs propres compréhensions par le raisonnement à travers le mouvement physique des programmes tortue en montrant les concepts de vitesse, des commandes répétées pour avancer de la même quantité ; l'accélération, en faisant avancer la tortue de quantités croissantes ; et même le frottement, en faisant ralentir la tortue en avançant de quantités décroissantes. De cette façon, les ordinateurs pouvaient non seulement être utilisés pour approfondir l'éducation en informatique (computer science), mais aussi offrir de nouvelles façons plus dynamiques d'apprendre d'autres sujets. Les idées de Papert ont été étendues au-delà du domaine des mathématiques et de la physique à des domaines tels que les sciences sociales, où la visualisation interactive de données peut aider les étudiants à identifier des corrélations et des modèles intéressants qui ont précipité des changements sociaux et des tournants dans l'histoire tout en apprenant de nouvelles compétences en matière de données et les limites des approches basées sur les données.4

Pourtant, malgré ces aspirations initiales pour les ordinateurs comme moyen d'apprendre tout et n'importe quoi, l'étude de l'enseignement de l'informatique a émergé dans les années 1970 comme un domaine étroitement préoccupé par la production d'ingénieurs logiciels plus efficaces. Les professeurs d'informatique de l'enseignement supérieur, motivés par la demande d'ingénieurs logiciels, ont conçu leurs programmes d'informatique pour enseigner les concepts dont les premières entreprises informatiques telles qu'IBM avaient désespérément besoin. Ces cours mettaient l'accent sur l'efficacité, la performance et l'évolutivité, car l'enseignement universitaire en informatique était uniquement destiné à produire des ingénieurs logiciels. Nous vivons encore aujourd'hui avec les conséquences de cette conception : la structure de ce manuel hérite des frontières entre les concepts initialement imaginés dans les années 1970, lorsque l'enseignement universitaire en informatique était uniquement destiné à préparer les étudiants aux emplois de développement de logiciels. Nous savons maintenant qu'il existe de nombreux autres rôles pour les informaticiens dans la société – non seulement des ingénieurs logiciels, mais aussi des analystes de données, des chefs de produit, des entrepreneurs, des conseillers politiques ou des politiciens, des ingénieurs environnementaux, des militants sociaux et des scientifiques dans tous les domaines, de la comptabilité à la zoologie.

Bien que le rôle des ordinateurs se soit étendu avec l'introduction d'Internet à la fin des années 1990, la vision de Papert de l'informatique comme moyen d'apprentissage a été difficile à mettre en œuvre, du moins en partie à cause des contraintes de financement. Mais à mesure que les ordinateurs évoluent, l'enseignement primaire et secondaire aux États-Unis s'efforce de trouver des moyens d'aider les enseignants à utiliser les ordinateurs pour enseigner plus efficacement toutes les matières – non pas seulement les ordinateurs pour eux-mêmes, mais en utilisant les ordinateurs pour tout apprendre.

Les ordinateurs et la justice raciale

Nos histoires jusqu'à présent ont centré les intérêts des hommes blancs américains en informatique. Mais il existe aussi d'innombrables histoires inédites et marginalisées de personnes d'autres origines, races, ethnies et genres en informatique (computing). Le livre et le film Les Figures de l'ombre racontent les histoires d'importantes femmes noires qui n'étaient pas seulement des calculatrices humaines, mais aussi certaines des premières informaticiennes pour les premiers ordinateurs numériques qui ont propulsé les vols spatiaux habités à la NASA (Figure 1.5).

Cette image en noir et blanc montre Katherine Johnson souriante, assise à un bureau, travaillant avec une machine à écrire. Elle porte des lunettes et une robe avec un col blanc. Derrière elle, il y a un classeur et des papiers sur le bureau, ainsi que ce qui semble être une carte ou un graphique sur le mur.
Figure 1.5 Katherine Johnson, une informaticienne noire, a recalculé les calculs effectués par les premiers ordinateurs numériques pour la planification des vols spatiaux à la NASA. Ses contributions ont été dépeintes dans le livre et le film Les Figures de l'ombre. (crédit : « Katherine Johnson at NASA, in 1966 » par NASA/Wikimedia Commons, Domaine public)

Dans un chapitre de Black Software, Charlton McIlwain partage des histoires de « L'Avant-garde » d'hommes et de femmes noirs qui ont marqué l'informatique (computer science) à ses débuts, des années 1950 aux années 1990, à travers l'essor de l'informatique personnelle et d'Internet, mais dont les histoires ont été largement effacées par les récits dominants de la Silicon Valley. Leurs réalisations incluent la direction de magasins d'informatique et le développement des premières plateformes de médias sociaux Internet, des sites d'actualités et de blogs. Par exemple, Roy L. Clay Sr., membre du Silicon Valley Engineering Hall of Fame, a aidé Hewlett-Packard à développer son premier laboratoire informatique et à créer les premiers ordinateurs de l'entreprise. Plus tard, Clay a fourni des informations aux capital-risqueurs qui les ont motivés à investir dans des start-ups telles qu'Intel et Compaq.5 Dans un autre exemple, Mark Dean était un ingénieur pour IBM dont le travail a été essentiel pour aider IBM à développer le bus Industry Standard Architecture, qui a créé une méthode de connexion du processeur (processor) d'un ordinateur avec d'autres composants et leur a permis de communiquer. Cela a conduit à la création des PC, Dean étant propriétaire de trois des neuf brevets utilisés pour créer le PC original.6

Pourtant, leurs efforts ont souvent été entravés par la manière dont l'informatique n'a pas réussi à centrer, ni même à accommoder, les personnes noires. Historiquement, les Amérindiens et les Hispaniques n'avaient pas le même accès que même les Afro-Américains aux ordinateurs et à l'enseignement supérieur. Kamal Al-Mansour, négociateur de contrats techniques au Jet Propulsion Lab de la NASA, a travaillé sur des projets spatiaux pendant la présidence de Ronald Reagan. Il raconte :

« C'était conflictuel... faire un travail... soutenir des missiles dans le ciel, essayant de trouver ma propre identité et ma culture... JPL était quelque peu hostile... et je rentrais chez moi chaque jour [en pensant] Qu'ai-je accompli qui a bénéficié à des gens comme moi ? Et la réponse chaque jour était 'Rien'. »7

Al-Mansour allait ensuite créer une nouvelle entreprise, AfroLink, trouvant un sens à la création de logiciels (software) centrés sur l'histoire et la culture noires et africaines. Cette histoire des technologies informatiques au service des communautés afro-américaines se reflète dans la création de l'Afronet (un ancien média social pour connecter les technologues noirs) et du NetNoir (un site web qui cherchait à populariser la culture noire). Ces exemples servent d'indicateurs précoces des façons dont les technologues noirs ont inventé des technologies informatiques pour les personnes noires aux États-Unis. Pourtant, Black Software soulève également des implications politiques difficiles de l'exclusion historique des technologues noirs. La culture noire sur Internet a grandement influencé les médias et la culture grand public aux États-Unis, mais ces produits culturels noirs dirigent finalement l'attention et l'argent vers des plateformes dominantes telles que X et TikTok plutôt que vers celles qui bénéficient directement aux personnes noires, aux créateurs de contenu et aux entrepreneurs. Les technologies informatiques risquent de reproduire les inégalités sociales par la manière dont elles distribuent les avantages et les inconvénients.

La fracture numérique est devenue un problème important, car de nombreux aspects de la société – y compris l'éducation, l'emploi et la mobilité sociale – sont liés à l'informatique, à l'informatique et à la connectivité. La fracture fait référence à l'accès et à la distribution inégaux et inéquitables de la technologie entre les populations de différentes géographies, statuts socio-économiques, races, ethnies et autres facteurs de différenciation. Bien que l'accès technologique s'améliore généralement avec le temps, les communautés aux États-Unis et dans le monde ont des niveaux d'accès différents à l'Internet haut débit, aux antennes cellulaires et aux ordinateurs scolaires fonctionnels. Une électricité peu fiable peut également jouer un rôle important dans l'utilisation des ordinateurs et d'Internet. Et au-delà des différences systémiques basées sur les infrastructures, l'accès individuel aux produits ou services peut créer une fracture au sein des communautés. Par exemple, si des outils puissants de recherche et d'optimisation basés sur l'IA ne sont accessibles que par des abonnements coûteux, certaines populations peuvent être limitées dans les avantages qu'elles peuvent tirer de ces outils.

Enjeux mondiaux de la technologie

Les visas H-1B répondent aux pénuries de main-d'œuvre

Selon le Bureau américain des statistiques du travail, d'ici 2033, le nombre d'emplois disponibles pour les chercheurs en informatique et en information devrait augmenter de 26 %. Il s'agit d'une croissance de l'emploi beaucoup plus rapide que la moyenne attendue pour toutes les professions. Le BLS prévoit que cela entraînera environ 3 400 ouvertures de postes par an dans la technologie, y compris l'informatique.8

Pour pourvoir certains de ces postes, les employeurs américains continueront probablement de compter sur les visas H-1B. Ce visa permet aux employeurs de recruter des professionnels bien formés d'autres pays. Ces professionnels résident temporairement aux États-Unis et travaillent dans des professions spécialisées, comme l'informatique, qui exigent une formation minimale de niveau licence ou son équivalent.9 Pour participer au programme de visa, les employeurs doivent s'inscrire et déposer une pétition pour embaucher des titulaires de visa H-1B. Chaque année, les services de citoyenneté et d'immigration des États-Unis acceptent les demandes de personnes d'autres pays qui concourent pour un pool de 65 000 numéros de visa, ainsi qu'un pool supplémentaire de 20 000 numéros de visa d'exemption de master attribués cette année-là et valables pour une période de trois ans. À la fin de trois ans, les employeurs peuvent demander la prolongation du visa de chaque travailleur pour une période de trois années supplémentaires.10 Ce programme aide les employeurs américains à pourvoir des postes vacants dans de nombreux domaines, y compris l'informatique, tout en offrant des opportunités d'emploi aux travailleurs hautement qualifiés du monde entier.

Les ordinateurs et le développement mondial

La technologie informatique, comme toute autre technologie de pointe, modifie l'équilibre des pouvoirs dans la société. Mais l'accès aux nouvelles technologies est rarement égal. L'informatique a amélioré la qualité de vie de nombreuses personnes qui ont accès à la technologie informatique et aux moyens de la contrôler pour servir leurs intérêts. Mais pour tous les autres dans le monde, en particulier les personnes vivant dans les pays du Sud, les technologies informatiques nécessitent des conceptions sensibles au contexte pour répondre à leurs besoins. Dans les années 1990, par exemple, l'accès des consommateurs à Internet était principalement basé sur des systèmes « dial-up » qui fonctionnaient sur des systèmes de réseau (network) téléphonique public. Pourtant, de nombreuses régions du monde, même aujourd'hui, manquent de couverture téléphonique, sans parler de connectivité Internet. La recherche en informatique pour le développement mondial vise à améliorer la qualité de vie des personnes du monde entier en concevant des solutions informatiques pour les populations à faible revenu et mal desservies à travers le monde – pas seulement celles vivant dans les pays les plus riches.

Les technologies informatiques pour le développement mondial exigent une conception tenant compte de contraintes de ressources uniques telles que le manque d'énergie fiable, une connectivité Internet limitée ou inexistante, et un faible niveau d'alphabétisation. Les informaticiens emploient une variété de méthodes tirées des sciences sociales pour produire des solutions efficaces. Cependant, concevoir pour des communautés diverses est difficile, en particulier lorsque les concepteurs ont peu d'expérience directe avec les personnes qu'ils souhaitent servir. Dans The Charisma Machine, Morgan Ames critique le projet One Laptop Per Child, une initiative à but non lucratif annoncée en 2005 par le MIT Media Lab. Le projet visait à apporter la technologie informatique sous la forme de petits ordinateurs portables robustes et bon marché, alimentés par une manivelle, aux enfants du Sud. Basée sur son travail de terrain au Paraguay, Ames soutient que le projet n'a pas atteint ses objectifs pour diverses raisons, telles que des problèmes d'infrastructure électrique, des problèmes de fiabilité du matériel (hardware), des frustrations liées au logiciel (software) et un manque de matériel pédagogique. Ames soutient que « les technologies charismatiques sont trompeuses : elles font apparaître l'adoption technologique et le changement social comme simples au lieu d'un processus difficile semé de choix et de politique. » Lorsque les ordinateurs fonctionnaient, la vision d'OLPC pour l'éducation ne s'est jamais vraiment concrétisée car les enfants utilisaient souvent les ordinateurs pour leur propre divertissement plutôt que pour les expériences d'apprentissage que les concepteurs avaient prévues. Bien que le récit d'Ames sur le projet OLPC (Figure 1.6) ait lui-même été critiqué pour présenter un récit trop simplifié, il représente néanmoins un argument précieux pour les risques et les pièges potentiels associés à la conception de technologies pour le développement mondial : la technologie n'agit pas seule mais est intégrée dans un contexte social et une histoire complexes.

Cette image montre un cadre rural avec une rangée de maisons en terre en arrière-plan. Deux enfants sont assis par terre devant la maison, l'un tenant un ordinateur portable, et un buffle broute à proximité sur la gauche. Divers articles ménagers, tels que des pots et des paniers, sont éparpillés autour de la zone extérieure. Une femme est assise plus loin près de la porte de l'une des maisons.
Figure 1.6 En 2005, le Media Lab du MIT a lancé l'initiative OLPC pour apporter des ordinateurs portables aux enfants du Sud. Un résultat inattendu qu'ils ont découvert est que la conception de technologies pour les communautés mondiales n'est pas aussi simple que les concepteurs peuvent le croire initialement. (crédit : "One Laptop per Child" par OLE Nepal Cover/Flickr, CC BY 2.0)

Réfléchissez-y

Commerce sur Internet

De nombreux produits et entreprises offrent des services ou des produits sur Internet. Bien que les achats en ligne offrent des opportunités de vente supplémentaires aux entreprises, tout en offrant aux consommateurs une option d'achat pratique, ils ne sont pas sans risques. Par exemple, les entreprises en ligne et leurs acheteurs peuvent être victimes de violations de données et de vol d'identité. D'autres risques incluent les faux avis qui motivent les consommateurs à faire un achat, le phishing qui mène au piratage, et les fausses boutiques en ligne qui prennent l'argent des consommateurs sans livrer de produit. Que pouvons-nous faire pour atténuer les risques et les dangers des achats en ligne ?

Aborder ces risques n'est pas aussi simple que de pratiquer l'humilité et d'inclure les communautés dans le processus de conception. De nombreux défis en informatique (computing) pour le développement mondial sont sociopolitiques ou technopolitiques plutôt que purement techniques. Par exemple, la réalisation d'un test pilote pour évaluer l'efficacité d'une conception peut apparaître comme du favoritisme envers les participants du groupe pilote. Ces problèmes et tensions sociales sont particulièrement exacerbés dans les pays du Sud, où les héritages de l'impérialisme et des hiérarchies raciales continuent de produire ou d'étendre les inégalités et les injustices sociales.

Les identités des personnes qui créent des technologies informatiques pour le développement mondial sont finalement tout aussi importantes que les technologies qu'elles créent. Dans Design Justice, Sasha Costanza-Chock réitère l'appel aux informaticiens à « construire avec, et non pour » les communautés qu'ils souhaitent améliorer. De cette façon, Design Justice cherche à aborder les tensions de justice sociale soulevées en posant la question : « À qui la technologie profite-t-elle finalement ? » en centrant l'ingéniosité de l'« utilisateur » marginalisé plutôt que du « concepteur » dominant.

Dans certains cas, les pays sous-développés peuvent rapidement rattraper leur retard sans dépenser l'argent qui a été investi pour développer les technologies originales. Par exemple, nous pouvons mettre en place des réseaux ad hoc rapidement aujourd'hui et à une fraction du coût dans les pays du Moyen-Orient et d'Afrique en utilisant une technologie qui a été développée (à un coût élevé) aux États-Unis et en Europe au cours des dernières décennies. Cela signifie que parfois, les progrès dans une partie du monde peuvent être partagés avec une autre partie du monde, permettant à cette zone de progresser et d'avancer technologiquement rapidement.