Ада Лавлейс: математик и первый в мире программист

АвторAlexandr Ivanov
РубрикаКультура
ДАТА ПУБЛИКАЦИИ10 марта 2024
ВРЕМЯ ПРОЧТЕНИЯ 5 min.

Ада Лавлейс: математик и первый в мире программист

Высшее лондонское общество заранее предвкушало скандал, когда две странные и видные особы – экстравагантный лорд Байрон, смутьян, поэт и романтик, луддит и дэнди, и Анна Изабелла Милбенк, дочь богатого баронета, внучка и наследница лорда Уэнтворта, религиозная и благовоспитанная девушка, безумно увлеченная математикой, сообщили о своем браке.

Опасения света оправдались: очень скоро за браком последовал развод, и Байрон оставил свою жену с только родившейся дочерью, которую, как покажет будущее,  видел в своей жизни всего раз. Дочь, названная по желанию отца Адой («имя древнее и короткое»), росла с матерью, с ранних лет старательно нагружавшей дочь учебой (элементарной математикой в том числе). В юности Ада серьезно болела и три года провела в постели.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Джордж Гордон Байрон и Анна Изабелла Милбенк

В 17 лет Ада приезжает в Лондон, её представляют ко двору, но это значительное событие затмевает  происшествие более важное: она знакомится с Чарльзом Бэббиджем, которого потомки помнят как математика, хотя это был чрезвычайно разносторонний человек с очень широким кругом интересов.

Бэббидж делится с ней возможностью создания   разностной машины, то есть механизма, который производит некоторые вычисления. Наверное, Ада была отличной и увлеченной слушательницей, и Бэббидж пускается в довольно пространные объяснения, детально рассказывая о математике. Собственно, эта встреча и изменила жизнь Ады, положив начало делу, которое выведет её в число известнейших людей в истории.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Чарльз Бэббидж и прототип его разностной машины – тот самый, которым он изумлял своих гостей. Надо сказать, что гостей Бэббидж очень любил, его дом был, кажется, одним из самых важных научных и культурных салонов своего времени, среди его гостей – все лучшие умы эпохи, в том числе Фарадей, Диккенс, Дарвин, близкие друзья Бэббиджа

Ада воспылала страстью к математике, к тому же выяснилось, что у неё был к этой науке совершенно очевидный талант. Девушке не пристало посещать университет, и она берет частные уроки у профессоров, которые подтверждают: Ада  способна и, пожалуй, даже несколько более того (слово «талантлива» в отношении девушки, изучающей математику, применять в ту пору было неловко).

Пока Ада изучает математику, Бэббидж занимается разработкой своей разностной машины, идею создания которой он привез еще в 1819 году из поездки во Францию – французское правительство тогда начало огромный проект по созданию математических таблиц, бывших весьма популярными, особенно в военном, строительном и навигационном деле, где ошибка в вычислениях обходилась очень дорого. Над составлением таблиц трудилось огромное количество людей, называемых «вычислителями» – не бог весть как оплачиваемая, но весьма уважаемая профессия.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Устройством для счета человечество занималось всегда. В 1622 году математик Уильям Отред придумал логарифмическую линейку, которая выглядела вот так

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

Бэббидж, к несчастью, проявил себя плохим организатором: он то передоверял работу нанятым инженерам, то цеплялся за каждую мелочь, тормозя принятие решений. Он умудрился рассориться со всеми участниками проекта и менял главных инженеров несколько раз (с одним из уволившихся вообще вел бесконечный патентный спор). Постоянно отвлекаясь и работая урывками, Бэббидж, однако, в 1832 году создает небольшой действующий прототип — именно эту машину он, в то время 41-летний вдовец с восемью детьми, и покажет Аде год спустя.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Чарльз Беббидж и Ада Лавлейс. В наше время фантазеры увлеченно сочиняют байки о якобы романтических их отношениях, что, конечно, маловероятно. Разница в возрасте все-таки была огромной, да и сами детали биографии героев (и гигантское количество сохранившихся писем друг другу, от пространных и многостраничных до коротеньких записочек) не оставляют места для таких выдумок

Автор увлеченно развлекает своих гостей демонстрацией прототипа, но его цель — создание большой разностной машины. Она должна состоять из 25 тысяч деталей и весить почти 14 тонн. Изучая математику, Ада продолжает регулярно общаться с Бэббиджем, и он постепенно посвящает её во все тонкости, связанные с его детищем. В личной жизни у нашей героини тоже перемены: в 1835 году она  выходит  замуж,  и, судя по всему, брак её с лордом Уильямом Кингом оказывается счастливым. Три года спустя Уильям был удостоен графского титула, и Ада стала графиней Адой Лавлейс – именно под этим именем она и вошла в историю.

Семейные дела не очень располагают к занятиям математикой, и, хотя Ада не оставляет их, но всерьез возвращается к учебе только в 1838 году, после рождения третьего ребенка.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Английский парламент викторианской эпохи

