Незаслуженно забытые герои Computer Science
В IT все знают про Тьюринга, Страуструпа, Ритчи и Торвальдса. Эти люди много сделали для становления компьютерной науки. Но, как и везде, в IT-индустрии есть свои невоспетые герои. Поэтому в этой подборке мы решили рассказать об ученых и инженерах, которые внесли большой вклад в развитие Computer Science, но которых нечасто вспоминают на Хабре.
Жан Бартик (Jean Bartik)
Была в числе программистов первого полностью электронного компьютера ENIAC. Разработала и описала ряд фундаментальных понятий программирования.
Жан Дженнингс Бартик (Jean Jennings Bartik) скончалась в 2011 году в возрасте 86 лет. Она была последней из шести женщин, которые отвечали за программирование устройства, известного как первый в мире полностью электронный компьютер.
Проект ENIAC (Electronic Numerical Integrator and Computer) создавался в Университете Пенсильвании по заказу армии США для расчета траекторий полета баллистических ракет и других снарядов. Разработка началась в 1942 году, а в 1945 компьютер уже приступил к работе. Предложенные его создателями идеи в дальнейшем стали базой для построения гораздо более совершенных электронно-вычислительных машин.
После ввода ENIAC в строй в лучах славы купалась и сама машина, и разработавшие ее конструкторы. Никто ничего не знал только о программистах, которые сыграли в проекте не менее важную роль. «В течение многих лет мы отмечали тех, кто построил ENIAC, а не тех, кто запрограммировал его», — признал Дэвид Гриер (David Grier), специалист по истории технологии в Университете Джорджа Вашингтона и вице-президент журнала IEEE Computer Society.
В 1955 году ENIAC заменили более мощные и совершенные машины. Но первый компьютер успел сделать много важной работы, причем не только для военных: на нем рассчитали аэродинамику сверхзвукового крыла (1946), число «пи» с точностью до 2000 знаков после запятой (1949) и выполнили первый успешный прогноз погоды (1950).
Бартик продолжила свою карьеру в различных технических компаниях в качестве писателя, менеджера, инженера и программиста. Ее достижения были признаны через много лет после завершения работы над ENIAC. В 2009 году она получила премию «Pioner Award» от журнала IEEE Computer Society и была назначена членом научного общества Музея компьютерной истории в городе Маунтин-Вью (Mountain View) штата Калифорния.
Мартин Гетц (Martin Goetz)
Разработчик и продакт-менеджер из Applied Data Research. Сыграл важную роль в определении статуса программного обеспечения как самостоятельного продукта.
В 1959 году компания Applied Data Research (ADR), в которой работал Мартин Гетц, получила заказ написать алгоритм Autoflow, предназначенный для создания блок-схем, которые документировали структуру других компьютерных программ. В то время программного обеспечения со стандартным набором функций для широкого круга пользователей еще не существовало. Оно разрабатывалось на заказ для каждого клиента и предоставлялось бесплатно в комплекте с оборудованием.
Работа была выполнена, но заказчик с исполнителем не сошлись в цене. Тогда в ADR доработали решение и попытались реализовывать его самостоятельно. Однако продаж было мало: пользователи ждали бесплатного продукта с аналогичной функциональностью, выпуск которого планировался в IBM.
Желая не допустить выхода на рынок бесплатного аналога, разработчик Мартин Гетц из ADR подал заявку на патент ПО и в 1968 году первым в истории получил его. Так программное обеспечение превратилось в самостоятельный продукт. С этого момента началась эпоха коммерциализации в индустрии разработки.
В 2007 году Computerworld признал Гетца «незамеченным новатором» в компьютерной индустрии. Mainframezone.com назвал его «отцом стороннего программного обеспечения».
Applied Data Research принято считать первым независимым поставщиком ПО. В настоящее время компания является одним из подразделений CA Technologies.
Андрей Петрович Ершов
Академик АН СССР. Создатель термина «информатика». Впервые предложил ряд понятий, подходов и методов, которые стали классическими в теории компиляции.
Язык программирования АЛЬФА и оптимизирующий Альфа-транслятор, многоязыковая система программирования БЕТА, первая советская система разделения времени АИСТ-0, система учебной информатики Школьница, система подготовки печатных изданий Рубин, многопроцессорная рабочая станция МРАМОР – все эти проекты были инициированы Ершовым и выполнялись под его руководством. Он ввел в научный оборот термин «информатика» для обозначения науки, связанной со способами обработки, хранения и передачи информации с помощью ЭВМ.
Книга Андрея Ершова «Программирующая программа для электронной вычислительной машины БЭСМ», изданная в 1958 году, стала одной из первых в мире монографий по автоматизации программирования. Он был первопроходцем на ниве компиляции (его «программирующие программы» — это фактически компиляторы). Ершов занимался смешанными вычислениями: тем, что сейчас называется «суперкомпиляция». Ему принадлежит идея о сведении задачи распределения регистров к раскраске графа — то есть к той форме, которая используется в большинстве оптимизирующих компиляторов сегодня.
В 1960-е годы Ершов вместе с коллегами начал эксперименты по преподаванию программирования школьникам, что привело к созданию государственной программы по введению курса информатики и вычислительной техники в средние школы.
В 1974 году Андрея Ершова избрали Выдающимся членом Британского вычислительного общества (British Computer Society). В 1980 году за значительный вклад в работу Международной федерации по обработке информации (IFIP) он был награжден Почетным знаком IFIP «Серебряный сердечник (Silver Core)».
Роберт Кан (Robert Kahn)
Один из разработчиков протокола TCP/IP. Организовал первую публичную демонстрацию сети ARPANET, которая стала прототипом современного Интернета.
Осенью 1972 года на Международной конференции по компьютерным коммуникациям Роберт Эллиот Кан (Robert Elliot Kahn) продемонстрировал работу сети ARPANET, соединив в нее порядка 50 компьютеров. Представляя возможности новой технологии публике, Кан был уверен в том, что социальные последствия деятельности в этой области представляют интерес практически для всех сфер жизни общества.
Проект ARPANET финансировался Управлением перспективных исследовательских проектов (Advanced Research Projects Agency, ARPA), подчиненным Министерству обороны США. Правительство наняло для разработки компанию Bolt Beranek & Newman (BB&N) — инженерно-консалтинговую фирму, в которой Кан трудился в должности старшего научного сотрудника.
Демонстрация, проходившая в отеле Hilton Washington, имела умопомрачительный успех. Мероприятие продолжалось два с половиной дня. В нем приняли участие сотни людей, в том числе инженеров и технических специалистов. Возможность подключиться к сети была у каждого желающего. Пресса назвала конференцию «решающим событием, которое заставило широкий круг людей осознать, что совместное использование ресурсов в сети — это реально».
Дальнейшее развитие ARPANET требовало поддержки связи между разными сетями. Чтобы решить эту проблему, Роберт Кан разработал новую версию протокола передачи данных. 1 января 1983 года сеть перешла на TCP/IP (Transmission Control Protocol/Internet Protocol). Новый протокол был принят как международный стандарт, и теперь он лежит в основе работы всего Интернета.
В 2004 году за работу над TCP/IP Роберту Кану и его коллеге Винтону Серфу была вручена премия AM Turing Award.
Линн Конвей (Lynn Conway) и Карвер Мид (Carver Mead)
Пионеры современной микроэлектроники. Авторы работы «Введение в проектирование больших интегральных микросхем» (1980).
До конца 1970-х годов проектирование микросхем было сугубо инженерным процессом, а знания о нем — по большей части прикладными.
Профессор Калифорнийского технологического института Карвер Мид первым осознал, что необходимо отделить проектирование от производства и выделить автоматизацию проектирования электроники (Electronic Design Automation, EDA) в самостоятельную дисциплину. Работа «Введение в проектирование больших интегральных микросхем» (Introduction to VLSI Design), написанная им в 1980 году в соавторстве с Линн Конвей, привела к так называемой «революции Mead & Conway». С нее началось «научное проектирование» больших интегральных схем.
Методика, предложенная Мидом и Конвей, решала не только техническую проблему. Она ставила целью создать сообщество инженеров, работающих по-новому.
Авторы «Введения в проектирование больших интегральных микросхем» предвосхитили так называемый «базарный» подход к программированию (the bazaar), о котором в 1999 году напишет Эрик Реймонд в книге «Собор и базар» (The Cathedral and the Bazaar). Конвей впервые выдвинула идеи о вовлечении максимально возможного числа участников, разработке и отладке в параллельном режиме и быстрой обратной связи с пользователями (непрерывных сообщениях о замеченных ошибках и сделанных улучшениях).
В силу различных обстоятельств этот аппаратный the bazaar тогда не смог состояться — прогресс пошел по линии универсальных микропроцессоров и монопольного господства одной последовательной схемы, что привело к концентрации производства в руках ограниченного числа поставщиков.
Конечно, это далеко не все важные люди, в один список всех не уместишь — поэтому дополняйте в комментариях.
Хотя перечисленные имена не на слуху, результаты их работы продолжают сказываться и сегодня. Например, Иван Углянский @dbg_nsk объяснял нам, откуда в Новосибирске взялись IT-компании, готовые спускаться на низкий уровень: «В Академгородке зародилась компиляторная школа Андрея Ершова, и её наследники до сих пор работают в таких вот конторах».
Сам Иван в докладе на нашей Java-конференции тоже спускался на низкий уровень, предлагая джавистам попасть в мир нативного кода. Если вам интересно подобное, обращаем внимание: на JPoint (25-28 апреля) тоже наверняка не обойдётся без какого-нибудь хардкора. А если вы не джавист, посмотрите на другие наши весенние конференции, там есть что-то для всех от тестировщиков до дотнетчиков.