021-22889554
021-26703715
مشاوره آموزشی رایگان

021-22889554  |  021-26703715 مشاوره آموزشی رایگان

مخترع صفحات گسترده الکترونیک را بشناسید

Dan Bricklin

Meet the inventor of the electronic spreadsheet

Dan Bricklin changed the world forever when he codeveloped VisiCalc, the first electronic spreadsheet and grandfather of programs you probably use every day like Microsoft Excel and Google Sheets. Join the software engineer and computing legend as he explores the tangled web of first jobs, daydreams and homework problems that led to his transformational invention.


تگ های مرتبط :

Business, Code, Collaboration
چند نفر از شما از صفحات گسترده الکترونیک استفاده کرده‌اید، مثل اِکسل از شرکت مایکروسافت؟ بسیار عالی. چند‌تای شما به‌شکل دستی کار تجاری‌تون را اداره کرده‌اید، درست مثل پدر من که چاپخانه کوچکش را در فیلادلفیا اداره می‌کرد؟ خیلی کمتر. خوب، کار‌ها برای صد‌ها سال اینطور انجام می شد. اوائل سال ۱۹۷۸، شروع به کار روی ایده‌ای کردم که نهایتا تبدیل به «ویزی‌کَلک» شد. و سال بعد روی کامپیوتر جدید شخصی اپل II تحویل شد. این درست است که، شش سال بعد واقعا اوضاع تغییر کرد، وقتی که وال‌استریت‌ژورنال، سرمقاله‌ای نوشت
که در آن فرض کرد شما ویزی‌کَلک را می‌شناسید و شاید ازش استفاده می‌کنید. در سال ۱۹۹۰ استیو جابز گفت که «صفحات گسترده باعث حرکت این صنعت به جلو شده». « ویزی کلک بیشتر از هر چیز دیگری باعث موفقیت اپل شده است.» در یک نوشته خصوصی تر، استیو می‌گوید که «اگر ویزی‌کَلک برای رایانه دیگری نوشته می‌شد، الان با شخص دیگری مصاحبه می‌کردید.» پس، ویزی‌کَلک در بکارگیری رایانه‌ها در کار‌های تجاری موثر بود. چطور اتفاق افتاد؟ این چه چیزی بود؟ برایم چه اتفاقی افتاد تا اینگونه بسازمش؟ خوب، من برنامه نویسی را در ۱۹۶۶ وقتی ۱۵ سالم بود یاد گرفتم -- درست چند ماه بعد از اینکه این عکس گرفته شد.
دبیرستانی های کمی امکان دسترسی به رایانه را در آن زمان داشتند. اما بخاطر خوش شانسی و با کلی اصرار، می‌توانستم فرصت کار با رایانه را در گوشه و کنار پیدا کنم. بعد از کلی گِل‌بازی در فستیوال وود‌استاک برای کالج به ام‌آی‌تی رفتم، و در آنجا برای کسب درآمد در پروژه مالتیکس مشغول شدم. مالتیکس در سیستم های اشتراک زمانی پیشرو بود. چیزی از سیستم‌های عامل لینوکس یا یونیکس شنیده‌اید؟ آنها از مالتیکس آمده‌اند. من روی مدل‌هایی از مالتیکس کار کردم که به عنوان زبان‌های مترجم خطی رایانه شناخته می‌شوند، که توسط افرادی که رشته‌شان رایانه نیست استفاده می‌شدند تا محاسباتشان را پشت ترمینال رایانه انجام دهند.
وقتی که از ام‌آی‌تی فارغ‌التحصیل شدم، برای کار به شرکت دیجیتال اکویپمنت رفتم. (DEC) در دِک، روی نرم‌افزار‌های دوران جدید حروفچینی رایانه‌ای کار می‌کردم. به روزنامه‌ها کمک می‌کردم تا ماشین تایپ خبرنگار‌هایشان را با ترمینال‌های رایانه عوض کنند. نرم‌افزار می‌نوشتم و بعد پیش مشتری‌ها رفتم به جاهایی مثل روزنامه کانزاس سیتی استار، و به کاربران آموزش می‌دادم و نظرشان را می‌پرسیدم. واقعا تجربه کردن دنیای واقعی بود کاملا با آنچه در آزمایشگاه‌ های ام‌ آی تی دیده بودم فرق می‌کرد. بعد از آن مدیر پروژه اولین نرم‌افزار واژه پرداز دِک بودم، دوباره موضوعی جدید.
مثل حروفچینی، موضوع مهم ایجاد یک رابط کاربری بود که برای استفاده ناآشنایان با رایانه طبیعی و کارامد باشد. بعد از کار در دِک، برای کار به شرکت کوچکی رفتم که صندوق‌های پول الکترونیکی با ریزپردازنده برای صنایع فست فود می‌ساخت. اما همیشه بدنبال تاسیس یک شرکت با دوستم باب فرانکستون بودم که قبلا با او در پروژه مالتیکس در ام‌آی‌تی آشنا شده بودم. پس تصمیم گرفتم تا به دانشگاه برگردم و تا آنجا که می‌توانم از کسب و کار یاد بگیرم. و در پاییز ۱۹۷۷، وارد دوره‌ی آموزشی ام‌بی‌ای در دانشگاه تجارت هاروارد شدم. من جزو درصد کمی از دانشجو‌ها بودم که سابقه‌ای در برنامه نویسی داشتم. این عکسی از من در کتاب سال است که در ردیف جلو نشسته‌ام.
( خنده حضار ) در هاروارد ما به شکل بررسی موضوعی آموزش می‌دیدیم. هر روز سه مورد را بررسی می‌کردیم. هر مورد از چند ده صفحه تشکیل شده بود که یک وضعیت خاص تجاری را نشان می‌داد. اغلب دارای نمودار‌هایی بودند که از کلمات و اعداد تشکیل شده بود که به شکل قابل فهمی برای آن وضعیت خاص قرار گرفته بودند. معمولا کاملا با هم فرق داشتند. این تکلیف من است. مجددا، اعداد، کلمات، به شکلی قرار گرفته‌اند تا معنی پیدا کنند. کلی محاسبه -- همیشه با ماشین حساب بودیم. در واقع، این ماشین حساب من است. برای جشن هالوین، شکل ماشین‌ حساب شدم. ( خنده حضار )
در شروع هر کلاس، استاد کسی را صدا می‌کرد تا موضوع را شرح دهد. آنها وضعیت را توضیح می‌دادند و اطلاعاتی را ارائه می‌کردند که استاد آن را روی تخته‌های برقی جلو کلاس خلاصه می‌کرد، و بعد ما با هم بحث می‌کردیم. یکی از خسته کننده‌ترین چیز‌ها این بود که وقتی که تمام تکلیف را انجام می‌دادی، و روز بعد می‌آمدی و می‌دیدی که اشتباهی کرده‌ای و همه عدد‌های دیگر هم اشتباه شده‌اند. و دیگر نمی‌توانستی همکاری کنی. و ما از روی همکاری امتیازبندی می‌شدیم. وقتی که آنجا با ۸۷ نفر دیگر می‌نشستم، خیلی از اوقات خیال پردازی می‌کردم. بیشتر برنامه نویس‌ها آن روز ها با رایانه‌های بزرگ کار می‌کردند،
چیز‌هایی مثل سامانه‌های انبار‌داری، حقوق و دستمزد و سیستم‌های صورتحساب می‌ساختند. اما من روی واژه پرداز‌های تعاملی و رایانه‌های شخصی کار کرده بودم. بجای فکر به خروجی چاپگر و کارت‌های پانچ، من تخته سیاهی جادویی را تصور کردم که اگر یک عدد را پاک کنی و چیز جدیدی بنویسی، همه عدد‌های دیگر هم خود بخود تغییر کنند، مثل واژه پردازی با اعداد. تصور کردم که ماشین حسابم دارای یک ماوس است و یک صفحه بالای آن، مثل هواپیما‌های جنگی. و می‌توانم اعدادی را تایپ کنم، و دورش خط بکشم و کلید جمع را بزنم. و درست در وسط بحث جواب را بدهم. حالا فقط باید رویایم را تبدیل به واقعیت می‌کردم.
پدرم نمونه سازی را به من یاد داده بود. او نمونه‌های اولیه‌ای را نشام داد که برای مشخص کردن محل صفحه برای بروشور‌هایی که چاپ می‌کرد می ساخت. و معمولا نظر مشتری‌ها را می‌پرسید و قبل از ارسال برای چاپ تایید آنها را می‌گرفت. مسیری که برای ساختن یک نمونه اجرایی از آنچه که می‌خواهی بسازی طی می‌کنی وادارت می‌کند تا مشکلات اصلی را روشن کنی. و اجازه می‌دهد تا راه حلی کم هزینه‌تر برای این مشکلات پیدا کنی. پس تصمیم گرفتم تا نمونه‌ای بسازم. پشت ترمینال رایانه اشتراک زمانی داشگاه هاروارد رفتم و کار را شروع کردم. یکی از اولین مشکلاتی که با آن مواجه شدم این بود که:
مقادیر را در فرمول‌ها چطور نشان بدهم؟ بگذارید منظورم را نشان دهم. با خودم فکر کردم شما جایی را نشان می‌دهید، کلمه هایی را وارد می‌کنید، بعد در جای دیگری چیزی می‌نویسید، اعدادی می‌گذارید و بعد اعداد بیشتری، و محل جواب را نشان می‌دهید. و بعد اولی را نشان می‌دهید، منها را می‌زنید و دومی را نشان می‌دهید، و نتیجه را می‌بینید، مشکل این بود که: چه چیزی در فرمول بگذارم؟ باید چیزی باشد که رایانه بفهمد جایش چه بگذارد. و اگر تو هم فرمول را ببینی، بفهمی که به کجای صفحه اشاره می‌کند. اولین راهی که فکرکردم روش برنامه نویسی آن بود.
اولین باری که محلی را نشان بدهی، رایانه از تو می خواهد که برایش اسمی مشخص و واحد بگذاری. به سرعت مشخص شد که این کار خیلی خسته کننده است. رایانه باید خودش اسمها را بسازد و و سرجایش بگذارد. با خودم فکر کردم، چرا با همان ترتیبی که خودت درست می‌کنی نباشد؟ بررسی کردم، مقدار ۱، مقدار ۲. سریعا دیدم که اگر بیشتر از چندتا عدد داشته باشی اصلا یادت نمی‌ماند که هرچیزی روی صفحه کجاست. بعد گفتم، چرا بجای اینکه تو عدد‌ها را هرجایی بگذاری، آنها را در یک جدول محدود نکنیم؟ در این صورت وقتی که یک خانه را انتخاب می‌کنی، رایانه سطر و ستون آن را به عنوان اسم انتخاب می‌کند.
وبعد من آن را مثل نقشه درست کردم و ABC را در بالا اعداد را در کنار گذاشتم، اگر در فرمول B7 را ببینی، دقیقا متوجه می‌شوی که کجای صفحه است. و اگر باید یک فرمول را خودت وارد کنی، می‌فهمی که چطور این کار را انجام دهی. محدود کردن شما به یک جدول کمک کرد تا مشکل من حل شود. و همینطور امکانات جدیدی را ایجاد کرد، مثلا توانایی داشتن محدوده‌ای از خانه‌ها. اما خیلی هم محدود کننده نبود -- هنوز می‌توانستی هر مقداری و هر فرمولی را در هر خانه‌ای بگذاری. و این کاری است که تا امروز هم می‌کنیم، تقریبا ۴۰ سال بعد. دوستم باب و من تصمیم گرفتیم تا این محصول را با هم بسازیم. کار من بیشتر فهمیدن این بود که برنامه دقیقا چطور باید عمل کند.
من برگه مشخصاتی را به عنوان جزئیات پروژه نوشتم. همینطور به من کمک کرد تا مطمئن شوم که رابط کاربری که تعریف می‌کنم را می‌شود به سادگی و روشنی برای افراد معمولی توضیح داد. باب در اتاق زیر شیروانی آپارتمانش در آرلینگتون ماساچوست، کار می‌کرد. این داخل اتاق است. باب کار سیستم مالتیکس ام‌آی‌تی را به تعویق انداخته بود تا برنامه رایانه را روی ترمینالی مثل این بنویسد. بعد نسخه‌های آزمایشی را روی یک اپل II قرضی از طریق خط تلفن و رابط صوتی نصب کرد، که بتوانیم ان را آزمایش کنیم. برای یکی از این آزمایش‌ها من مورد درسی چالش پِپسی را انتخاب کردم. چاپ هنوز کار نمی‌کرد، پس باید همه چیز را کپی می‌کردم.
ذخیره هم کار نمی‌کرد، پس هر بار که به هم می‌ریخت، باید همه فرمول‌ها را دوباره وارد می‌کردم، دوباره و دوباره. روز بعد سر کلاس، دستم را بلند کردم؛ و خواسته شدم و مورد را ارائه کردم. پیش بینی پنج ساله را ارائه کردم، و همه حالت‌های مختلف را بررسی کردم. درست به هدف زده بودم. «ویزی‌کلک» واقعا مفید بود. استاد گفت، «چطور این کار را کردی؟» خوب من نمی‌خواستم از برنامه سری برایش توضیح بدهم. ( خنده حضار ) پس گفتم، «من این را گرفتم و این را اضافه کردم و ضربدر این کردم و از این کم کردم.» استاد گفت،« خوب چرا از تقسیم استفاده نکردی؟» گفتم، «آها، تقسیم -- اینجوری دقیق نمی‌شد!»
چیزی که نگفتم این بود که، « تقسیم هنوز کار نمی‌کرد.» ( خنده حضار ) نهایتا، ما آنقدر «ویزی‌کَلک» را تکمیل کردیم تا بتوانیم آن را به عموم نشان دهیم. پدرم یک برگه اطلاعاتی نمونه چاپ کرد که برای بازاریابی از آن استفاده کنیم. در ژوئن ۱۹۷۹، ناشر ما «ویزی کلک» را به دنیا عرضه کرد، در غرفه کوچکی در کنفرانس ملی رایانه در شهر نیویورک. نیویورک تایمز مقاله بامزه‌ای درباره کنفرانس نوشت. « ماشین‌ها چیزی مثل مراسم مذهبی‌شان را اجرا کردند ... و وقتی که مومنین جمع شدند، نقاشان در اتاقی به نام کولیسیوم به عبادتگاه ملحق شدند، و با دقت و با خطی زرد روی زمینه‌ای مشکی نوشتند «ویزی‌کلک».
همه «ویزی کلک» را تشویق کنید! ( صدای تنفس ) نیویورک تایمز: « همه ویزی کلک را تشویق کنید.» ( خنده حضار ) و این آخرین باری بود که از صفحه گسترده الکترونیک در نشریات کاری برای تقریبا دوسال صحبت شد. بیشتر مردم هنوز نفهمیده بودند. اما بعضی فهمیدند. در اکتبر ۱۹۷۹، ما ویزی‌کلک را به بازار عرضه کردیم. در بسته‌هایی شبیه به این. و روی اپل II اینطور دیده می شد. و همانطور که گفته می شود، بقیه‌اش دیگر جزو تاریخ است. این داستان هنوز خیلی ادامه دارد، اما آن را روز دیگری تعریف می‌کنم.
با این حال هاروارد آن را بخاطر دارد. این همان کلاس درس است. آنها یک پلاک برای یادآوری آنچه اینجا اتفاق افتاد نصب کردند. ( تشویق حضار ) اما همچنین به یادمان خواهد آورد که شما هم، باید از زمینه قبلی، مهارت و نیاز خاص خود استفاده کنید و نمونه‌ای بسازید تا مشکلات اصلی را کشف و آنها را حل کنید، و به این شکل دنیا را تغییر دهید. متشکرم. (
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. 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. 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." 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. 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.
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. 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. 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. (Laughter) 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. (Laughter) 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. 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. 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. 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. 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. 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. 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.
The professor said, "How did you do it?" Well, I didn't want to tell him about our secret program. (Laughter) So I said, "I took this and added this and multiplied by this and subtracted that." He said, "Well, why didn't you use a ratio?" I said, "Hah! A ratio -- that wouldn't have been as exact!" What I didn't say was, "Divide isn't working yet." (Laughter) 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.
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." (Laughter) 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. 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. 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. (Applause) 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. Thank you. (Applause)