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.
Wie heeft er ooit een elektronisch spreadsheet gebruikt, zoals Microsoft Excel? Heel goed. En wie heeft een bedrijf gerund met een handgeschreven spreadsheet, zoals mijn vader dat deed voor zijn drukkerijtje in Philadelphia? Veel minder mensen.
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.
Zo ging het honderden jaren lang. Begin 1978 begon ik aan een idee te werken waaruit uiteindelijk VisiCalc voortkwam. In 1979 leverden we het product dat draaide op iets nieuws, de Apple II-computer genaamd. Je wist dat er echt iets veranderd was toen er zes jaar later een artikel in de Wall Street Journal stond dat er vanuit ging dat je wist wat VisiCalc was en er ook mee werkte.
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."
In 1990 zei Steve Jobs dat "spreadsheets de bedrijfstak een enorme impuls hadden gegeven." "VisiCalc heeft meer voor het succes van Apple betekend dan wat dan ook." In vertrouwen vertelde Steve ons: "Als VisiCalc voor een andere computer was geschreven, had je nu iemand anders geïnterviewd."
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 was dus cruciaal om pc's op bureaus van bedrijven te krijgen. Hoe is dat gebeurd? Wat was het? Wat moest ik doen om dat klaar te krijgen? In 1966 begon ik met programmeren, toen ik 15 jaar oud was, slechts een paar maanden na het nemen van deze foto. Weinig middelbare scholieren hadden toen toegang tot computers. Maar met wat geluk en heel veel doorzettingsvermogen kon ik ergens in de stad computertijd krijgen.
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.
Nadat ik in de modder had geslapen op Woodstock, ging ik studeren aan MIT, waar ik bijverdiende door mee te werken aan het Multics project. Multics was een baanbrekend interactief time-sharingsysteem. Kennen jullie de besturings-systemen Linux en Unix? Die kwamen van Multics. Ik heb gewerkt aan de Multics-versies van wat bekend staat als niet-gecompileerde computertalen, gemaakt voor mensen die geen computer-expert zijn om berekeningen te doen, zittend aan een computerterminal.
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.
Nadat ik was afgestudeerd aan MIT vond ik een baan bij Digital Equipment Corporation. Daar werkte ik aan software voor een nieuw gebied: letterzetten met de computer. Ik hielp kranten typemachines van journalisten te vervangen door computerterminals. Ik schreef software en ging dan het veld in, bijvoorbeeld naar Kansas City Star, waar ik gebruikers opleidde en feedback kreeg. Dit was de échte wereld, heel wat anders dan wat ik in het lab bij MIT had gezien.
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.
Daarna werd ik projectleider voor de software van de eerste tekstver-werker van DEC, weer heel iets anders. Net als bij letterzetten was het belangrijkste een gebruikersinterface te bedenken die zowel natuurlijk als efficiënt was bij gebruik door computerleken. Na de tijd bij DEC kwam ik bij een klein bedrijf terecht dat elektronische kassa's met microprocessoren voor de fast-food sector maakte. Maar ik wilde altijd al een bedrijf beginnen met mijn vriend Bob Frankston, die ik kende van het Multics-project bij 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.
Dus besloot ik om weer naar school te gaan om veel over zakendoen te leren. In het najaar van 1977 begon ik aan het MBA-programma aan de Harvard Business School. Ik behoorde tot een minderheid van de studenten met een achtergrond op het gebied van computerprogrammeren. Hier zit ik op de eerste rij op een foto uit het jaarboek.
(Laughter)
(Gelach)
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.
Op Harvard werkten we met de casus-methode. Op één dag werden drie casussen behandeld. Een casus beslaat vele bladzijden waarin een bedrijfssituatie wordt beschreven. Vaak zijn er bijlagen, bestaande uit woorden en cijfers die op een voor die situatie zinvolle manier zijn gerangschikt. Elke keer is het een beetje anders. Dit is mijn huiswerk: ook weer getallen, woorden, zo gerangschikt dat het zinvol is. Heel veel berekeningen -- we werden echt heel intiem met onze rekenmachines. Dit was mijn rekenmachine. Voor Halloween verkleedde ik me zelfs als rekenmachine.
(Laughter)
(Gelach)
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.
Aan het begin van elke les kreeg één van ons opdracht van de professor om 'n casus te brengen. Dan legde je uit wat er aan de hand was en daarna dicteerde je informatie die de professor overnam op één van de vele borden voor de klas. Daarna volgde een discussie. Één van de frustrerende zaken was als je al je huiswerk af had en de volgende dag in de les een foutje ontdekte en al je berekeningen niet bleken te kloppen. En dan kon je ook niet meepraten. Meepraten was de manier om punten te verdienen.
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.
Omdat er nog 87 anderen in mijn klas zaten, kon ik heel veel dagdromen. De meeste programmeurs werkten toen nog op mainframes en bouwden zaken zoals voorraadsystemen, salarissystemen en factuursystemen. Maar ik had al gewerkt aan interactieve tekstverwerking en gebruik van de pc op afroep. In plaats van te denken aan afdrukken op papier en ponskaarten, droomde ik van een magisch bord voor de klas, waarop als je een enkel getal veranderde, alle overige getallen automatisch zouden meeveranderen, net als tekstverwerking met getallen. Ik stelde me voor dat mijn rekenmachine een muis aan de onderkant had en een head-up display, net als bij een gevechtsvliegtuig. En ik kon getallen invoeren, er een aantal selecteren en op SOM drukken. En midden in een onderhandeling zou ik het antwoord vinden. Ik hoefde alleen mijn fantasie te volgen en te verwezenlijken.
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.
Mijn vader had me geleerd om prototypes te bouwen. Hij liet me zien hoe hij knip-en-plakmodellen gebruikte om ergens de plaats op de pagina voor te bepalen voor de brochures die hij drukte. Daarmee vroeg hij om feedback van klanten en kreeg hij een oké voordat iets in druk ging. Het maken van een eenvoudige en werkende versie van wat je probeert te bouwen, dwingt je om de hoofdproblemen bloot te leggen. Daardoor kun je voor veel minder geld oplossingen vinden voor die problemen.
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.
Dus besloot ik om een prototype te bouwen. Met een video-terminal aangesloten op het time-sharing systeem van Harvard ging ik aan het werk. Een van de eerste problemen waar ik tegenaan liep, was: hoe stel je waarden in formules voor? Ik leg even uit wat ik bedoel. Ik dacht dat je ergens naar zou wijzen, wat woorden zou typen, dan ergens anders wat anders, cijfers zou typen, nog wat cijfers, en dan aan zou wijzen waar je de uitkomst wilde. En dan de eerste aanwijzen, op min drukken, naar de tweede wijzen, en de uitkomst zou krijgen. Het probleem was: wat moest ik in de formule zetten? De computer moest weten wat daar komt te staan. En door naar de formule te kijken, moest je weten naar welke plaats op het scherm hij verwijst. Eerst keek ik hier naar op de manier van programmeurs. De eerste keer als je ergens naar wijst, zou de computer je om een unieke naam vragen. Het werd al snel duidelijk dat dat te omslachtig zou worden. De computer moest automatisch een naam verzinnen en die daar plaatsen. Dus dacht ik: waarom is niet de volgorde waarin ze gemaakt worden bepalend? Ik probeerde dat: waarde 1, waarde 2. Vrij snel bleek dat als er meer dan een paar waarden stonden, je niet meer kon onthouden waar alles stond.
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.
Toen bedacht ik: waarom niet, in plaats van overal waarden in te vullen, er een rooster van maken? Als je dan naar een cel wijst, kan de computer de rij en kolom als naam kiezen. En door er net als bij een landkaart A, B, C boven te zetten en cijfers langs de zijkant, als je dan B7 in een formule ziet, weet je precies waar dat op het scherm is. Als je zelf de formule moet typen, weet je precies wat je te doen staat. Met een rooster was mijn probleem zo goed als opgelost. Het opende ook nieuwe mogelijkheden, zoals een celbereik. Maar de beperkingen waren niet groot, je kon nog steeds elke waarde invullen, elke formule, in elke cel. En zo doen we het tot op vandaag, bijna 40 jaar later.
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.
Mijn vriend Bob en ik besloten dat we hier verder aan wilden bouwen. Mijn aandeel was in de eerste plaats bedenken hoe het programma zou werken. Ik schreef een korte handleiding die als documentatie dienst deed. Zo kon ik er ook zeker van zijn dat de gebruikersinterface kort en duidelijk aan gewone mensen kon worden uitgelegd. Bob werkte op de bovenverdieping van zijn huurwoning in Arlington, Massachusetts. Zo zag de bovenverdieping er uit. Bob kocht tijd op het Multics-systeem van MIT om computercode te schrijven op een terminal die er zo uitzag. En dan ging hij testversies downloaden naar een geleende Apple II via een telefoonlijn en een akoestisch modem, waarna we gingen testen.
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.
Voor één van die tests bereidde ik een casus over de Pepsi-challenge voor. Afdrukken werkte nog niet, dus moest ik alles opschrijven. Opslaan werkte niet, dus telkens wanneer het vastliep, moest ik alle formules nog eens en nog eens invoeren. De volgende dag in de klas stak ik mijn hand op en presenteerde ik de casus. Ik gaf prognoses voor 5 jaar en behandelde allerlei scenario's. Het was een superpresentatie. VisiCalc was al heel nuttig.
The professor said, "How did you do it?" Well, I didn't want to tell him about our secret program.
De professor vroeg: "Hoe heb je dat gedaan?" Nu wilde ik niet over ons geheime programma vertellen.
(Laughter)
(Gelach)
So I said, "I took this and added this and multiplied by this and subtracted that."
Ik zei: "Ik nam dit, telde dat erbij, vermenigvuldigde hiermee en trok dat ervan af."
He said, "Well, why didn't you use a ratio?"
Hij vroeg: "Waarom gebruikte je geen deling ?"
I said, "Hah! A ratio -- that wouldn't have been as exact!" What I didn't say was, "Divide isn't working yet."
Ik: "O ja, een deling -- dat was minder nauwkeurig!" Wat ik niet vertelde: "Delen werkt nog niet."
(Laughter)
(Gelach)
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.
Uiteindelijk kregen we genoeg onderdelen van VisiCalc af om het aan het publiek te tonen. Mijn vader drukte een korte handleiding om als marketingmateriaal te gebruiken.
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."
In juni 1979 maakte onze uitgever VisiCalc wereldkundig, op een kleine stand bij de enorme National Computer Conference in New York. De New York Times had een grappig artikel over de conferentie. "De machines voeren iets uit als een religieus ritueel... De gelovigen komen samen en de Coliseumschilders voegen wat toe aan het pantheon. In reusachtige zwarte letters verschijnt ´VISICALC´op de gele achtergrond. Heil VISICALC!" (Snakt naar adem) New York Times: 'Heil VISICALC!'
(Laughter)
(Gelach)
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.
Dat was de laatste vermelding van het elektronisch spreadsheet in de populaire zakelijke pers gedurende ongeveer twee jaar. De meesten begrepen het nog niet. Maar sommigen wel.
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.
In oktober 1979 brachten we VisiCalc op de markt. De verpakking zag er zo uit. En op de Apple II zag het er zo uit. De rest van het verhaal ken je.
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.
Er valt nog veel meer over te zeggen, maar dat bewaar ik voor een andere keer. Maar nog één ding: op Harvard weet men het nog. Dit is die klas. Aan de muur zit een gedenkplaat om te herdenken wat daar gebeurd is.
(Applause)
(Applaus)
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.
Maar het dient ook om eraan te herinneren dat ook jullie je unieke achtergrond, kennis en behoeften moeten gebruiken om prototypes te bouwen om de voornaamste problemen op te lossen, en daarmee de wereld te veranderen.
Thank you.
Dank je wel.
(Applause)
(Applaus)