How many of you have used an electronic spreadsheet, like Microsoft Excel? Very good. Now, how many of you have run a business with a spreadsheet by hand, like my dad did for his small printing business in Philadelphia? A lot less.
Combien d'entre vous utilisent une feuille de calcul électronique, comme Microsoft Excel ? Très bien. Combien d'entre vous ont géré leur affaire avec une telle feuille, mais manuscrite, comme mon père l'a fait dans son imprimerie de Philadelphie ? Vous êtes beaucoup moins.
Well, that's the way it was done for hundreds of years. In early 1978, I started working on an idea that eventually became VisiCalc. And the next year it shipped running on something new called an Apple II personal computer. You could tell that things had really changed when, six years later, the Wall Street Journal ran an editorial that assumed you knew what VisiCalc was and maybe even were using it.
C'est pourtant ainsi que l'on a fait pendant des centaines d'années. Début 1978, j'ai commencé à développer une idée qui a abouti à VisiCalc. Et l'année suivante, il tournait sur une nouvelle machine, appelée Apple II. 6 ans plus tard, on savait que les choses avaient vraiment évolué quand un éditorial du Wall Street Journal assumait que tout le monde connaissait VisiCalc, voire l'utilisait.
Steve Jobs back in 1990 said that "spreadsheets propelled the industry forward." "VisiCalc propelled the success of Apple more than any other single event." On a more personal note, Steve said, "If VisiCalc had been written for some other computer, you'd be interviewing somebody else right now."
En 1990, Steve Jobs a dit ceci : « Les spreadsheets ont propulsé l'industrie dans le futur. VisiCalc a contribué au succès d'Apple bien davantage que toute autre chose. » Personnellement parlant, Steve m'a dit : « Si VisiCalc avait été écrit pour un autre ordinateur, on interviewerait quelqu'un d'autre. »
So, VisiCalc was instrumental in getting personal computers on business desks. How did it come about? What was it? What did I go through to make it be what it was? Well, I first learned to program back in 1966, when I was 15 -- just a couple months after this photo was taken. Few high schoolers had access to computers in those days. But through luck and an awful lot of perseverance, I was able to get computer time around the city.
VisiCalc a donc largement contribué à amener les ordinateurs dans les bureaux. Comment est-ce arrivé ? Qu'est ce qui a fait que j'ai créé ces feuilles de calcul telles qu'elles sont ? J'ai commencé à programmer en 1966, quand j'avais 15 ans, peu après cette photo. Peu d'étudiants avaient accès à des ordinateurs à l'époque. Mais grâce à la chance et beaucoup de persévérance, je parvenais à mettre les mains sur des machines, en ville.
After sleeping in the mud at Woodstock, I went off to MIT to go to college, where to make money, I worked on the Multics Project. Multics was a trailblazing interactive time-sharing system. Have you heard of the Linux and Unix operating systems? They came from Multics. I worked on the Multics versions of what are known as interpreted computer languages, that are used by people in noncomputer fields to do their calculations while seated at a computer terminal.
Après des nuits dans la boue de Woodstock, je suis allé au MIT et j'ai travaillé sur Multics pour gagner ma vie. Multics était un système de temps partagé interactif. Si vous connaissez les systèmes d'exploitation Linux et Unix, ils proviennent de Multics. J'ai travaillé sur des versions Multics de ce que nous connaissons comme le langage informatique interprété, utilisé par des non informaticiens, pour réaliser leurs calculs assis devant un terminal informatique.
After I graduated from MIT, I went to work for Digital Equipment Corporation. At DEC, I worked on software for the new area of computerized typesetting. I helped newspapers replace their reporters' typewriters with computer terminals. I'd write software and then I'd go out in the field to places like the Kansas City Star, where I would train users and get feedback. This was real-world experience that is quite different than what I saw in the lab at MIT.
Mon diplôme du MIT en main, je suis parti travailler pour Digital Equipment Corporation. Chez DEC, j'ai travaillé sur un logiciel pour la nouvelle ère de composition informatique. J'ai aidé les journaux à remplacer les machines à écrire des journalistes par des ordinateurs. J'écrivais des logiciels et ensuite, j'allais sur le terrain, dans des endroits comme Kansas City Star, pour y former les utilisateurs et avoir des retours. C'était la vie réelle, très différente de mon expérience au labo du MIT.
After that, I was project leader of the software for DEC's first word processor, again a new field. Like with typesetting, the important thing was crafting a user interface that was both natural and efficient for noncomputer people to use. After I was at DEC, I went to work for a small company that made microprocessor-based electronic cash registers for the fast-food industry. But I had always wanted to start a company with my friend Bob Frankston that I met on the Multics project at MIT.
Ensuite, je suis devenu chef du projet de ce qui fut le premier traitement de texte de DEC. Comme pour la composition, l'important était de créer une interface naturelle et efficace pour des utilisateurs non informaticiens. J'ai quitté DEC pour travailler dans une petite entreprise qui fabriquait des caisses enregistreuses électroniques pour les fast-food. J'avais cependant toujours voulu créer une boîte avec mon ami Bod Frankston, que je connaissais depuis Multics du MIT.
So I decided to go back to school to learn as much as I could about business. And in the fall of 1977, I entered the MBA program at Harvard Business School. I was one of the few percentage of students who had a background in computer programming. There's a picture of me from the yearbook sitting in the front row.
Alors, je me suis décidé à retourner sur les bancs d'école de gestion. Fin 1977, j'ai commencé un programme MBA à Harvard Business School. Je faisais partie du petit pourcentage d'étudiants avec une formation en programmation informatique. Voici une photo de moi dans l'annuaire, assis au premier rang.
(Laughter)
(Rires)
Now, at Harvard, we learned by the case method. We'd do about three cases a day. Cases consist of up to a few dozen pages describing particular business situations. They often have exhibits, and exhibits often have words and numbers laid out in ways that make sense for the particular situation. They're usually all somewhat different. Here's my homework. Again, numbers, words, laid out in ways that made sense. Lots of calculations -- we got really close to our calculators. In fact, here's my calculator. For Halloween, I went dressed up as a calculator.
A Harvard, l'apprentissage est fondé sur des cas. On en faisait trois par jour. Il s'agit d'une douzaine de pages sur une situation précise d'affaires. Il y a des tableaux, avec des mots et des nombres disposés d'une certaine manière pour expliciter la situation. Ils sont tous légèrement différents. Voici mon devoir. Des chiffres, des mots, mis en page pour créer du sens. Des tonnes de calculs, nos calculettes n'étaient jamais loin. Voici ma calculette, d'ailleurs. Pour Halloween, je me suis déguisé en calculette.
(Laughter)
(Rires)
At the beginning of each class, the professor would call on somebody to present the case. What they would do is they would explain what was going on and then dictate information that the professor would transcribe onto the many motorized blackboards in the front of the class, and then we'd have a discussion. One of the really frustrating things is when you've done all your homework, you come in the next day only to find out that you made an error and all of the other numbers you did were wrong. And you couldn't participate as well. And we were marked by class participation.
Au début de chaque classe, le professeur appelait quelqu'un pour présenter le cas. Cette personne expliquait ce qu'il se passait et dictait des informations que le professeur transcrivait sur les nombreux tableaux noirs de la classe. Ensuite nous en discutions. Une des choses vraiment frustrantes quand on faisait ces devoirs, était d'arriver le matin en classe pour découvrir une erreur de calcul, qui faussait tous les autres chiffres. Impossible de participer au débat. Alors que nous étions notés sur notre participation.
So, sitting there with 87 other people in the class, I got to daydream a lot. Most programmers in those days worked on mainframes, building things like inventory systems, payroll systems and bill-paying systems. But I had worked on interactive word processing and on-demand personal computation. Instead of thinking about paper printouts and punch cards, I imagined a magic blackboard that if you erased one number and wrote a new thing in, all of the other numbers would automatically change, like word processing with numbers. I imagined that my calculator had mouse hardware on the bottom of it and a head-up display, like in a fighter plane. And I could type some numbers in, and circle it, and press the sum button. And right in the middle of a negotiation I'd be able to get the answer. Now I just had to take my fantasy and turn it into reality.
Bref, parmi mes 87 collègues de classe, j'ai souvent eu le temps de rêver. A l'époque la plupart des programmeurs travaillaient sur un ordinateur central, construisant des systèmes d'inventaire, de fiches de paie ou de facturation. J'avais bossé sur des traitements de texte interactifs et de la programmation personnelle. Au lieu de penser à tirer des impressions ou à des cartes perforées, j'imaginais un tableau magique qui, quand on effaçait un chiffre et le remplaçait par un autre, ferait percoler ce changement partout automatiquement, un traitement de texte des chiffres. J'imaginais que ma calculette était équipée d'une souris et d'un rétro-projecteur, comme un avion de combat. Je pourrais alors encoder des chiffres, les entourer, pousser sur le bouton somme. Je pourrais, au milieu d'une négociation, obtenir la réponse recherchée. Il ne me restait plus qu'à concrétiser mon rêve.
My father taught me about prototyping. He showed me mock-ups that he'd make to figure out the placement on the page for the things for brochures that he was printing. And he'd use it to get feedback from customers and OKs before he sent the job off to the presses. The act of making a simple, working version of what you're trying to build forces you to uncover key problems. And it lets you find solutions to those problems much less expensively.
Mon père m'avait appris à faire du prototypage. Il m'avait montré des maquettes qu'il créait pour visualiser la mise en page des éléments de brochures qu'il devait imprimer. Il utilisait les maquettes pour les montrer à ses clients et obtenir leurs retours avant d'envoyer le bon à tirer. En créant des versions simplifiées de ce qu'on souhaite créer, on découvre obligatoirement des problèmes cruciaux. Ce qui permet de leur trouver des solutions moins coûteuses.
So I decided to build a prototype. I went to a video terminal connected to Harvard's time-sharing system and got to work. One of the first problems that I ran into was: How do you represent values in formulas? Let me show you what I mean. I thought that you would point somewhere, type in some words, then type in some somewhere else, put in some numbers and some more numbers, point where you want the answer. And then point to the first, press minus, point to the second, and get the result. The problem was: What should I put in the formula? It had to be something the computer knew what to put in. And if you looked at the formula, you needed to know where on the screen it referred to. The first thing I thought was the programmer way of doing it. The first time you pointed to somewhere, the computer would ask you to type in a unique name. It became pretty clear pretty fast that that was going to be too tedious. The computer had to automatically make up the name and put it inside. So I thought, why not make it be the order in which you create them? I tried that. Value 1, value 2. Pretty quickly I saw that if you had more than a few values you'd never remember on the screen where things were.
J'ai donc décidé de créer un prototype. Je me suis assis devant un terminal du système de temps partagé de Harvard et je me suis mis au travail. Un de mes premiers problèmes fut celui-ci : Comment représenter des valeurs dans les formules ? Je vais vous expliquer. Je pensais ainsi : je pointe un endroit, j'y écris quelques mots, et j'écris autre chose ailleurs, j'ajoute un nombre et un nombre ailleurs, je pointe un endroit pour la réponse, je pointe sur le premier, ensuite sur le moins, je pointe le second et j'obtiens le résultat. Voici mon problème : Que faut-il écrire dans la formule ? Ça devait être compréhensible par l'ordinateur. En lisant la formule, il fallait savoir quels étaient ses référents sur l'écran. Ma première idée fut d'organiser ça comme un programmeur. Au moment de pointer un endroit, l'ordinateur nous demande de taper un nom unique. C'est clair que ce système allait vite devenir trop fastidieux. Il fallait que l'ordinateur crée un nom automatiquement et l'assigne. Ensuite, je me suis proposé de les nommer selon leur ordre d'écriture. J'ai essayé ça. Valeur 1, valeur 2. Je me suis aperçu qu'avec quelques valeurs supplémentaires, j'allais oublier quels étaient les référents.
Then I said, why not instead of allowing you to put values anywhere, I'll restrict you to a grid? Then when you pointed to a cell, the computer could put the row and column in as a name. And, if I did it like a map and put ABC across the top and numbers along the side, if you saw B7 in a formula, you'd know exactly where it was on the screen. And if you had to type the formula in yourself, you'd know what to do. Restricting you to a grid helped solve my problem. It also opened up new capabilities, like the ability to have ranges of cells. But it wasn't too restrictive -- you could still put any value, any formula, in any cell. And that's the way we do it to this day, almost 40 years later.
Alors j'ai pensé que, au lieu de pouvoir positionner ses valeurs n'importe où, je pourrais délimiter un maillage. Dans ce cas, on pointe une cellule et l'ordinateur lui assigne comme nom sa ligne et sa colonne. Et si je fais apparaître l'alphabet en abscisse et des chiffres en ordonnée, quand vous visualisez B7 dans une formule, vous savez précisément sa localisation sur l'écran. Si vous devez taper une formule, vous savez comment faire. Délimiter un maillage m'a aidé à résoudre mon problème. Ça ouvrait aussi de nouvelles capacités, comme la sélection de plusieurs cellules. Mais ce n'est pas trop contraignant car on peut taper n'importe quelle valeur ou formule, dans toutes les cellules. On fait toujours ainsi aujourd'hui, 40 ans plus tard.
My friend Bob and I decided that we were going to build this product together. I did more work figuring out exactly how the program was supposed to behave. I wrote a reference card to act as documentation. It also helped me ensure that the user interface I was defining could be explained concisely and clearly to regular people. Bob worked in the attic of the apartment he rented in Arlington, Massachusetts. This is the inside of the attic. Bob bought time on the MIT Multics System to write computer code on a terminal like this. And then he would download test versions to a borrowed Apple II over a phone line using an acoustic coupler, and then we would test.
Avec mon ami Bob, nous avons décidé de construire ce produit ensemble. J'ai aussi travaillé pour comprendre comment le programme devait se comporter. J'ai développé une carte de référence à titre de documentation. Ça m'a permis de vérifier que l'interface que je développais pouvait être expliquée de manière concise et claire à des gens normaux. Bob a travaillé dans le grenier de son appartement, à Arlington. En voici une photo. Bob a acquis du temps sur le Multics du MIT, pour écrire les codes, sur un terminal comme celui-ci. Il téléchargeait des versions tests sur un Apple II emprunté, via une ligne téléphonique, avec un coupleur acoustique, et ensuite il testait.
For one of these tests I prepared for this case about the Pepsi Challenge. Print wasn't working yet, so I had to copy everything down. Save wasn't working, so every time it crashed, I had to type in all of the formulas again, over and over again. The next day in class, I raised my hand; I got called on, and I presented the case. I did five-year projections. I did all sorts of different scenarios. I aced the case. VisiCalc was already useful.
Pour un de mes tests, j'ai utilisé le cas du Pepsi Challenge. On ne pouvait pas encore imprimer, je prenais donc note de tout. On ne pouvait pas sauvegarder. A chaque crash, je devais retaper toutes les formules. Le lendemain, j'ai levé la main au cours. On m'a désigné et j'ai présenté le cas. J'avais préparé une projection sur 5 ans avec pleins de scénarios. Je les ai complètement bluffés. VisiCalc était déjà utile.
The professor said, "How did you do it?" Well, I didn't want to tell him about our secret program.
Le professeur m'a demandé comment j'avais fait. Je ne voulais pas lui dévoiler notre programme secret.
(Laughter)
(Rires)
So I said, "I took this and added this and multiplied by this and subtracted that."
Je lui ai dit que j'avais additionné ça à ça, et multiplié par ça et retiré ça.
He said, "Well, why didn't you use a ratio?"
Il a demandé pourquoi je n'avais pas utilisé les ratios.
I said, "Hah! A ratio -- that wouldn't have been as exact!" What I didn't say was, "Divide isn't working yet."
J'ai dit : « Ha ! Ça n'aurait pas été aussi exact. » Je n'ai pas dit qu'on ne pouvait pas encore diviser.
(Laughter)
(Rires)
Eventually, though, we did finish enough of VisiCalc to be able to show it to the public. My dad printed up a sample reference card that we could use as marketing material.
Finalement, nous avons peaufiné VisiCalc suffisamment pour le présenter au public. Mon père a imprimé un modèle de carte de référence à utiliser pour notre marketing.
In June of 1979, our publisher announced VisiCalc to the world, in a small booth at the giant National Computer Conference in New York City. The New York Times had a humorous article about the conference. "The machines perform what seem religious rites ... Even as the believers gather, the painters in the Coliseum sign room are adding to the pantheon, carefully lettering 'VISICALC' in giant black on yellow. All hail VISICALC!" (Gasp) New York Times: "All hail VISICALC."
En juin 1979, notre éditeur a annoncé VisiCalc publiquement, dans un petit stand à la National Computer Conference à New York. Le New York Times a écrit un article très drôle sur la conférence. « Les machines réalisent une espèce de rite religieux... Les croyants se rassemblent, les peintres dans la salle du Colisée ajoutent un nom au panthéon, en lettre jaunes et noires : « VISICALC ». Hip Hip Hip Hourrah à VISICALC ! » (Soupir) Le New York Times : « Hip Hip Hip Hourrah à VISICALC ! »
(Laughter)
(Rires)
That was the last mention of the electronic spreadsheet in the popular business press for about two years. Most people didn't get it yet. But some did.
Ce fut la dernière mention des feuilles de calcul électroniques dans la presse d'affaires populaire pendant 2 ans. Presque personne n'avait compris. Mais pas tous.
In October of 1979, we shipped VisiCalc. It came in packaging that looked like this. And it looked like this running on the Apple II. And the rest, as they say, is history.
En octobre 1979, on a livré VisiCalc. Il se vendait dans un emballage comme celui-ci. Et sur un Apple II, ça donnait ceci. La suite, comme on dit, fait partie de l'histoire.
Now, there's an awful lot more to this story, but that'll have to wait for another day. One thing, though, Harvard remembers. Here's that classroom. They put up a plaque to commemorate what happened there.
Il y a tant d'autres choses à narrer, mais ce sera pour un autre jour. Une seule chose à ajouter : Harvard se souvient. Voici ma classe. Ils ont posé une plaque commémorative.
(Applause)
(Applaudissements)
But it also serves as a reminder that you, too, should take your unique backgrounds, skills and needs and build prototypes to discover and work out the key problems, and through that, change the world.
Elle est aussi un rappel pour tous, que nous devons utiliser nos cursus nos compétences et nos envies uniques pour construire des prototypes pour découvrir et résoudre les problèmes et, grâce à cela, changer le monde.
Thank you.
Merci.
(Applause)
(Applaudissements)