1 00:00:09,510 --> 00:00:10,762 Служба 911, слушаю. 2 00:00:11,679 --> 00:00:13,389 Служба 911, что случилось? 3 00:00:13,473 --> 00:00:14,932 Служба 911, слушаю вас. 4 00:00:15,058 --> 00:00:15,975 Служба 911, что?.. 5 00:00:19,854 --> 00:00:24,358 Служба спасения 911 внезапно прекратила работу 9 апреля 2014 года 6 00:00:24,609 --> 00:00:27,236 для миллионов граждан на всей территории США. 7 00:00:27,779 --> 00:00:30,156 Отключение продлилось больше шести часов. 8 00:00:30,364 --> 00:00:33,367 Свыше 6000 звонков не были обработаны. 9 00:00:33,910 --> 00:00:36,037 Источник проблемы отследили до компьютера 10 00:00:36,120 --> 00:00:38,915 в центре обработки вызовов в Энглвуде, Колорадо. 11 00:00:39,082 --> 00:00:41,209 Это была простая ошибка кодирования. 12 00:00:41,918 --> 00:00:43,961 Кодировавшие компьютер 13 00:00:44,045 --> 00:00:47,715 установили верхний предел звонков, который он может обработать. 14 00:00:47,840 --> 00:00:51,010 Они сочли, что этот предел никогда не будет достигнут. 15 00:00:51,427 --> 00:00:54,222 Но в ту ночь 2014 года это случилось. 16 00:00:54,555 --> 00:00:56,933 Компьютер действовал по заложенной схеме. 17 00:00:57,016 --> 00:00:59,310 Достигнув предела, перестал обрабатывать звонки. 18 00:01:00,061 --> 00:01:01,979 Проблема была не в компьютере, 19 00:01:02,480 --> 00:01:03,940 не в ошибке кода. 20 00:01:04,398 --> 00:01:06,067 Проблема была в кодировании. 21 00:01:06,275 --> 00:01:09,403 В алгоритме принятия решения, используемом для общения 22 00:01:09,529 --> 00:01:10,488 с компьютером. 23 00:01:10,613 --> 00:01:14,659 Такая власть подразумевает большую этическую ответственность. 24 00:01:14,742 --> 00:01:18,204 Это ни с чем не сравнить. Это ничем не заменить. 25 00:01:18,329 --> 00:01:20,915 Так же, как строители решают, 26 00:01:21,541 --> 00:01:23,751 какой будет ваша жизнь в городе, 27 00:01:23,835 --> 00:01:28,840 код контролирует нашу жизнь онлайн. То есть нашу жизнь в целом. 28 00:01:29,507 --> 00:01:31,300 Не только используя Интернет, 29 00:01:31,384 --> 00:01:33,636 но и когда мы звоним в службу спасения 30 00:01:34,554 --> 00:01:35,596 или идем к врачу. 31 00:01:36,180 --> 00:01:37,598 Или садимся в машину. 32 00:01:38,099 --> 00:01:40,643 В нашей жизни многое зависит от кода. 33 00:01:41,602 --> 00:01:47,024 Однако лишь 0,33% населения Земли умеет писать коды. 34 00:01:47,233 --> 00:01:50,528 Для подавляющего большинства это тайна за семью печатями. 35 00:01:50,695 --> 00:01:51,988 Но это можно исправить. 36 00:01:52,446 --> 00:01:55,199 Итак, что же такое кодирование? 37 00:01:55,658 --> 00:01:58,369 И каков новый мир, что мы строим с его помощью? 38 00:01:59,287 --> 00:02:01,122 ОРИГИНАЛЬНЫЙ ДОКУМЕНТАЛЬНЫЙ СЕРИАЛ NETFLIX 39 00:02:01,205 --> 00:02:02,039 Компьютер. 40 00:02:03,082 --> 00:02:05,835 Набор инновационной электроники, 41 00:02:05,918 --> 00:02:07,879 созданной человеком. 42 00:02:08,087 --> 00:02:11,382 Дело не в том, что у нас нет нужных машин для решения проблем, 43 00:02:11,465 --> 00:02:14,177 а в нехватке нужных описаний того, как их решить. 44 00:02:14,260 --> 00:02:18,556 Когда мы слышим «кодирование», думаем, что это очень сложно. 45 00:02:18,973 --> 00:02:22,685 Очень важно помнить, что всё, что есть в вашем компьютере, 46 00:02:22,768 --> 00:02:25,271 было создано таким же как вы человеком. 47 00:02:26,230 --> 00:02:31,569 КОДИРОВАНИЕ 48 00:02:31,944 --> 00:02:34,989 Допустим, нужно объяснить инопланетянину в чём важность кода. 49 00:02:35,072 --> 00:02:35,907 Что это такое. 50 00:02:35,990 --> 00:02:37,283 Скажу ему так: 51 00:02:37,533 --> 00:02:41,412 «Мы живем на планете Земля. Полвека назад небольшая группа людей 52 00:02:41,495 --> 00:02:44,457 начала создавать другую планету. 53 00:02:44,540 --> 00:02:46,876 Но не в реальности. Виртуальную планету. 54 00:02:47,001 --> 00:02:50,213 Оглянитесь на улице. Видите, все идут склонившись 55 00:02:50,296 --> 00:02:52,548 и уткнувшись в телефоны? 56 00:02:52,632 --> 00:02:54,091 Они на другой планете. 57 00:02:54,383 --> 00:02:56,093 Вот что такое код. 58 00:02:56,219 --> 00:02:58,054 Кирпичики этого нового мира». 59 00:03:00,056 --> 00:03:04,393 Ткацкий станок — предшественник всех компьютеров и смартфонов на Земле. 60 00:03:04,852 --> 00:03:06,854 Он был изобретен в 1804 году. 61 00:03:06,938 --> 00:03:09,273 Перфокарты — революционное изобретение. 62 00:03:10,107 --> 00:03:13,611 Отверстия в перфокарте позволяют пройти лишь определенным иглам. 63 00:03:14,237 --> 00:03:16,405 Тысячи отверстий на сотнях перфокарт 64 00:03:16,489 --> 00:03:19,492 позволяли создавать более сложные узоры, чем раньше. 65 00:03:20,243 --> 00:03:22,870 В Европе стали популярны замысловатые платки. 66 00:03:23,037 --> 00:03:26,666 Вытканные узоры были столь сложны, что напоминали рисунки. 67 00:03:26,916 --> 00:03:29,168 Как этот портрет изобретателя станка. 68 00:03:30,169 --> 00:03:34,423 До этого отдельные нити выбирались вручную помощниками ткачей. 69 00:03:34,966 --> 00:03:36,801 Вычисления тоже делали вручную. 70 00:03:36,884 --> 00:03:38,886 Так называемые «вычислители». 71 00:03:39,095 --> 00:03:40,972 Все вычисления делали люди. 72 00:03:41,681 --> 00:03:43,557 Самые лучшие счетные приборы 73 00:03:43,641 --> 00:03:45,726 выполняли лишь один вид вычислений. 74 00:03:46,227 --> 00:03:48,604 Например, счёты для сложения и вычитания. 75 00:03:49,313 --> 00:03:52,358 Британский математик Чарлз Бэббидж хотел создать машину, 76 00:03:52,441 --> 00:03:54,443 способную решить любую задачу, 77 00:03:54,735 --> 00:03:57,405 которую вы выберете. Вернее, запрограммируете. 78 00:03:57,780 --> 00:04:00,908 Он задумал «Аналитическую машину». 79 00:04:01,242 --> 00:04:04,662 Эта идея обеспечила ему место в истории. 80 00:04:05,037 --> 00:04:10,167 Первый, кому пришла идея создания компьютеров, был Бэббидж — 81 00:04:10,710 --> 00:04:13,879 очень эксцентричный британский изобретатель. 82 00:04:14,171 --> 00:04:16,507 Бэббидж задумал, как это будет работать. 83 00:04:16,966 --> 00:04:19,593 У него дома висела репродукция этой картины. 84 00:04:20,219 --> 00:04:23,347 В Аналитической машине Бэббиджа, как и в станке Жаккара, 85 00:04:23,431 --> 00:04:25,391 были детали — аппаратная часть. 86 00:04:25,599 --> 00:04:27,101 Как и в ткацком станке, 87 00:04:27,184 --> 00:04:31,272 аппаратная часть получала инструкции в форме перфокарт с отверстиями. 88 00:04:31,564 --> 00:04:33,065 Через них проходили иглы. 89 00:04:33,149 --> 00:04:36,193 Если отверстия не было, иглы отталкивались назад. 90 00:04:36,652 --> 00:04:39,196 Так запускалась цепь механических вычислений. 91 00:04:39,864 --> 00:04:41,407 Перфокарты с отверстиями — 92 00:04:41,615 --> 00:04:42,825 это программы. 93 00:04:43,701 --> 00:04:46,495 Бэббидж не закончил работу над Аналитической машиной. 94 00:04:46,579 --> 00:04:50,583 Но молодая женщина, работавшая с ним, поняла, что значение этого изобретения 95 00:04:50,666 --> 00:04:52,335 выходит за рамки математики. 96 00:04:52,668 --> 00:04:55,671 Ада Байрон, графиня Лавлейс, писала: 97 00:04:56,005 --> 00:04:59,675 «...это вышло за границы арифметики, когда появилась 98 00:04:59,759 --> 00:05:02,011 идея применения перфокарт». 99 00:05:02,261 --> 00:05:04,221 Она видела то же, что и Жаккар: 100 00:05:04,347 --> 00:05:06,891 отверстия могут выражать не только числа. 101 00:05:07,058 --> 00:05:08,267 Это может быть узор, 102 00:05:08,392 --> 00:05:09,310 музыка, 103 00:05:10,644 --> 00:05:12,271 или целые предложения. 104 00:05:12,772 --> 00:05:14,982 Это что-то вроде азбуки Морзе. 105 00:05:15,274 --> 00:05:19,987 В азбуке Морзе каждая буква выражена набором из лишь двух знаков. 106 00:05:20,071 --> 00:05:21,739 То есть 107 00:05:21,906 --> 00:05:22,865 она двоична. 108 00:05:23,324 --> 00:05:26,452 С помощью этих сигналов мы можем сказать что угодно. 109 00:05:26,952 --> 00:05:30,748 Например, сигнал бедствия, отправленный с «Титаника» в 1912 году. 110 00:05:31,457 --> 00:05:34,502 Аббревиатура «SOS» никак не расшифровывается. 111 00:05:34,627 --> 00:05:37,922 Просто его очень легко отправлять с помощью азбуки Морзе. 112 00:05:38,089 --> 00:05:42,885 Каждая буква этого сигнала может быть выражена как комбинация 113 00:05:42,968 --> 00:05:44,512 нулей и единиц. 114 00:05:44,637 --> 00:05:45,930 Выглядит знакомо? 115 00:05:46,138 --> 00:05:47,640 Это двоичный код. 116 00:05:47,848 --> 00:05:51,769 Это связующее звено между машинами и человеческим языком. 117 00:05:51,894 --> 00:05:55,773 Каждый ноль и единица — это бинарное число или «бит». 118 00:05:55,940 --> 00:05:58,359 Это атомы современных компьютерных систем. 119 00:05:58,484 --> 00:06:00,486 Они знакомы вам под другим именем: 120 00:06:00,653 --> 00:06:02,613 восемь бит равны одному байту. 121 00:06:03,239 --> 00:06:07,576 Например, это фото на вашем компьютере занимает 1,1 мегабайт. 122 00:06:08,160 --> 00:06:11,956 Это 8 800 000 единиц и нулей. 123 00:06:12,373 --> 00:06:16,794 Точки и тире азбуки Морзе — это способ записи информации. 124 00:06:16,877 --> 00:06:20,297 Единицы и нули двоичного кода используются для записи того, 125 00:06:20,423 --> 00:06:22,758 что происходит в современном компьютере: 126 00:06:23,217 --> 00:06:24,802 есть заряд, нет заряда. 127 00:06:25,511 --> 00:06:27,346 Это простая электрическая цепь. 128 00:06:27,763 --> 00:06:30,599 Представьте, что миллионы цепей работают вместе. 129 00:06:30,933 --> 00:06:32,476 Это современный компьютер. 130 00:06:33,018 --> 00:06:35,271 В электрической цепи это бит. 131 00:06:35,604 --> 00:06:37,857 Лампочка отключена? Ноль. 132 00:06:38,107 --> 00:06:39,567 Включена? Единица. 133 00:06:40,067 --> 00:06:42,194 Компьютеры понимают лишь электричество. 134 00:06:42,278 --> 00:06:44,947 Поэтому всё, что делают программисты, 135 00:06:45,489 --> 00:06:46,323 по сути, — 136 00:06:46,449 --> 00:06:49,368 лишь последовательность зарядов и их отсутствия. 137 00:06:49,660 --> 00:06:53,330 Это работает, когда заряды, собранные в правильной последовательности, 138 00:06:53,414 --> 00:06:56,041 имеют определенную логику. 139 00:06:56,625 --> 00:07:00,921 По сути, логика — это предсказуемая последовательность фактов или событий. 140 00:07:01,255 --> 00:07:03,090 Например, замкнуть выключатель. 141 00:07:04,467 --> 00:07:07,052 А потом вот этот, чтобы зазвонил звонок. 142 00:07:09,054 --> 00:07:12,516 Специалисты называют это «логическая схема И». 143 00:07:13,476 --> 00:07:15,644 Или логический вентиль. 144 00:07:15,769 --> 00:07:18,439 Попробуем сделать это и не прожечь дыру в столе. 145 00:07:18,522 --> 00:07:21,192 В вентиле «И» обе цепи должны быть замкнуты, 146 00:07:21,275 --> 00:07:22,818 чтобы загорелась лампочка. 147 00:07:23,235 --> 00:07:24,695 Еще есть вентиль «ИЛИ», 148 00:07:24,778 --> 00:07:28,199 когда лампочка загорается, если замкнута лишь одна цепь. 149 00:07:28,365 --> 00:07:29,783 Возможен другой вариант. 150 00:07:29,909 --> 00:07:34,371 Если замкнута одна из цепей, тогда включается лампочка. 151 00:07:34,497 --> 00:07:36,916 Такое утверждение «если, тогда» — 152 00:07:36,999 --> 00:07:38,083 это алгоритм. 153 00:07:38,292 --> 00:07:42,505 В современной культуре слово алгоритм очень неоднозначно. 154 00:07:42,755 --> 00:07:45,925 Мы видели это раньше, когда алгоритмы слетели с катушек. 155 00:07:46,008 --> 00:07:49,094 Для большинства работа алгоритмов — своего рода тайна. 156 00:07:49,178 --> 00:07:51,847 Да что вообще такое этот алгоритм? 157 00:07:51,972 --> 00:07:54,892 Алгоритм — это всего лишь набор инструкций. 158 00:07:55,100 --> 00:07:56,769 Положим, вы идете в магазин. 159 00:07:56,894 --> 00:07:59,522 Можно повернуть налево, потом направо. 160 00:07:59,647 --> 00:08:02,525 А можно пойти направо, а потом повернуть налево. 161 00:08:02,775 --> 00:08:04,985 А можно четыре раза повернуть налево, 162 00:08:05,069 --> 00:08:07,071 пройти через парк, пересечь шоссе, 163 00:08:07,154 --> 00:08:09,073 и четыре раза повернуть направо. 164 00:08:09,365 --> 00:08:11,742 Есть разные способы попасть в одно и то же место. 165 00:08:11,825 --> 00:08:14,578 Точно так же в кодировании могут быть разные алгоритмы 166 00:08:14,662 --> 00:08:16,163 для решения одной задачи. 167 00:08:16,372 --> 00:08:20,042 Цель — найти самый простой и эффективный способ. 168 00:08:20,459 --> 00:08:22,795 Красивый код не повторяется. 169 00:08:22,920 --> 00:08:24,922 В нем есть элегантность. И сила. 170 00:08:25,506 --> 00:08:29,051 Компьютеры, управляемые алгоритмами, делали лишь то, что мы им велели. 171 00:08:29,134 --> 00:08:30,844 Но гораздо быстрее. 172 00:08:31,136 --> 00:08:33,764 Это сделало людей гораздо могущественнее. 173 00:08:34,223 --> 00:08:37,601 Когда ученые начали разрабатывать термоядерную бомбу, 174 00:08:38,018 --> 00:08:40,437 изначально вычисления делали люди. 175 00:08:40,896 --> 00:08:42,815 Но потом появилось вот это. 176 00:08:43,315 --> 00:08:47,152 Компьютер ЭНИАК шесть недель проводил термоядерные вычисления. 177 00:08:47,903 --> 00:08:50,197 Результаты способствовали вот этому. 178 00:08:51,323 --> 00:08:53,701 В 1952 году впервые успешно испытали бомбу 179 00:08:54,076 --> 00:08:57,246 в сотни раз мощнее атомных бомб, 180 00:08:57,329 --> 00:09:00,708 сброшенных на Хиросиму и Нагасаки во время Второй мировой. 181 00:09:01,458 --> 00:09:04,962 Возможность кодировать расширила наши возможности делать то, 182 00:09:05,421 --> 00:09:06,672 что нам требуется. 183 00:09:07,590 --> 00:09:11,135 Но в 1940-х годах впереди было еще много работы. 184 00:09:11,468 --> 00:09:16,056 Написание программ в нулях и единицах ограничивает масштаб. 185 00:09:16,223 --> 00:09:19,351 Нужно было лучше использовать возможности кодирования. 186 00:09:19,685 --> 00:09:21,604 Требовался более простой способ. 187 00:09:22,438 --> 00:09:27,568 С тех пор кодирование всё ближе и ближе приближалось 188 00:09:27,651 --> 00:09:29,028 к человеческому языку 189 00:09:29,403 --> 00:09:32,990 за счет изобретения того, что сейчас используют повсеместно: 190 00:09:33,115 --> 00:09:34,617 языков программирования. 191 00:09:35,200 --> 00:09:38,996 В сравнении с единицами и нулями эти языки довольно абстрактны. 192 00:09:39,580 --> 00:09:41,540 Абстракция — это сложное понятие. 193 00:09:42,249 --> 00:09:45,669 Более абстрактные языки сводятся к тем же единицам и нулям. 194 00:09:45,794 --> 00:09:48,213 Мы просто смогли лучше их организовывать. 195 00:09:48,881 --> 00:09:50,966 Представим это на примере биологии. 196 00:09:51,508 --> 00:09:53,135 Люди очень сложно устроены. 197 00:09:53,218 --> 00:09:56,972 Но 99% нашего тела состоит всего из шести элементов. 198 00:09:57,348 --> 00:10:00,184 Из них создаются крупные молекулы. 199 00:10:00,267 --> 00:10:04,730 Между этим уровнем организации и уровнем простейшего живого существа 200 00:10:04,813 --> 00:10:06,023 огромная пропасть. 201 00:10:06,357 --> 00:10:07,608 И у людей есть мозг, 202 00:10:07,691 --> 00:10:09,568 настолько сложный, 203 00:10:09,652 --> 00:10:12,863 что с трудом вериться, что он сделан из тех же веществ. 204 00:10:12,946 --> 00:10:16,784 Компьютеры очень похожи на это, но они гораздо проще. 205 00:10:17,951 --> 00:10:19,203 Это отличная новость. 206 00:10:19,578 --> 00:10:22,915 История кодирования — это продвижение этой ячейки вверх. 207 00:10:23,165 --> 00:10:24,541 Отход от двоичной системы, 208 00:10:24,625 --> 00:10:28,837 чтобы найти более быстрые, легкие и производительные способы кодирования 209 00:10:29,088 --> 00:10:32,049 без необходимости использовать или даже понимать 210 00:10:32,174 --> 00:10:35,052 двоичную систему и логические вентили, лежащие в основе. 211 00:10:35,344 --> 00:10:38,931 Это позволяет программистам создавать продукты, знакомые всем нам. 212 00:10:39,306 --> 00:10:41,308 Первым шагом к этому был... 213 00:10:41,850 --> 00:10:45,813 Язык ассемблера. Его гораздо проще читать и записывать. 214 00:10:46,188 --> 00:10:49,608 Вместо того, чтобы говорить 0-1-0-0-0-1-1-1, 215 00:10:49,858 --> 00:10:51,318 назовем это «add». 216 00:10:51,694 --> 00:10:58,200 А потом программа-ассемблер переведет эти буквы 217 00:10:58,283 --> 00:11:03,455 в соответствующие им нули и единицы. 218 00:11:03,580 --> 00:11:07,292 На этом уровне двоичный код организован в буквы и цифры, 219 00:11:07,626 --> 00:11:10,379 как атомы организованы в молекулы. 220 00:11:10,921 --> 00:11:15,217 Но кодирование на языке ассемблера было всё еще недостаточно простым, 221 00:11:15,843 --> 00:11:19,513 ведь все эти компьютеры использовали разные языки ассемблера. 222 00:11:20,097 --> 00:11:24,810 Программа, написанная для одного компьютера, не работает на другом. 223 00:11:25,102 --> 00:11:27,187 Вскоре люди задумались 224 00:11:27,271 --> 00:11:29,440 о возможности ввода информации 225 00:11:29,523 --> 00:11:32,901 в компьютер при помощи терминов, используемых каждый день. 226 00:11:33,193 --> 00:11:35,863 Есть языки программирования, 227 00:11:35,946 --> 00:11:39,491 созданные на основе языка ассемблера. 228 00:11:39,616 --> 00:11:42,911 Из этих языков программирования были созданы новые языки. 229 00:11:43,370 --> 00:11:44,955 Думаю, вы слышали эти названия. 230 00:11:45,038 --> 00:11:45,914 - Лисп. - Бейсик. 231 00:11:45,998 --> 00:11:47,207 - Java. - C ++. 232 00:11:47,291 --> 00:11:49,042 - Python 3. - HTML 5. 233 00:11:49,126 --> 00:11:51,044 Perl, РНР, язык Си. 234 00:11:51,128 --> 00:11:53,672 Так же как языки мира — 235 00:11:53,756 --> 00:11:56,717 это разные способы выражения одной и той же мысли, 236 00:11:57,050 --> 00:11:58,469 языки программирования — 237 00:11:58,552 --> 00:12:01,972 это разные способы передачи компьютеру одной и той же идеи. 238 00:12:02,347 --> 00:12:05,058 Существуют несколько языков высокого уровня, 239 00:12:05,142 --> 00:12:07,936 во-первых, потому что разные языки 240 00:12:08,020 --> 00:12:10,105 направлены на разные потребности. 241 00:12:10,689 --> 00:12:12,107 Например, эти два языка. 242 00:12:12,191 --> 00:12:15,944 Этот, Кобол, был создан в конце 50-х годов, 243 00:12:16,028 --> 00:12:18,906 чтобы облегчить предприятиям использование кодов. 244 00:12:19,239 --> 00:12:23,494 Он во многом похож на английский. Отличие лишь в том, что каждый разговор 245 00:12:23,577 --> 00:12:25,579 заканчивается фразой: «STOP RUN». 246 00:12:26,497 --> 00:12:32,753 Язык CPL, разработанный в 60-х годах, включает более сложные вычисления. 247 00:12:33,212 --> 00:12:35,297 Похоже на биологическую революцию. 248 00:12:35,631 --> 00:12:38,425 Организмы становятся сложнее и развивают черты, 249 00:12:38,509 --> 00:12:41,637 помогающие лучше адаптироваться к конкретным условиям. 250 00:12:42,012 --> 00:12:45,933 Честно говоря, это еще и вопрос вкуса. 251 00:12:46,558 --> 00:12:50,521 Людям нравятся разные инструменты для самовыражения. 252 00:12:50,604 --> 00:12:53,774 Например, язык С ++. 253 00:12:53,857 --> 00:12:56,068 Илон Маск точно не его поклонник. 254 00:12:56,360 --> 00:12:57,820 Язык можно создать самому. 255 00:12:58,028 --> 00:13:02,533 Есть язык высокого уровня, созданный целиком из слова «му». 256 00:13:02,950 --> 00:13:05,202 Без шуток. Называется COW, или корова. 257 00:13:05,285 --> 00:13:08,956 Этот создан на основе цитат из фильмов Арнольда Шварценеггера. 258 00:13:09,164 --> 00:13:13,252 Каждый раз, когда я думаю: «Теперь-то уже точно всё», 259 00:13:13,335 --> 00:13:20,050 еще кто-то придумывает новый язык и у него появляются последователи. 260 00:13:20,175 --> 00:13:24,888 Так что изобретение новых языков будет продолжаться. 261 00:13:25,472 --> 00:13:29,017 Все эти языки всё еще основываются на логике. 262 00:13:29,393 --> 00:13:32,312 Например, программист Netflix может решить: 263 00:13:32,396 --> 00:13:35,899 «Если вы смотрели больше двух часов, 264 00:13:36,024 --> 00:13:37,150 показать вот это». 265 00:13:37,609 --> 00:13:40,445 Но чтобы код оказал влияние на жизни большинства, 266 00:13:40,529 --> 00:13:42,614 они должны использовать компьютеры. 267 00:13:42,739 --> 00:13:45,826 Значит, компьютеры должны быть понятнее и удобнее. 268 00:13:46,159 --> 00:13:48,662 Для этого понадобился еще один большой рывок. 269 00:13:48,912 --> 00:13:50,539 Он начался с этого. 270 00:13:50,622 --> 00:13:54,334 С демо, записанного Дугласом Энгельбартом в 1968 году. 271 00:13:54,459 --> 00:13:56,587 Через секунду на подключенном экране 272 00:13:56,712 --> 00:13:58,547 мы увидим, как точка движется, 273 00:13:58,630 --> 00:14:01,425 повторяя движения мыши. 274 00:14:02,050 --> 00:14:06,346 В наши дни люди не программируют, записывая утверждения на бумаге 275 00:14:06,430 --> 00:14:10,309 и затем передавая их тому, 276 00:14:10,392 --> 00:14:11,476 кто их вводит. 277 00:14:11,560 --> 00:14:15,272 Вы сидите перед экраном, у вас графический интерфейс. 278 00:14:15,480 --> 00:14:17,941 Это ГИП — графический интерфейс пользователя. 279 00:14:18,025 --> 00:14:21,111 С ГИП можно программировать, не напечатав ни слова. 280 00:14:22,487 --> 00:14:24,907 Или использование кода становится проще. 281 00:14:25,240 --> 00:14:29,661 Обычно вы работаете в среде программирования, 282 00:14:30,287 --> 00:14:34,958 которую Алан и его коллеги 283 00:14:35,042 --> 00:14:36,501 так прекрасно создали 284 00:14:36,585 --> 00:14:40,464 в научно-исследовательском центре «Xerox PARC» в начале 70-х. 285 00:14:40,797 --> 00:14:42,633 Речь про этого Алана. 286 00:14:42,883 --> 00:14:46,136 Для меня он — отец персональных компьютеров. 287 00:14:46,261 --> 00:14:50,265 Ведь он был первым, кто озвучил эту идею. 288 00:14:50,515 --> 00:14:54,353 Должен признаться, в то время я думал, что это научная фантастика. 289 00:14:54,561 --> 00:14:56,605 Когда делаются большие дела, 290 00:14:58,106 --> 00:14:59,608 в этом участвуют многие. 291 00:14:59,816 --> 00:15:02,110 «PARC» было замечательным местом. 292 00:15:02,653 --> 00:15:04,196 Как в сказке. 293 00:15:04,780 --> 00:15:08,450 Графический интерфейс пользователя позволил миллионам людей 294 00:15:08,533 --> 00:15:12,871 использовать компьютеры так, как им удобно и привычно. 295 00:15:13,455 --> 00:15:16,750 Представив первый графический интерфейс в 1979 году, 296 00:15:16,833 --> 00:15:20,170 «Xerox» показали, как код может изменить повседневную жизнь. 297 00:15:20,462 --> 00:15:22,339 Заходите в офис и аппарат «Xerox» 298 00:15:22,422 --> 00:15:25,008 выводит на экран вашу утреннюю почту. 299 00:15:25,092 --> 00:15:26,802 Скоро подобные системы «Xerox» 300 00:15:26,885 --> 00:15:29,721 будут помогать управлять самым ценным ресурсом. 301 00:15:30,472 --> 00:15:31,431 Информацией. 302 00:15:31,848 --> 00:15:35,394 Многие люди, такие как я и другие члены научного сообщества, 303 00:15:35,477 --> 00:15:38,105 хотели сделать мир лучше. 304 00:15:38,188 --> 00:15:41,692 У них была идея, тесно связанная 305 00:15:41,775 --> 00:15:43,026 с усилением человека. 306 00:15:43,610 --> 00:15:46,196 Что-то, что будет взаимодействовать с нами, 307 00:15:46,697 --> 00:15:47,864 обществом, 308 00:15:48,198 --> 00:15:50,158 обычным человеком, 309 00:15:50,242 --> 00:15:53,578 и даст нам возможность делать больше, чем мы могли раньше. 310 00:15:53,662 --> 00:15:56,039 Это дало нам возможность делать больше. 311 00:15:56,331 --> 00:15:58,875 ГИП — это огромный скачок вверх. 312 00:15:59,501 --> 00:16:03,630 Затем появилась следующая инновация, изменившая мир. 313 00:16:05,382 --> 00:16:09,386 Новый способ распространения всего, что можно создать с помощью кода. 314 00:16:10,012 --> 00:16:12,264 На телевидении появились предсказания, 315 00:16:12,347 --> 00:16:14,433 к чему приведет внезапный доступ к коду. 316 00:16:14,808 --> 00:16:18,437 Представьте, за утренним кофе вы включаете домашний компьютер 317 00:16:18,520 --> 00:16:20,439 чтобы прочитать свежие новости. 318 00:16:20,522 --> 00:16:24,985 Представьте, что каждое слово, каждая картина, каждый фильм 319 00:16:25,068 --> 00:16:28,697 будет моментально доступен не выходя из дома. 320 00:16:28,780 --> 00:16:33,660 Думаю, мы находимся на пороге чего-то головокружительного и пугающего. 321 00:16:33,744 --> 00:16:35,245 Это же просто инструмент. 322 00:16:35,328 --> 00:16:36,204 Нет, не просто. 323 00:16:36,288 --> 00:16:40,667 Сегодня самые эффективные программы используют все эти инновации. 324 00:16:40,751 --> 00:16:44,671 Студент колледжа использовал язык программирования высокого уровня, PHP, 325 00:16:44,755 --> 00:16:46,840 чтобы то, что выложено в интернете, 326 00:16:46,923 --> 00:16:49,760 можно было использовать на компьютере с ГИП. 327 00:16:50,093 --> 00:16:53,680 Он рассказал об этом в своем первом телеинтервью в 2004 году. 328 00:16:53,972 --> 00:16:56,349 Это онлайн-справочник, объединяющий людей 329 00:16:56,433 --> 00:16:59,478 через университеты и колледжи, через их социальные связи. 330 00:16:59,561 --> 00:17:02,731 Сейчас у нас 100 000 человек. Кто знает, что будет дальше. 331 00:17:02,814 --> 00:17:07,027 А дальше было вот что — ежемесячно больше двух миллиардов человек 332 00:17:07,152 --> 00:17:08,361 на «Facebook». 333 00:17:08,695 --> 00:17:11,490 Сегодня программисты влияют на жизни миллиардов. 334 00:17:11,907 --> 00:17:16,119 На то, как люди работают, едят, делают покупки, встречаются и отдыхают. 335 00:17:16,203 --> 00:17:17,537 Что вы делаете сейчас? 336 00:17:17,621 --> 00:17:21,208 Вы смотрите шоу с моим участием в веб-браузере «Netflix». 337 00:17:23,376 --> 00:17:27,214 Таким образом «Netflix» — это тоже код, запущенный в веб-браузере, 338 00:17:27,339 --> 00:17:28,340 который тоже код, 339 00:17:28,507 --> 00:17:33,804 который запущен на компьютере, созданном с использованием кода. 340 00:17:34,054 --> 00:17:35,680 И так далее по цепочке. 341 00:17:37,599 --> 00:17:40,519 Создать отличный код — это как построить музей, 342 00:17:41,311 --> 00:17:43,355 о котором думают миллионы людей, 343 00:17:43,480 --> 00:17:45,899 куда они заходят и используют каждый день. 344 00:17:46,191 --> 00:17:49,569 Написание кода ни с чем не сравнимо, это настоящее созидание. 345 00:17:49,653 --> 00:17:51,905 Есть идея, как что-то должно работать. 346 00:17:52,364 --> 00:17:56,201 Вы пробуете сесть за компьютер 347 00:17:56,284 --> 00:17:58,078 и сделать это реальностью. 348 00:17:58,161 --> 00:18:01,039 При этом на вас лежит большая ответственность. 349 00:18:01,164 --> 00:18:04,000 Допустим, есть ограничение скорости. 350 00:18:04,167 --> 00:18:05,669 Не больше 100 км/ч. 351 00:18:06,628 --> 00:18:07,504 Ладно. 352 00:18:07,712 --> 00:18:11,299 Что если у вас есть машина, и компьютер заявил: 353 00:18:12,092 --> 00:18:15,053 «Эта машина не будет ехать быстрее, чем 100 км/ч»? 354 00:18:15,846 --> 00:18:17,973 Это способ контролировать поведение. 355 00:18:18,056 --> 00:18:23,395 Зачастую в нашей жизни код, контролируя наш выбор, 356 00:18:23,478 --> 00:18:27,941 оказывает более сильный регулирующий эффект, чем это возможно для закона. 357 00:18:28,525 --> 00:18:30,819 Это может быть замечательно. 358 00:18:30,944 --> 00:18:35,198 Каждый год в США происходит около шести миллионов аварий. 359 00:18:35,282 --> 00:18:39,494 Исследование показало, что в 94% случаев виновен водитель. 360 00:18:40,370 --> 00:18:43,081 Успехи кодирования могут спасти миллионы жизней. 361 00:18:43,665 --> 00:18:47,043 Но они же рождают новые способы подвергать человека риску. 362 00:18:47,460 --> 00:18:50,922 У меня гипертрофическая кардиомиопатия. 363 00:18:51,131 --> 00:18:56,219 Это медицинский термин, означающий, что у меня большое сердце. 364 00:18:56,511 --> 00:18:58,096 Оно буквально большое. 365 00:18:58,180 --> 00:19:00,932 Оно в три раза больше, чем обычное сердце. 366 00:19:01,016 --> 00:19:03,143 Я узнала об этом, когда мне было 30. 367 00:19:03,226 --> 00:19:07,147 Вероятность моей внезапной смерти к 40 годам была очень велика. 368 00:19:07,439 --> 00:19:10,025 Электрофизиолог сказал: «Это не проблема, 369 00:19:10,108 --> 00:19:12,485 вы можете поставить кардиостимулятор». 370 00:19:13,028 --> 00:19:15,030 Это устройство управляется кодом. 371 00:19:15,697 --> 00:19:20,243 Пару лет назад, когда я была беременна, мое сердце учащенно билось. 372 00:19:20,744 --> 00:19:24,748 Так бывает у четверти женщин, это абсолютно нормально. 373 00:19:25,207 --> 00:19:28,418 Но устройство сочло, что это опасный ритм. 374 00:19:28,501 --> 00:19:29,586 И дало разряд. 375 00:19:29,669 --> 00:19:32,464 Производители устройств не заинтересованы в том, 376 00:19:32,547 --> 00:19:34,216 чтобы бить беременных током. 377 00:19:34,299 --> 00:19:36,509 Это последнее, чего они могут хотеть. 378 00:19:36,635 --> 00:19:39,262 Просто они это не предусмотрели. 379 00:19:39,471 --> 00:19:42,474 Нужно принять огромное количество решений. 380 00:19:43,141 --> 00:19:47,395 И их будут принимать те, кто занимаются программированием. 381 00:19:48,188 --> 00:19:50,690 И, неизбежно, 382 00:19:51,066 --> 00:19:53,735 возникнут некие стечения обстоятельств, 383 00:19:53,818 --> 00:19:55,904 которые они не предвидели. 384 00:19:56,238 --> 00:19:59,491 Поэтому, преподавая программирование, 385 00:19:59,574 --> 00:20:01,785 мы пытаемся научить студентов 386 00:20:02,244 --> 00:20:04,496 просчитывать и предвидеть 387 00:20:04,621 --> 00:20:07,540 все эти различные условия и обстоятельства. 388 00:20:07,832 --> 00:20:10,168 Как попытаться охватить всё, 389 00:20:10,293 --> 00:20:14,673 при этом не будучи парализованным объемом того, 390 00:20:14,756 --> 00:20:16,091 что вам нужно учесть. 391 00:20:16,174 --> 00:20:20,011 Это становится еще более актуальным, ведь мы начали кодировать 392 00:20:20,136 --> 00:20:21,721 совершенно по-новому. 393 00:20:22,305 --> 00:20:25,809 В традиционном кодировании вы пишете команды для компьютера. 394 00:20:26,059 --> 00:20:30,230 Но теперь возможно задать ему несколько входных и выходных данных, 395 00:20:30,313 --> 00:20:33,525 и он сам напишет для себя команды. 396 00:20:33,817 --> 00:20:37,404 Вы даете компьютеру 397 00:20:38,280 --> 00:20:39,739 кучу примеров. 398 00:20:40,073 --> 00:20:43,660 Потом говорите: «Это вечеринка. И это. Это тоже». 399 00:20:43,785 --> 00:20:45,328 Попадается еще что-то. 400 00:20:45,412 --> 00:20:47,247 Кабинет стоматолога — не вечеринка. 401 00:20:47,330 --> 00:20:48,915 Школа — не вечеринка. 402 00:20:49,374 --> 00:20:51,710 Компьютер смотрит на это 403 00:20:51,793 --> 00:20:55,005 и пытается создать систему классификации. 404 00:20:55,255 --> 00:20:57,173 Это машинное обучение. 405 00:20:57,257 --> 00:21:00,051 Сейчас, говоря «искусственный интеллект», 406 00:21:00,427 --> 00:21:01,553 мы говорим об этом. 407 00:21:01,636 --> 00:21:06,641 Это совсем другой уровень абстракции и способов делать что-либо. 408 00:21:06,725 --> 00:21:11,438 Это совсем не то, к чему мы привыкли. 409 00:21:11,604 --> 00:21:14,149 Это называется алгоритмы машинного обучения, 410 00:21:14,232 --> 00:21:17,986 потому что компьютер сам создает указания, которым будет следовать. 411 00:21:18,069 --> 00:21:21,990 Но, конечно, в конце концов, они тоже будут преобразованы 412 00:21:22,073 --> 00:21:24,451 в маленькие команды. 413 00:21:25,201 --> 00:21:28,288 «Google Переводчик» раньше имел больше миллиона строк кода. 414 00:21:28,538 --> 00:21:32,751 Люди написали больше миллиона коротких команд. 415 00:21:32,876 --> 00:21:37,672 На данный момент «Google Переводчик» включает около 500 строк кода, 416 00:21:37,756 --> 00:21:40,008 обеспечивающих машинное обучение. 417 00:21:40,258 --> 00:21:44,304 Предположим, из-за недосмотра, ни на одной из фотографий вечеринок 418 00:21:44,387 --> 00:21:46,639 нет людей с темным цветом кожи. 419 00:21:47,057 --> 00:21:49,434 Компьютер может решить, что это правило — 420 00:21:49,517 --> 00:21:52,562 приглашать на вечеринки только белых и азиатов. 421 00:21:52,812 --> 00:21:55,982 Среди программистов много белых и азиатов. 422 00:21:56,232 --> 00:22:01,237 Обязательно нужно расширять круг создателей. 423 00:22:01,321 --> 00:22:02,447 По многим причинам. 424 00:22:02,530 --> 00:22:05,325 Чем разнообразнее их опыт, тем лучше будут их вопросы. 425 00:22:05,492 --> 00:22:08,828 Допустим, вы загружаете в систему машинного обучения 426 00:22:08,912 --> 00:22:10,622 данные судебной системы, 427 00:22:10,705 --> 00:22:13,208 в которой присутствует структурный расизм. 428 00:22:13,291 --> 00:22:15,668 Допустим, программисты машинного обучения — 429 00:22:15,752 --> 00:22:17,170 как реклама «Benetton». 430 00:22:17,253 --> 00:22:22,384 Разные расы, разные лица, разные социальные происхождения. 431 00:22:22,634 --> 00:22:25,303 Система всё равно будет учится на тех данных. 432 00:22:25,387 --> 00:22:27,722 Если мы не будем активно это исправлять, 433 00:22:27,806 --> 00:22:31,726 исторические данные приведут к тому, что мы будем повторять ошибки прошлого. 434 00:22:33,812 --> 00:22:36,481 История кодирования построена на людских амбициях 435 00:22:36,564 --> 00:22:38,358 и креативности. 436 00:22:38,566 --> 00:22:41,528 Запуск ракеты «Falcon 9». 437 00:22:41,611 --> 00:22:44,030 Мы видели то, что считалось невозможным увидеть. 438 00:22:44,989 --> 00:22:46,032 Черную дыру. 439 00:22:46,366 --> 00:22:47,826 Мы строим новый мир, 440 00:22:48,284 --> 00:22:50,203 наполненный интуитивными инструментами, 441 00:22:50,286 --> 00:22:52,122 которые многие могут использовать 442 00:22:52,664 --> 00:22:55,750 для того, чтобы мир стал лучше. 443 00:22:56,126 --> 00:23:00,088 Мы прошли долгий путь, чтобы сделать компьютеры доступнее для людей, 444 00:23:00,171 --> 00:23:02,382 для большого числа людей. 445 00:23:02,507 --> 00:23:07,178 За последние 50 лет перед нашими глазами произошла революция. 446 00:23:07,262 --> 00:23:09,722 Вот почему так здорово жить сегодня. 447 00:23:09,973 --> 00:23:13,977 Очень важно помнить, что всё, что вы используете на своем компьютере, 448 00:23:14,227 --> 00:23:16,146 было создано человеком. 449 00:23:17,063 --> 00:23:18,189 Возможно, вами. 450 00:23:18,273 --> 00:23:21,317 И очень важно, чтобы вы стали одним из этих людей. 451 00:23:21,401 --> 00:23:24,154 Вы можете коренным образом изменить мир. 452 00:23:24,571 --> 00:23:28,158 Этим миром всё больше и больше будут управлять 453 00:23:28,241 --> 00:23:32,162 при помощи машинного обучения, данных и традиционного кодирования. 454 00:23:32,662 --> 00:23:34,998 Наш долг, как общества, сказать: 455 00:23:35,081 --> 00:23:37,584 «Ладно! У нас есть новая мощная технология. 456 00:23:38,251 --> 00:23:43,089 Всё может быть замечательно. Но оно не станет таким само по себе». 457 00:24:09,240 --> 00:24:11,576 Перевод субтитров: Ксения Гребеникова