La naissance du temps partagé
John Kemeny aimait les crevettes, le football, la science-fiction et les mystères d'Agatha Christie, mais il détestait absolument, le traitement par lots.
Kemeny a d'abord rencontré des difficultés avec le traitement par lots lorsqu'il a consulté la RAND Corporation. Mais ce n'étaient pas seulement les messages d'erreur fréquents sur les impressions qui le dérangeaient. Parfois, rien ne s'imprimait du tout ; d'autres fois, des cartes coinçaient la machine, l'arrêtant.
Pire encore, il verrait des mathématiciens perdre leur temps à faire la queue pendant des heures pour n'obtenir que quelques secondes à la machine. Avant son départ, Kemeny a recommandé que le système de traitement par lots soit modifié pour permettre des interruptions, une suggestion qui n'a jamais été retenue car de telles interruptions étaient incompatibles avec le traitement par lots.
À la fin des années 1950, Kemeny a décidé d'acheter un ordinateur pour Dartmouth. Ce ne serait cependant pas la première incursion de Dartmouth dans l'informatique.
En 1940, bien avant que Kemeny et Kurtz n'arrivent à l'université, le mathématicien des Bell Labs George Stibitz - qui avait construit plusieurs années plus tôt le Complex Number Computer, qui effectuait des calculs mathématiques à l'aide de relais - exploitait un ordinateur à relais à partir d'un terminal situé à distance.
Emplacement: Stibitz , avec un contingent de mathématiciens, était au McNutt Hall à Dartmouth pour une réunion de l'American Mathematical Society, tandis que l'ordinateur effectuant le travail était à New York. La machine a mis environ vingt secondes pour rendre compte du résultat d'un problème de multiplication - considéré à l'époque comme une "vitesse fulgurante". C'était la première démonstration publique du fonctionnement à distance d'un ordinateur.
Kemeny et Kurtz ont cherché un ordinateur, se fixant finalement sur une machine de bureau populaire : le LGP-30 (Librascope General Precision) à seize instructions et à tambour, un produit de la société Librascope.
Don Morrison, alors prévôt, contrôlait les cordons de la bourse de Dartmouth. Kemeny est entré dans le bureau de Morrison et lui a dit: "Nous avons besoin de 40 000 $ pour cette bête." (Le LGP-30 a fini par coûter environ 37 000 $.)
Mais il n'y avait pas de budget pour la machine, car l'argent était immobilisé pour la construction du nouveau bâtiment de mathématiques Bradley, nommé en l'honneur d'Albert Bradley, un ancien élève célèbre. Mais le fonds pour le bâtiment comprenait des provisions pour "Mobilier et décorations". Ainsi, le LDP-30 n'était plus un ordinateur, c'était un meuble. Et, grâce à l'échappatoire, l'argent était désormais disponible.
En 1959, Kurtz, Kemeny et leurs épouses ont tous voyagé ensemble dans un break pour récupérer l'ordinateur de la Royal McBee Corporation.
Le bâtiment Bradley était encore à plusieurs années de l'achèvement, ils ont donc stocké le LGP-30 relativement petit dans le sous-sol du College Hall, autrefois occupé par le photographe résident du collège. Cet été là, Kemeny a demandé à des étudiants de premier cycle du programme spécialisé de travailler avec l'ordinateur.
Par exemple, le professeur de physique Robert Hargraves, l'un de ces étudiants avec distinction, a écrit un langage et un compilateur de type FORTRAN appelé DART pour le LGP-30 en quelques semaines seulement. Lorsque l'ordinateur a finalement été transféré dans le nouveau bâtiment Bradley, les étudiants de premier cycle Hargraves, Steve Garland, Jorge Llacer et Anthony Knapp ont mis leurs ressources en commun pour écrire un compilateur ALGOL 60 pour la machine.
ALGOL était une langue bien documentée, et les étudiants de premier cycle avaient une introduction aux fonctionnalités linguistiques sur lesquelles travailler. Les programmes LGP-30 ALGOL ont été écrits sur bande papier, mais le compilateur a été configuré de telle manière que jusqu'à cinq étudiants pouvaient exécuter leurs programmes en seulement un quart d'heure; ils ont appelé le processus SCALP (le processeur ALGOL autonome) : il s'agissait toujours d'un traitement par lots, mais simplifié.
D'autres étudiants utilisaient la machine pour analyser la poésie, rechercher des nombres premiers et (correctement) prédire l'élection primaire présidentielle Kennedy-Nixon dans le New Hampshire, laissant le LGP-30 fonctionner toute la nuit et récupérant les résultats le lendemain matin.
Lors de conférences professionnelles de groupes de partage pour le LGP-30, auxquelles Kurtz et certains étudiants de Dartmouth ont assisté, les utilisateurs plus âgés "expérimentés" du LGP-30 ont été choqués par ce que les étudiants de premier cycle de Dartmouth faisaient avec le petit ordinateur; ces vétérans s'étaient contentés d'utiliser la machine pour une tabulation avancée, pas pour une programmation de haut niveau.
Si le problème du traitement par lots pouvait être résolu, Kemeny et Kurtz avaient, à ce stade, de nombreuses preuves qu'au moins certains étudiants de premier cycle de Dartmouth pouvaient et feraient un usage intéressant des ordinateurs.
Le MIT et les Bell Labs expérimentaient un nouveau concept appelé temps partagé qui permettrait à plusieurs utilisateurs de travailler sur le même ordinateur presque simultanément. Lors d'une visite que Kurtz a eue avec John McCarthy au MIT, McCarthy lui a suggéré: "Vous devriez partager votre temps."
McCarthy savait de quoi il parlait : en 1959, le MIT avait déjà conçu un système dans lequel les terminaux des utilisateurs étaient connectés à un ordinateur (un Digital Equipment Corporation PDP-1), et le système d'exploitation de l'ordinateur parcourait les terminaux, un par un, consacrer un peu de temps à l'exécution des programmes soumis par chaque terminal jusqu'à ce que le travail d'un utilisateur particulier soit terminé. Les petits travaux ne prendraient pas une éternité, mais les gros travaux prendraient plus de temps. Il s'agissait d'une façon révolutionnaire, sans parler d'être beaucoup plus juste, d'exploiter les ressources d'un ordinateur.
Lorsque Kurtz est revenu du MIT, il a fait assoir Kemeny et lui a dit : « Ne pensez-vous pas que le moment approche où chaque étudiant devrait apprendre à programmer un ordinateur ?
Kemeny a répondu: "Bien sûr, Tom, mais il n'est physiquement pas possible d'enseigner à autant d'élèves."
Ensuite, Kurtz a expliqué le concept de temps partagé à Kemeny, notant que l'enseignement de l'informatique pourrait être possible pour des centaines d'étudiants sur le campus, mais sans utiliser leur petit LGP-30. Bien qu'ils aient déjà démontré que plusieurs étudiants pouvaient envoyer des programmes à un rythme assez rapide sur la machine (avec SCALP), le système était toujours limité à un seul étudiant à la fois.
"Dartmouth avait la plus grande bibliothèque à pile ouverte au monde à l'époque dans un collège de ce type et le concept de l'informatique à pile ouverte, c'était mon idée", a expliqué Kurtz des années plus tard, ajoutant : "C'est l'une des rares idées que j'ai avait ce que Kemeny n'avait pas."
Dans les années à venir, donner cette liberté aux étudiants rehausserait grandement la réputation de Dartmouth. Pourtant, Dartmouth aurait d'abord besoin d'un ordinateur plus puissant que le LGP-30 pour satisfaire la vision de Kurtz.
Kemeny avait un rôle clé à jouer pour donner vie au temps partagé : collecter des fonds pour le matériel. Il s'est d'abord adressé au président de Dartmouth, John Sloan Dickey, ainsi qu'au conseil d'administration. Des personnes telles que le doyen Leonard M. Rieser et le doyen de la Thayer School of Engineering, Myron Tribus, ont rapidement été séduits par l'idée du temps partagé.
En fait, Tribus avait déjà été cadre chez GE et avait toujours des liens avec l'entreprise. Il a parlé à Kemeny et Kurtz d'un responsable du site GE Process Computers à Phoenix, en Arizona - où Arnold Spielberg avait travaillé - nommé Clair C. Lasher avec qui ils pourraient peut-être faire affaire.
Suite à cette piste, Kurtz a appelé GE et leur a parlé du concept de temps partagé, demandant sans ambages à l'entreprise : "Seriez-vous intéressé à faire don d'un ordinateur ?"
En réponse, GE a invité une équipe de Dartmouth à Phoenix. Tony Knapp, qui avait aidé à coder ALGOL 60 pour le LGP-30, a rédigé une proposition de partage du temps de quinze pages, remplie de schémas fonctionnels, que GE Brass devait examiner. Knapp, avec Kurtz, a fait le voyage à Phoenix.
Pendant le long trajet en avion, Knapp et Kurtz ont beaucoup parlé, peaufinant leur proposition détaillée. Mais quand ils sont arrivés, comme le rappelle Kurtz, ils ont été "traités comme des clients" - l'équipe de Dartmouth a été invitée à dîner et à un spectacle - GE ne se souciant pas particulièrement de la logistique technique de la proposition.
L'équipe de Dartmouth est retournée au New Hampshire, apparemment les mains vides. Mais quelques personnes chez GE avaient reconnu l'importance de l'idée du temps partagé et avaient réussi à conclure un accord avec Dartmouth.
Comme chez IBM, où des ordinateurs étaient proposés à des entreprises de premier plan ou à des établissements d'enseignement à prix réduit comme stratagème de marketing, GE a réduit le prix de ses ordinateurs de soixante pour cent. (D'autres sociétés, telles qu'IBM et National Cash, avaient également répondu à la proposition de Dartmouth d'acheter des ordinateurs en temps partagé, mais GE a proposé au collège la meilleure offre.)
Maintenant, Kemeny devait trouver comment payer le matériel.
Il a donc rédigé une subvention de la National Science Foundation (NSF) et s'est entretenu avec les administrateurs. La subvention de la NSF était destinée à l'équipement (qui s'élevait à des centaines de milliers de dollars), tandis que les administrateurs proposaient de couvrir le contrat de location-achat.
La NSF, cependant, a d'abord hésité à la proposition. Les examinateurs pensaient que Dartmouth était en sous-effectif et au-dessus de leurs moyens. Comment si peu de membres du corps professoral, associés à une poignée d'étudiants de premier cycle qui programmeraient le système, pourraient-ils construire et entretenir un complexe de partage de temps de pointe ?
Malgré les critiques négatives et la réticence à se séparer de l'argent pour une proposition avec une fondation aussi fragile, le style personnel joyeux et persuasif de Kemeny - en plus, il connaissait pas mal de gens à la NSF - a décroché à Dartmouth une bonne partie de la demande, des fonds suffisants pour acheter le matériel, qui comprenait non seulement le GE-225 mais aussi le GE DATANET-30.
Kemeny avait suscité l'enthousiasme de la NSF pour le temps partagé, tirant parti d'une masse d'étudiants de premier cycle de Dartmouth afin d'apporter une puissance de calcul importante au collège, mettant ainsi les pièces en place pour le lancement du Dartmouth Time-Sharing System (DTSS) en 1964. Au lieu que les étudiants et les professeurs de Dartmouth doivent s'appuyer sur le système informatique d'une autre université (comme celui du MIT) ou sur un traitement par lots interne sur un ordinateur de puissance modeste, comme le LGP-30.
Deux étudiants de premier cycle ont été particulièrement essentiels à la création du DTSS : John McGeachie et Mike Busch.
Bien qu'ils n'aient pas de manuels ou de spécifications techniques imprimées, ils ont compris comment amadouer deux ordinateurs GE différents pour qu'ils communiquent entre eux, ce que les machines n'ont jamais été conçues pour faire.
En fait, McGeachie et Busch ont commencé à écrire le système d'exploitation DTSS bien avant que le matériel n'arrive sur le campus. (Une machine, la GE-225 "esclave", était chargée des calculs, tandis que l'autre machine, la GE DATANET-30 "maître", était chargée de commuter avec les terminaux.
Après que le DTSS ait gagné du terrain, GE a commercialisé les deux ordinateurs comme un seul: le GE-265, qui était livré avec le logiciel de partage de temps Dartmouth déjà installé.)
Dartmouth a également embauché un homme de maintenance du matériel informatique de GE pour entretenir les deux machines à plein temps pendant plusieurs années, en gardant le matériel , qui n'était pas particulièrement fiable, en état de fonctionnement.
Malgré les ratés du système, les étudiants étaient toujours devant les terminaux et toujours occupés, jour et nuit, à picorer les machines, à programmer l'avenir.
Fait intéressant, IBM n'était pas content que Dartmouth se soit associé à GE. Plusieurs représentants d'IBM ont visité Dartmouth à l'insu de Kemeny et Kurtz. Ces représentants de l'entreprise ont marché directement vers le prévôt, arguant que "les gens de Kemeny ne savent pas ce qu'ils font".
Mais le prévôt les a chassés sans ménagement. Big Blue était vraiment un tyran à cette époque, travaillant dur pour s'assurer que leurs machines étaient achetées plutôt que celles de leurs concurrents. "Je pense que Bill Gates a appris la plupart de ses leçons d'IBM", a déclaré Kurtz. (Finalement, IBM a pris pied à Dartmouth, pour finalement être supplanté par Apple et son Macintosh, qui offrait des capacités de mise en réseau supérieures.)
Pourtant, au fil du temps, la relation entre Dartmouth et GE s'est effondrée. Très tôt, GE a commercialisé et vendu des services de partage de temps identiques à ceux de Dartmouth. GE a même embauché des étudiants de premier cycle de Dartmouth pour entretenir leurs systèmes pendant les vacances scolaires.
Un été, cependant, un étudiant de Dartmouth a piraté un terminal à temps partagé soi-disant sécurisé et l'a programmé pour imprimer un message contenant des références obliques à Dartmouth et GE, en plein milieu d'une tournée d'inspection par GE. Le message disait: "Le Jolly Green Giant traverse la Vallée des Géants!"
Plusieurs années plus tard, Dartmouth a aidé General Electric à lancer un nouveau système de temps partagé basé sur le GE-635. Dartmouth a écrit un nouveau compilateur BASIC pour le système, tandis que GE a écrit le système d'exploitation, l'appelant Phase 1.
Mais au début des années 1970, le président de Dartmouth, John Dickey, avait démissionné en raison d'une controverse sur le ROTC sur le campus, les administrateurs ont installé Kemeny comme son remplacement, et Dartmouth et GE se sont séparés, GE devenant le plus grand fournisseur mondial de services de temps partagé.
Une conséquence de la scission était que les systèmes de partage de temps de GE utilisaient une version imparfaite de Dartmouth BASIC (la cinquième implémentation de ce type) qui ne serait jamais mise à jour ou améliorée à Dartmouth mais serait néanmoins copiée et modifiée sans discernement par d'autres. Ce qui a ouvert la voie à de nombreux problèmes à venir.