Тем временем Бэббидж израсходовал выделенные парламентом деньги, но его машина так и не работает. Он просит дополнительные ассигнования, показывает в парламенте свои чертежи и расчеты, заверяя, что на этот раз все непременно получиться. В своих идеях он идет дальше, понимая, что способен создать машину, которая не просто высчитывала бы разницу чисел, но и была способна производить сложные вычисления (речь идет уже не о разностной машине, а о машине аналитической). Он узнает об изобретении француза Жаккарда, создавшего еще в 1801 году ткацкий станок, программируемый перфокартами. Проведя некоторые эксперименты, он понимает, что нашел способ управления аналитической машиной. Но ничего не выходит: парламентарии оттачивают на Бэббидже и его детище свое остроумие, тема разностной машины –прекрасная мишень для шуток. Денег парламент больше не выделяет.

Однако идея становится популярной уже во всем мире, и однажды Бэббиджа приглашают выступить с лекциями в Турине. Там же он проводит много часов в разговорах о своей машине в компании с Луиджи Менабреа, военным инженером, который 27 лет спустя станет премьер-министром Италии. Менабреа вдохновила идея создания машины Бэббиджа, и несколько позже (это уже октябрь 1842 года) он опубликовал статью на французском языке, где описал ее.

Бэббидж не знает французского, и Ада берется перевести эту статью для него, но… собственно, вот тут и происходит волшебство: Ада, найдя статью Менабреа неполной, сообщает Бэббиджу, что хочет дополнить её своими расчетами. В то время Бэббидж уже вполне доверяет миссис Лавлейс  как прекрасному математику и соглашается.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Страница из работы Ады Лавлейс

Дело занимает Аду всерьез, с  Бэббиджем она в постоянной переписке в режиме, как мы сказали бы сейчас, мессенджера, отправляя и получая по нескольку писем ежедневно. Если мощности почты не хватало, с записками посылали слуг.  Аде помогает муж, переписывая её черновики начисто, но все равно даже при такой интенсивной работе финальный вариант появляется только в июле 1843 года. В нем математики особо отмечают  вычисления чисел Бернулли, представляющие из себя довольно детальное описание сложного кода. Статья, вышедшая из-под пера Ады Лавлейс, по сути явилась первым в истории программным кодом, а её автора вполне по делу называют первым в истории программистом.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Первая в мире промышленная выставка в Лондоне, 1851 год. Ее посетили Бэббидж и Ада Лавлейс, а муж Ады получил премию за свою статью о выращивании свеклы. Впрочем, наших героев интересовали прежде всего передовые достижения в области механики и математике. Известно, что они имели обстоятельный разговор с Джорджем Булем, автором двоичного кода (Ада использовала для программирования довольно неудобный десятиричный), а также внимательно изучали электромеханическое устройство телеграфа (с его изобретателями Куком и Уотсоном Бэббидж знаком был и раньше), обменявшись мнениями о применении электричества для аналитической машины. К сожалению, для Ады Лавлейс это был последний выход в свет, через несколько месяцев она умерла.

Плотная работа над статьей и общение с Бэббиджем привело Аду к мысли самой заняться проектом разностной машины, и она (к её собственному удивлению, поскольку в такой исход ей не слишком верилось) смогла убедить в этом Бэббиджа. Новая конструкция компании предполагала, что Ада возьмет на себя руководство созданием машины, а Бэббидж станет главным инженером.

Идея самой машины к тому времени претерпела изменения: кроме того, о чем говорилось выше, в конструкции теперь не 25, а всего лишь 8 тысяч деталей, что повышает её надежность. Понимание возможностей программирования, как кажется участникам проекта, сильно приближает их к цели. Детали машины обсуждены и выполнены в чертежах. Её блоки, по сути, совпадают с современными компьютерами: Бэббидж различает store (сейчас мы называем его «склад» памятью), mill (процессор), control (управление) и устройство ввода и вывода информации.

Ада Лавлейс: математик и первый в мире программист | London Cult.
«Разностная машина – 2 Чарльза Бэббиджа «, согласно планам и чертежам, должна была выглядеть как-то вот так  – размером с локомотив

Казалось, в новом виде компания могла стать успешной, но Аду настигла болезнь, которая не позволила ей заняться проектом. В 1852 она скончалась от рака в возрасте 36 лет.

Бэббиджа губит избыточная разносторонность его талантов (он придумывает водолазный колокол, спидометр и тахометр, офтальмоскоп и сейсмограф, участвует в реформе почты, придумывает путеочиститель, пишет замечательный труд Economy of Machines and Manufactures, занимается металлургией и изготовлением станков  – список его достижений необыкновенно велик, одно их описание займет немало места), и к своей аналитической машине он больше толком не вернется.

Ада Лавлейс: математик и первый в мире программист | London Cult.
Первый программист в мире — Ада Лавлейс

В 1991 году Лондонский научный музей по чертежам Бэббиджа построил Большую разностную машину -2. Её создание обошлось музею примерно в $2 млн, что соответствует тем 17,5 тысячам фунтов середины XIX века, которые Бэббидж просил, но так не получил у английского парламента. Машина вполне исправно работает и выполняет все функции, которые были заложены её изобретателем. Разумеется, она работает на программах, созданных Адой Лавлейс, женщиной-математиком и первым в истории программистом.

Читайте также