1 00:00:00,760 --> 00:00:03,735 Хто з вас користувався електронними таблицями, 2 00:00:03,760 --> 00:00:05,240 такими, як Microsoft Excel? 3 00:00:06,240 --> 00:00:07,496 Добре. 4 00:00:07,520 --> 00:00:11,520 Тепер, хто з вас мав справу з таблицями, складеними від руки, 5 00:00:11,520 --> 00:00:15,200 як мій тато робив це для маленького друкарського бізнесу у Філадельфії? 6 00:00:16,160 --> 00:00:17,320 Набагато менше. 7 00:00:17,920 --> 00:00:20,520 Але ж саме так це робилося сотні років. 8 00:00:21,480 --> 00:00:24,496 На початку 1978 я почав працювати над ідеєю, 9 00:00:24,520 --> 00:00:26,920 що з часом втілилася в VisiCalc. 10 00:00:26,960 --> 00:00:29,136 А наступного року вона встановлювалась 11 00:00:29,160 --> 00:00:32,439 на новинці, яку назвали персональним комп'ютером Apple II. 12 00:00:33,240 --> 00:00:36,936 Можна сказати, що зміни справді відбулися, коли шість років потому, 13 00:00:36,960 --> 00:00:39,136 журнал Уолл Стріт надрукував передовицю, 14 00:00:39,160 --> 00:00:41,860 яка припускала, що ви вже знаєте, що таке VisiCalc 15 00:00:41,880 --> 00:00:43,760 і, напевно, вже користувалися нею. 16 00:00:43,840 --> 00:00:46,220 Стів Джобс у 1990 17 00:00:47,160 --> 00:00:50,400 сказав, що "електронні таблиці стимулювали розвиток промисловості". 18 00:00:50,880 --> 00:00:54,800 "VisiCalc сприяла розвитку Apple більше, ніж будь-яка інша поодинока подія". 19 00:00:55,440 --> 00:00:58,230 У особистих записах Стів відмітив: 20 00:00:58,240 --> 00:01:01,080 "Якби VisiCalc був написаний для якогось іншого комп'ютера, 21 00:01:01,100 --> 00:01:03,300 то ви б тепер брали інтерв'ю у когось іншого". 22 00:01:03,360 --> 00:01:09,736 Тож, VisiCalc був важливим засобом у поширенні комп'ютерів для бізнесу. 23 00:01:09,760 --> 00:01:10,920 Як же так сталося? 24 00:01:11,680 --> 00:01:14,600 Що це було? Який шлях я подолав, щоб створити її саме такою? 25 00:01:15,920 --> 00:01:21,256 Ну, вперше я вивчав програмування у 1966, коли мені було 15 - 26 00:01:21,280 --> 00:01:24,380 лише декілька місяців опісля того, як це фото було зроблене. 27 00:01:24,400 --> 00:01:27,360 Небагато школярів мали доступ до комп'ютерів у ці дні. 28 00:01:27,560 --> 00:01:31,056 Але завдяки везінню та завзяттю 29 00:01:31,080 --> 00:01:33,320 я зміг отримати доступ до комп'ютерів у місті. 30 00:01:34,200 --> 00:01:36,520 Після спання в бруді у Вудстоку 31 00:01:36,520 --> 00:01:39,520 я попрямував до Массачусетського технологічного інституту, 32 00:01:39,520 --> 00:01:42,600 де для заробітку я працював на проекті Multics. 33 00:01:43,320 --> 00:01:45,360 Multics був новаторською 34 00:01:45,360 --> 00:01:48,360 інтерактивною системою з розподіленням часу. 35 00:01:48,360 --> 00:01:51,536 Ви чули про операційні системи Лінукс та Юнікс? 36 00:01:51,560 --> 00:01:52,800 Вони походять з Multics. 37 00:01:53,320 --> 00:01:55,616 Я працював над версією Multics, 38 00:01:55,640 --> 00:01:59,296 яка відома як інтерпретована комп'ютерна мова, 39 00:01:59,300 --> 00:02:01,936 що використовувалась людьми у некомп'ютерних галузях, 40 00:02:01,960 --> 00:02:05,440 які виконували розрахунки, сидячи за комп'ютерними терміналами. 41 00:02:05,560 --> 00:02:07,816 Після того, як я закінчив МІТ, 42 00:02:07,840 --> 00:02:10,680 я пішов працювати на Діджитал Еквіпмент Корпорейшн. 43 00:02:11,320 --> 00:02:14,496 У DEC, я працював над програмним забезпеченням 44 00:02:14,520 --> 00:02:17,360 для нової галузі комп'ютерного набору тексту. 45 00:02:17,800 --> 00:02:22,136 Я допомагав газетярам замінити репортерські друкарські машинки 46 00:02:22,160 --> 00:02:23,640 комп'ютерними терміналами. 47 00:02:23,880 --> 00:02:25,546 Я написав програмне забезпечення, 48 00:02:25,550 --> 00:02:28,816 а потім виїздив у місця такі, як Канзас-Сіті стар, 49 00:02:28,840 --> 00:02:31,256 де я навчав користувачів та вислуховував відгуки. 50 00:02:31,280 --> 00:02:33,136 Це був досвід у реальному світі, 51 00:02:33,160 --> 00:02:36,400 який був дуже відмінним від того, що я бачив у лабораторіях МІТ. 52 00:02:37,480 --> 00:02:40,496 Після цього я став керівником проекту програмного забезпечення 53 00:02:40,520 --> 00:02:43,160 для першого текстового редактора DEC, 54 00:02:43,200 --> 00:02:45,720 це ще одна нова галузь. 55 00:02:45,720 --> 00:02:48,240 Нарівні з друкарським набором, 56 00:02:48,240 --> 00:02:51,240 важливим стало створення інтерфейсу користувача, 57 00:02:51,240 --> 00:02:55,320 який би був природнім та ефективним для використання не комп'ютерщиками. 58 00:02:56,360 --> 00:03:00,336 Після DEC я пішов працювати у маленьку фірму, 59 00:03:00,360 --> 00:03:04,360 яка створювала електроніку на основі мікропроцесорів 60 00:03:04,360 --> 00:03:06,030 для касових апаратів індустрії фаст-фудів. 61 00:03:06,060 --> 00:03:09,840 Але я завжди прагнув створити компанію з моїм другом 62 00:03:09,860 --> 00:03:11,056 Бобом Франкстоном, 63 00:03:11,080 --> 00:03:13,456 якого я зустрів на проекті Multics у МІТ. 64 00:03:13,480 --> 00:03:17,316 Тож я вирішив повернутися до навчання, щоб дізнатися якомога більше про бізнес. 65 00:03:17,320 --> 00:03:19,976 Восени 1977 66 00:03:20,000 --> 00:03:23,000 я включився у програму MBA у Гарвардській школі бізнесу. 67 00:03:23,840 --> 00:03:26,336 Я був одним з небагатьох студентів, 68 00:03:26,360 --> 00:03:29,200 які мали навички у комп'ютерному програмуванні. 69 00:03:30,080 --> 00:03:33,256 Це моя фотографія з фотоальбому, я в першому ряду. 70 00:03:33,280 --> 00:03:34,296 (Сміх) 71 00:03:34,320 --> 00:03:36,936 У Гарварді нас навчали методом аналізу конкретних справ. 72 00:03:36,960 --> 00:03:38,896 Ми розглядали до трьох справ за день. 73 00:03:38,920 --> 00:03:44,640 Справа надавалася у вигляді більш, ніж дюжини сторінок опису конкретної ситуації. 74 00:03:45,600 --> 00:03:50,176 Вони часто мало додатки, і додатки часто містили слова та цифри, 75 00:03:50,200 --> 00:03:53,360 які розміщені були так, щоб пояснювати ситуацію. 76 00:03:53,840 --> 00:03:55,776 Зазвичай вони мали різноманітні форми. 77 00:03:55,800 --> 00:03:57,016 Це моя домашня робота. 78 00:03:57,040 --> 00:04:00,216 Знову: цифри, слова, викладені таким чином, щоб мати сенс. 79 00:04:00,240 --> 00:04:01,720 Багато розрахунків, 80 00:04:01,720 --> 00:04:04,720 ми були дуже близькі з нашими калькуляторами. 81 00:04:04,720 --> 00:04:06,600 Ось мій калькулятор. 82 00:04:08,200 --> 00:04:10,976 На Хелоуін, я одягся, як калькулятор. 83 00:04:11,000 --> 00:04:12,440 (Сміх) 84 00:04:13,785 --> 00:04:16,976 На початку кожної справи професор викликав когось, 85 00:04:17,000 --> 00:04:18,279 щоб презентувати справу. 86 00:04:19,079 --> 00:04:21,856 Викликаний пояснював умови ситуації, 87 00:04:21,880 --> 00:04:25,616 потім диктував дані, які професор записував 88 00:04:25,640 --> 00:04:28,545 на багатьох автоматизованих дошках, встановлених у класі, 89 00:04:28,569 --> 00:04:30,096 а потім ми дискутували. 90 00:04:30,120 --> 00:04:34,576 Найбільш засмучувало, якщо ви виконували домашнє завдання, 91 00:04:34,600 --> 00:04:37,616 приходили наступного для і виявлялося, що ви зробили помилку, 92 00:04:37,640 --> 00:04:40,176 і всі наступні розрахунки також були невірними. 93 00:04:40,200 --> 00:04:42,296 Тож ви не могли брати участь в обговоренні. 94 00:04:42,296 --> 00:04:44,600 А нам ставили оцінки за участь в обговореннях. 95 00:04:45,320 --> 00:04:50,240 Тоді, сидячи з 87 іншими учасниками у класі, я багато мріяв. 96 00:04:51,280 --> 00:04:55,136 Більшість програмістів на той час працювала на мейнфреймах, 97 00:04:55,160 --> 00:04:58,520 створюючи системи для інвентаризації, 98 00:04:58,520 --> 00:05:01,360 розрахунку заробітної плати, платіжні системи. 99 00:05:01,360 --> 00:05:04,016 Але я працював над інтерактивним текстовим процесором 100 00:05:04,040 --> 00:05:06,136 і розрахунками за особистими запитами. 101 00:05:06,160 --> 00:05:10,440 Замість того, щоб обмірковувати паперовий друк та перфокарти, 102 00:05:10,880 --> 00:05:13,656 я уявляв магічну дошку, 103 00:05:13,680 --> 00:05:17,056 на якій, якщо ви витираєте одне число і вписуєте нове, 104 00:05:17,080 --> 00:05:19,936 то всі інші числа будуть автоматично змінені, 105 00:05:19,960 --> 00:05:21,720 наче текстовий процесор з цифрами. 106 00:05:22,600 --> 00:05:26,840 Я уявляв, що до мого калькулятора можна підключати мишку 107 00:05:27,240 --> 00:05:30,200 та дисплей, як на приладовій панелі винищувача. 108 00:05:30,720 --> 00:05:34,856 Щоб я міг надрукувати декілька чисел, обвести їх та натиснути кнопку суми. 109 00:05:34,880 --> 00:05:38,616 І прямо посередині перемовин я зможу отримати відповідь. 110 00:05:38,640 --> 00:05:41,640 Тепер мені залишилося лише втілити свої фантазії у реальність. 111 00:05:42,640 --> 00:05:45,080 Мій батько навчив мене працювати з прототипами. 112 00:05:45,560 --> 00:05:47,176 Він показав мені макети 113 00:05:47,200 --> 00:05:48,640 і наказав розібратися, 114 00:05:48,660 --> 00:05:50,560 як розміщувати на сторінці елементи, 115 00:05:50,560 --> 00:05:53,096 що будуть друкуватися на брошурах. 116 00:05:53,120 --> 00:05:56,056 Він використовував макети для отримання відгуків від клієнтів 117 00:05:56,080 --> 00:05:59,680 і затвердження проектів до того, як він відправляв роботу до друку. 118 00:06:00,440 --> 00:06:05,536 Діяльність по створенню простої, робочої версії того, що ти намагаєшся збудувати, 119 00:06:05,560 --> 00:06:07,880 заставляє вас виявити базові проблеми. 120 00:06:08,720 --> 00:06:13,120 І дозволяє вам знайти рішення цих проблем найпростішим чином. 121 00:06:13,720 --> 00:06:15,960 Тож я вирішив побудувати прототип. 122 00:06:16,760 --> 00:06:18,470 Я попрямував до відеотерміналу, 123 00:06:18,480 --> 00:06:21,360 зв'язаного з Гарвардською системою розподілення часу, 124 00:06:21,360 --> 00:06:22,856 і почав працювати. 125 00:06:22,880 --> 00:06:26,136 Одна з перших проблем, з якими я зіштовхнувся була: 126 00:06:26,160 --> 00:06:28,840 як представити значення у формулах? 127 00:06:29,280 --> 00:06:30,640 Я покажу, що я маю на увазі. 128 00:06:32,000 --> 00:06:34,176 Я думав, що можна вказати місце, 129 00:06:34,200 --> 00:06:36,850 надрукувати щось, потім надрукувати ще щось, 130 00:06:36,850 --> 00:06:39,070 розмістити декілька чисел і ще декілька чисел, 131 00:06:39,070 --> 00:06:41,240 вказати, де саме ти хочеш отримати відповідь. 132 00:06:41,240 --> 00:06:44,456 А потім вказати на перше число, натиснути мінус, вказати друге 133 00:06:44,480 --> 00:06:45,680 та отримати результат. 134 00:06:46,360 --> 00:06:49,586 Проблема була така: що потрібно вписувати у формулу? 135 00:06:49,600 --> 00:06:52,540 Це повинно бути чимось, про що комп'ютер знає, де його брати. 136 00:06:52,564 --> 00:06:54,136 І якщо ви дивитесь на формулу, 137 00:06:54,160 --> 00:06:57,160 вам необхідно знати, де на екрані те, на що вона посилається. 138 00:06:57,840 --> 00:07:00,736 Першою думкою було використати програмістський підхід. 139 00:07:00,760 --> 00:07:02,665 Спочатку вказуєте щось, 140 00:07:02,689 --> 00:07:05,369 щоб комп'ютер попрохав вас ввести унікальне ім'я. 141 00:07:06,760 --> 00:07:10,536 Досить швидко стало цілком ясно, що це занадто нудно. 142 00:07:10,560 --> 00:07:13,800 Комп'ютер повинен автоматично створювати імена. 143 00:07:14,600 --> 00:07:18,960 Тож я думав, чому б не створювати імена у порядку, в якому ви вводите їх? 144 00:07:19,480 --> 00:07:21,746 І пробував так: значення1, значення2. 145 00:07:21,750 --> 00:07:22,870 Дуже швидко я побачив, 146 00:07:22,870 --> 00:07:24,956 що якщо у нас більше, ніж декілька значень, 147 00:07:24,966 --> 00:07:27,216 то ми не зможемо запам'ятати, де вони на екрані. 148 00:07:27,240 --> 00:07:28,640 Тоді я сказав: 149 00:07:28,660 --> 00:07:32,640 чому б замість того, щоб дозволяти вам розміщувати значення будь-де, 150 00:07:32,640 --> 00:07:34,240 не використати сітку? 151 00:07:34,720 --> 00:07:36,936 Тоді, коли ви вказуєте клітинку, 152 00:07:36,960 --> 00:07:39,680 комп'ютер повинен сприймати рядок і колонку ,як ім'я. 153 00:07:40,640 --> 00:07:43,300 Отже, якщо я зроблю наче карту 154 00:07:43,320 --> 00:07:46,840 і розташую букви ABC по горизонталі та числа по вертикалі, 155 00:07:46,840 --> 00:07:49,736 то коли ви побачите B7 у формулі, 156 00:07:49,760 --> 00:07:51,960 тоді будете точно знати, де це на екрані. 157 00:07:52,640 --> 00:07:56,880 Якщо вам буде потрібно надрукувати формулу, ви будете знати, що робити. 158 00:07:57,440 --> 00:08:00,520 Обмеження вас сіткою допомогло вирішити задачу. 159 00:08:01,200 --> 00:08:04,080 І відкрило нові можливості, 160 00:08:04,090 --> 00:08:07,360 наприклад, можливість використовувати діапазон клітинок. 161 00:08:07,360 --> 00:08:08,936 Але це не страшне обмеження - 162 00:08:08,960 --> 00:08:13,280 ви можете розміщувати будь-які значення, будь-які формули у будь-які клітинки. 163 00:08:14,120 --> 00:08:17,960 Саме так ми чинимо і зараз, майже через 40 років. 164 00:08:19,109 --> 00:08:22,776 Ми з моїм другом Бобом вирішили, що створимо цей продукт разом. 165 00:08:22,800 --> 00:08:27,216 Я зробив багато роботи, розбираючись, як саме програма повинна поводитись. 166 00:08:27,240 --> 00:08:30,496 Я написав пам'ятку у якості документації. 167 00:08:30,520 --> 00:08:35,296 Це також допомогло мені переконатись, що інтерфейс користувача, який я розробив, 168 00:08:35,320 --> 00:08:38,799 може бути пояснений коротко і ясно для звичайних людей. 169 00:08:39,520 --> 00:08:41,960 Боб працював на горищі приміщення, 170 00:08:41,960 --> 00:08:44,960 яке він орендував у Арлінгтоні, Массачусетс. 171 00:08:44,960 --> 00:08:46,680 Це всередині горища. 172 00:08:48,240 --> 00:08:51,016 Боб купував час на MIT, 173 00:08:51,040 --> 00:08:53,760 щоб друкувати програмний код на такому терміналі. 174 00:08:54,400 --> 00:08:57,896 А потім він завантажив тестову версію на запозичений Apple II 175 00:08:57,920 --> 00:09:01,176 через телефонну мережу, використовуючи акустичний адаптер, 176 00:09:01,200 --> 00:09:02,360 і ми змогли тестувати. 177 00:09:02,920 --> 00:09:07,640 Для одного з таких тестів я використав кейс Pepsi Challenge. 178 00:09:08,720 --> 00:09:11,640 Друк ще не працював, тож я був вимушений переписувати все. 179 00:09:11,780 --> 00:09:14,896 Зберігання не працювало, тож кожного разу, коли система падала, 180 00:09:14,920 --> 00:09:17,920 я повинен був друкувати усі формули знову і знову. 181 00:09:18,240 --> 00:09:21,840 Наступного дня у класі, я підняв руку. Мене викликали, і я презентував кейс. 182 00:09:21,840 --> 00:09:23,510 Я показав п'ятирічний прогноз, 183 00:09:23,510 --> 00:09:25,840 я показав усі типи найрізноманітніших сценаріїв. 184 00:09:25,840 --> 00:09:29,520 Я виконав кейс, VisiCalc вже був корисним. 185 00:09:30,160 --> 00:09:32,760 Професор спитав: - Як ви зробили це? 186 00:09:33,469 --> 00:09:36,496 Мені не хотілося розповідати йому про нашу секретну програму. 187 00:09:36,496 --> 00:09:37,680 (Сміх) 188 00:09:38,200 --> 00:09:40,056 І я сказав: - Я взяв це і додав це, 189 00:09:40,080 --> 00:09:42,176 і помножив на це, потім відняв те. 190 00:09:42,200 --> 00:09:44,296 Він каже: - А чому ви не використали пропорцію? 191 00:09:44,320 --> 00:09:47,336 - Пропорція не була б такою точною! 192 00:09:47,360 --> 00:09:49,936 Я ж не скажу: - Ділення ще не працює. 193 00:09:49,960 --> 00:09:53,056 (Сміх) 194 00:09:53,080 --> 00:09:56,936 Зрештою, ми достатньо завершили VisiCalc, 195 00:09:56,960 --> 00:09:58,800 щоб показати його публіці. 196 00:09:59,440 --> 00:10:01,416 Мій батько надрукував нам просту брошурку, 197 00:10:01,440 --> 00:10:04,120 яку ми змогли використати як маркетинговий матеріал. 198 00:10:04,280 --> 00:10:10,056 У липні 1979, наш видавець анонсував VisiCalc світу 199 00:10:10,080 --> 00:10:11,540 на маленькому стенді 200 00:10:11,540 --> 00:10:14,800 на величезній Національній комп'ютерній конференції у Нью-Йорку. 201 00:10:14,800 --> 00:10:18,960 Нью-Йорк Таймс опублікував гумористичну статтю про конференцію: 202 00:10:19,360 --> 00:10:21,836 "Машини виконують щось схоже на релігійний ритуал... 203 00:10:21,850 --> 00:10:24,331 Навіть, як віряни, збираються художники в Колізеумі 204 00:10:24,345 --> 00:10:26,901 та додають до пантеону обережно намальоване "VISICALC" 205 00:10:26,901 --> 00:10:29,656 велетенськими чорними літерами по жовтому. 206 00:10:29,680 --> 00:10:31,496 Хай живе VISICALC!" 207 00:10:31,520 --> 00:10:35,096 (Ойкає) Нью Йорк Таймс: "Хай живе VISICALC!" 208 00:10:35,120 --> 00:10:36,616 (Сміх) 209 00:10:36,640 --> 00:10:40,896 Це було останньою згадкою електронних таблиць 210 00:10:40,920 --> 00:10:44,816 у популярній діловій пресі протягом наступних двох років. 211 00:10:44,840 --> 00:10:46,976 Більшість ще не зрозуміла, що це. 212 00:10:47,000 --> 00:10:48,200 Але дехто зрозумів. 213 00:10:48,920 --> 00:10:53,120 У жовтні 1979 ми випустили VisiCalc. 214 00:10:53,880 --> 00:10:56,696 Він поставлявся у пакунках, які виглядали ось так. 215 00:10:56,720 --> 00:10:59,200 І він виглядав ось так, запущеним на Apple II. 216 00:11:00,000 --> 00:11:01,940 А все інше, як то кажуть, то вже історія. 217 00:11:01,940 --> 00:11:04,456 Страшенно багато чого можна додати до цієї розповіді, 218 00:11:04,480 --> 00:11:06,536 але хай то залишиться до наступного разу. 219 00:11:06,560 --> 00:11:08,800 Ось ще дещо: Гарвард пам'ятає. 220 00:11:09,400 --> 00:11:10,600 Це той самий клас. 221 00:11:11,240 --> 00:11:14,680 Вони розмістили дощечку в пам'ять про те, що тут сталось. 222 00:11:15,640 --> 00:11:18,040 (Оплески) 223 00:11:24,400 --> 00:11:27,336 Але це ще й нагадування, 224 00:11:27,360 --> 00:11:32,856 що ви також можете використати ваш досвід, потреби та оточення, 225 00:11:32,880 --> 00:11:38,136 щоб побудувати прототип для вирішення та обробки важливих проблем, 226 00:11:38,160 --> 00:11:40,280 і, завдяки цьому, змінити світ. 227 00:11:41,040 --> 00:11:42,256 Дякую. 228 00:11:42,280 --> 00:11:46,880 (Оплески)