Top.Mail.Ru
Истории

Дональд Кнут – Йода Кремниевой долины

Истории
Анна Самойдюк
Анна Самойдюк

Ex-редактор направления «Истории».

Анна Самойдюк

Дональд Кнут, отец алгоритмов, рассуждает о труде своей жизни «Искусство программирования». Публикуем сокращенный перевод статьи The New York Times.

Дональд Кнут – Йода Кремниевой долины

На протяжении полувека стэнфордский информатик Дональд Кнут, чем-то напоминающий Йоду из «Звездных войн», правил алгоритмическим царством. Он написал книгу «Искусство программирования» – четырехтомный труд, являющийся работой всей его жизни. Многие называют ее Библией информатики. «Как и настоящая Библия, она длинная и всеобъемлющая. Другой такой книги нет», – сказал Питер Норвиг, директор исследований в Google. Первый том заканчивается цитатой Билла Гейтса: «Если вы смогли дочитать это до конца, вы определенно должны отправить мне свое резюме».

Внутри нее описаны алгоритмы – рецепты, которые кормят цифровую эпоху. Кнут – уважаемый алгоритмист; его имя связывают с самыми важными достижениями науки, такими как алгоритм Кнута-Морриса-Пратта, который осуществляет поиск подстроки в строке.

Фото: Джилл Кнут. Дональд Кнут в Калифорнийском технологическом институте, где он защитил докторскую диссертацию.

Сейчас ему 80 лет. В свое время он работал в непосредственной близости с машиной – писал в бинарном коде.

«Кнут показал нам всем, что систему можно понять даже на машинном уровне», – сказал Норвиг. Сегодня, конечно, среднестатистический программист больше не вынужден писать в бинарном коде, вместо этого он работает с иерархиями абстракции, слоями кода, части которого он заимствует из библиотек. Тем не менее, некоторые разработчики иногда все же заходят дальше.

Ученый ввел понятие «грамотное программирование», отметив важность написания кода, читаемого как людьми, так и машинами. Он также известный перфекционист. Кнут платит деньги каждому, кто найдет ошибку в любой его книге.

Строгие стандарты ученого могут объяснить, почему труд всей его жизни еще не закончен. Он заключил пари с Сергеем Брином, сооснователем Google и его бывшим студентом, по поводу того, кто первым закончит свою научную работу – Брин диссертацию или Кнут книгу?

Рассвет алгоритмов

В 19 лет Кнут опубликовал свою первую техническую работу в журнале Mad. Он стал информатиком до того, как появилась эта дисциплина, еще когда изучал математику в Кейсовском технологическом институте. Он смотрел на программы для мейнфрейма IBM 650, и заметив некоторые недостатки, переписал ПО, а также учебник для курса.

Фото: Джилл Кнут

За летние каникулы Кнут зарабатывал больше, чем профессора за год, тем, что писал компиляторы. Компилятор – что-то вроде переводчика; он переводит высокоуровневый язык программирования в низкоуровневый.

В итоге Кнут сам стал компилятором, случайно основав новую область наук под названием «Анализ алгоритмов». Он должен был написать книгу о компиляторах, но она превратилась в работу, в которой были собраны все его знания о написании кода для компьютеров – книгу об алгоритмах.

Выход нового тома планировался на Рождество, но его придется перенести, поскольку Кнут постоянно находит новые проблемы, которые хочет рассмотреть подробнее.

Чтобы побыстрее закончить труд, он освободил все свое время: в 55 лет он вышел на пенсию, ограничил все свои публичные обязательства и отказался от имейлов.

Раньше Кнут принимал студентов по утрам в пятницу, пока не начал проводить ночи в лаборатории Джона Маккарти, где у него был доступ к компьютерам. Тогда он, ужаснувшись от того, как физически выглядела его книга, решил создать систему компьютерной верстки TeX, которая по сей день является золотым стандартом для всех форм научных коммуникаций и публикаций. Некоторые считают ее самым важным вкладом Кнута в типографию со времен Гутенберга.

Фото: Bettmann, via Getty Images

«Я никогда не буду знать всего. Моя жизнь была бы намного хуже, если бы я знал ответы на все и если бы я не мог ответить ни на один вопрос».

Пазлы и игры – вещи, которые очень нравятся ученому. Один из разделов его книги называется «Пазлы против реального мира». Он отправил по электронной почте выдержку из своей работы художнику Мартину Демейну и его сыну и информатику Эрику Демейну, поскольку написал об их алгоритмических шрифтах-головоломках.

«Для меня большая честь быть упомянутым в его книге», – поделился Эрик Демейн.

Конечно, вся эта алгоритмическая суета также вызывает и реальные проблемы. Алгоритмы, написанные людьми, которые с каждым разом решают все более сложные проблемы, но производят код с багами и предвзятостью, довольно проблематичны. Возможно, еще большую тревогу вызывают алгоритмы, написанные не людьми, а машинами.

Программисты все еще обучают машины и кормят их данными. Однако Кевин Славин, научный сотрудник медиалаборатории Массачусетского технологического института сказал: «Сейчас мы пишем алгоритмы, которые не можем прочитать. Мы переживаем уникальный момент в истории, где мы подвержены идеям и действиям физики, имеющим человеческое происхождение, но не обладающим человеческим пониманием».

Фото: Джилл Кнут

«Сегодня программисты используют то, что создали Кнут и другие, в качестве компонентов своих алгоритмов, а затем добавляют другие необходимые им вещи и объединяют это все в одно целое», – сказал Норвиг.

«С ИИ все то же самое. Просто часть, где все объединяется в одно целое, делается автоматически на основе данных, а не работы программиста. ИИ должен объединять компоненты для получения хорошего ответа, основываясь на данных. Но вам решать, какими будут эти компоненты. Возможно, это будет страница или глава из книг Кнута, потому что это лучший способ выполнить работу», – продолжил он.

А пока Кнут предполагает, что до завершения книги еще примерно 25 лет, хотя это прогнозируемое число не менялось с 1980 года.  Получат ли алгоритмы, пишущие алгоритмы, собственную главу или страницу в его эпилоге? «Определенно, нет», – сказал Кнут.

«Я переживаю, что алгоритмы сейчас играют слишком заметную роль в мире, – добавил он. – Сначала информатики переживали, что их никто не слушает. Теперь я переживаю, что нас слушают слишком много людей».

Источник. 


Материалы по теме:

50 лет назад «Мать всех демонстраций» Дугласа Энгельбарта навсегда изменила технологии

Суат Топсу – человек, который хочет подключить к интернету все человечество

10 уроков из жизни основоположника теории информации

Алан Тьюринг и его влияние на искусственный интеллект

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 Кто публикует самые важные научные исследования в AI?
  2. 2 Реально смотреть на продукт и его потенциал — как в этом поможет STS
  3. 3 Российские школьники победили на международной олимпиаде по химии в Казахстане
  4. 4 Подружить физиков и биологов: как синхронизировать научную команду за 5 шагов
  5. 5 «Почему у нас получился диптех-стартап, а у вас не получится» — опыт компании, которая привлекла 500 млн рублей
FutureFood
Кто производит «альтернативную» еду
Карта