13 декабря — день памяти русского ученого и изобретателя, чьим желанием было подарить человечеству программирование и сделать это бескорыстно, без прибыли и славы. Его желание сбылось — мир получил программирование, а его имя оказалось в тени. Однако негоже держать светильник под кроватью, и нет ничего тайного, что не стало бы явным.

Семён Николаевич Корса?ков (25 января 1787 —13 декабря 1853) — первый русский программист и изобретатель программирования. Самое поразительное, что его понимание программирования остается правильным и важным до сих пор.
 
С.Н. Корсаков — русский дворянин, военный (участник Отечественной войны 1812-1813 гг.), чиновник, составитель лекарств, учёный и изобретатель. Родился в Херсоне, жил и работал в Санкт-Петербурге, упокоился на московской земле, близ городов Димитров и Та?лдом.
 
11 сентября 1832 года Корсаков отправил прошение в Санкт-Петербургскую Императорскую академию наук (ИАН), чтобы та рассмотрела:

  1. открытия программирования и
  2. языка программирования,
  3. а также изобретение баз данных,
  4. программ и
  5. машин, выполняющих умственную работу — умственных машин.

В своём обращении Корсаков подчеркивал, что не ищет славы или иных выгод, вытекающих из его открытий и изобретений, и желает только послужить людям.
 
13 сентября 1832 года Корсаков издал первую книгу по программированию: «Начертание нового способа исследования при помощи машин, сравнивающих идеи».

24 октября 1832 года комиссия ИАН отклонила изобретение Корсакова как бесполезное, добавив к этому уничижительную приписку: «Г-н Корсаков потратил слишком много разума на то, чтобы научить других обходиться без разума.» Горько, опрометчиво, однако правдиво — «слишком много разума» для судивших его открытие академиков (Остоградский, Купфер, Паррот, Брандт). «Выгнали из Академии наук за слишком много разума».
 

Судьба программирования


Только один из академиков ИАН, английский математик Чарльз Бэббидж, оценил работу Корсакова в достаточной мере, чтобы отказатся от первого дела своей жизни — большой разностной машины (1822-1834) — и с 1833 года до самой смерти работать над замыслом «аналитической машины», которая в будущем стала «компьютером». В историю Бэббидж вошел как «отец компьютера».
 
Бэббидж сохранил название «умственная машина» («аналитическая» и «умственная» — синонимы), но скрыл источник своего вдохновения и основной посыл Корсакова — помощь людям. «Умственные машины» Корсакова были доступны — недороги и помещались на столе. «Аналитическая машина» Бэббиджа должна была весить 14 тонн. Никакой помощи людям она не могла бы оказать даже теоретически, а практически так и не была построена.
 
Замысел Бэббиджа воплотился только через 113 лет. Построенная наконец машина была названа просто «вычислительной» (1946, ЭНИАК, К — компьютер) и весила уже 30 тонн. Официальная наука представляет это великим достижением, но на деле ЭНИАК был совершенно бесполезен. Его задачей полагался расчёт таблиц стрельбы для открытия Второго фронта (1944 год), что в 1946 уже не требовалось. Остальные «достижения» были в том же духе.
 
В 1950 году задачу оправдания бесполезных многотонных компьютеров «успешно» «решил» другой английский математик — Алан Тьюринг. Он предложил считать, будто «компьютер мыслит», и поэтому в будущем сможет принести много пользы. Это «решение» отдалило программирование от людей ещё больше, чем вес и цена 30-тонных компьютеров, поскольку в таком извращенном виде понять его могли только люди с очень особенным мышлением, в основном, математики.
 
Пользу программирование принесло, и огромную, но не благодаря, а вопреки усилиям Бэббиджа и Тьюринга.

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

Именно поэтому возвращение к учению Корсакова так важно и современно.

Простое программирование


Программирование Корсакова было простым, понятным и полезным. В его книге всего 20 страниц, включая рисунки и описания машин, и будет несложно пересказать её современных языком, уделив по несколько слов каждому из изобретений.  

1. Программирование


  Корсаков ясно и чётко обосновал программирование пятью предложениями:
 
1. Разделим умственное и механическое
 
«Человек мыслит, но действия его носят механический характер: он приказывает, и его ноги идут, а руки двигаются. „

2. Выделим главное для ума — письменность
 
“Письмо хранит память обо всех фактах […], и даёт возможность подвергнуть их постоянному и обдуманному сопоставлению, благодаря чему оно стало первой главной основой человеческой цивилизации.»

3. Укажем недостаток письменности — немеханичность
 
«Несмотря на все неоценимые преимущества письма, даже на сводные таблицы […], эти средства всё ещё недостаточны для немедленной выдачи подробного результата.»

4. Создадим механическую письменность — программирование
«В то же время, такой результат возможно получить, сочетая принцип сводных таблиц с механическим подходом.»

Письмо доступно только уму. Только человек может взять книгу, найти в ней нужны сведения и сделать выводы.

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


Предложения Корсакова можно обобщить в определение по существу:
 
Программирование — это механическая запись мысли для помощи людям в выполнении умственной работы.
 
И если, по слову Корсакова, грамота, была первой главной основой человечества, без которой нельзя представить прошлое, то программирование стало его второй главной основой, без которой не представить настоящее и будущее.
 
Чтобы не мешать всё в кучу, оставим самое важное, а остальные вопросы книги Корсакова отложим до следующей статьи.
 
Светлая память Семёну Николаевичу Корса?кову.

Комментарии (5)


  1. nikbond
    13.12.2019 17:07
    +2

    Смутила последняя таблица. А почему именно Си, а не, например, Фортран за 20 лет до него?
    Что за «Прикладные программы» открывшие в 80-х?

    И, если честно, в целом выглядит как некий срыв покровов с претензией на сенсацию. Неплохо было бы указанные в статье тезисы перепроверить.


  1. staticlab
    13.12.2019 17:42
    +1

    В упомянутой книге Корсакова никаким образом не говорится ни об алгоритмизации, ни о машинах, управляемых алгоритмами. Он просто придумал механические устройства, позволяющие отобрать все перфокарты с определённым полем. Да, он был одним из первых, кто придумал использовать перфокарты для автоматизированной обработки информации, но это далеко не программирование. Даже изобретатель перфокарт — Жаккард — и то больший "программист".


    1. mikkoljcov Автор
      13.12.2019 18:33

      Приведенные цитаты Корсакова только и говорят, что такое новоязная «алгоритмизация». А иначе «программирование — это написание программ», а «алгоритм — это набор команд».


      1. staticlab
        13.12.2019 18:41

        Нет. Идея Корсакова была в том, чтобы облечь данные в машиночитаемый ("механический") вид. Это собственно позволит создать машины, которые будут помогать обрабатывать такую информацию. Речь идёт только о данных. Таким образом, ваша 4-я посылка — "Создадим механическую письменность — программирование" — не соответствует действительности. Даже в отрыве от контекста очевидно, что машиночитаемое представление данных не есть программирование.


  1. atpshnik
    16.12.2019 07:56

    На чём основано утверждение что Бэббидж вдохновился именно работой Корсакова если он это скрыл. Звучит как-то по Киселёвски.