О восстановлении исторической правды

Вторая редакция статьи Руслана Богатырева «США и Европа. Две культуры программирования» (https://teletype.in/@pantheon/2024-02-20) была опубликована 20 февраля 2024 г. В ней, в частности, рассказывается об историческом визите Никлауса Вирта в Россию в 2005 г.

В статье во втором абзаце сказано: «Первого сентября прямым рейсом из Цюриха в аэропорт Пулково С.-Петербурга прибыла швейцарская делегация в составе профессоров ETH Zurich Никлауса Вирта и Юрга Гуткнехта, которую встречал профессор А. А. Шалыто со своими коллегами из ИТМО. Так начиналось Большое турне Вирта по России. За три с небольшим недели он посетил ведущие университетские центры страны: С.-Петербург, Москву, Нижний Новгород, Екатеринбург, Новосибирск, Томск».

Первое предложение в этом абзаце содержит фактическую ошибку: профессор Шалыто и его коллеги из ИТМО не встречали дорогих гостей в аэропорту.

Действительно, я по совету Руслана принимал участие в организации этого визита (https://teletype.in/@pantheon/2024-02-15), но так как гости были «золотыми», то предложил организовать его визит в нашем городе Санкт-Петербургскому филиалу компании Borland, разработавшей компилятор с «Паскаля» (Turbo Pascal) (https://ru.wikipedia.org/wiki/Turbo_Pascal) интегрированную среду разработки ПО и язык программирования для этой среды, который является диалектом языка «Паскаль», созданного Виртом.

Компания любезно согласилась, создала программу визита, в которой за ИТМО остались только встреча со студентами, на которой классику должны были быть вручены атрибуты «Почетного доктора Университета ИТМО» (https://is.ifmo.ru/doctors/). Это было согласовано с Виртом заранее, как и последующая пресс-конференция. По программе аэропорт был за Borland.

До визита классика после моего представления Ученый совет университета избрал «Почетным доктором Университета ИТМО» лауреата премии Тьюринга 1984 г. (http://rkka21.ru/turing_award.htm) Никлауса Вирта (http://is.ifmo.ru/important/wirth/).

Торжественная встреча состоялась 13 сентября. Фотографии с этой встречи представлены здесь: http://is.ifmo.ru/photo/2005-09-13-Wirth/index.html. Среди них есть и лучшая из сделанных мной в жизни фотография: «Вирт, девушки и цветы» (http://is.ifmo.ru/photo/2005-09-13-Wirth/wirth.jpg).

После встречи были опубликованы две мои статьи, посвященные этому событию: Никлаус Вирт – почетный доктор Санкт-Петербургского государственного университета информационных технологий механики и оптики // Информационно-управляющие системы. 2005. № 5, с. 56-58 (http://i-us.ru/index.php/ius/article/view/14553) и Никлаус Вирт – почетный доктор СПбГУ ИТМО // Компьютерные инструменты в образовании. 2005. № 5, с. 3-7 (http://cte.eltech.ru/ojs/index.php/kio/article/view/958/955).

Об этом событии вышла и еще одна статья: Желвицкий Д. Проще не получается. (https://www.osp.ru/cw/2005/35/370072). В ней, в частности, сказано, что, по словам Андрея Иванова, в то время руководителя Санкт-Петербургского филиала Borland, «если бы не было Вирта, то не было бы и Borland».

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

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

Кроме изложенного, в дискуссии я задал Вирту два вопроса, которые привел в статье того времени «Писать по-русски» (https://www.itweek.ru/themes/detail.php?ID=73786): «Первый: «Как Вы считаете, мыслит ли логично человек, программирующий уже более десяти лет и сдавший несколько серьезных курсов по математике, включая логику, если в одном и том же небольшом документе он пишет то «лампа», то «лампочка», то с большой буквы, то с малой и то по-русски, а то по-английски (хорошо еще, что не по-китайски)?» Второй: «Насколько, по Вашему мнению, логично мыслит человек, который на шестнадцати страницах автореферата диссертации по программированию умудряется оформить списки практически всеми возможными способами: дефис и следом малая буква, точка и малая буква, цифра без точки и большая буква, цифра с точкой и малая буква (не правда ли, здорово: в русском языке после точки писать с маленькой буквы!) и т. д., уже не говоря о том, что каждый элемент списка может заканчиваться опять же как угодно – точкой с запятой, точкой, запятой или вообще ничем?»

Классик смутился и сказал, что его слова не надо понимать буквально.

Мне кажется, программирование учило логике при его становлении (время «расцвета» Вирта), когда считалось, что «программист – это математик, умеющий программировать» (см. Кронрод А.С. Беседы о программировании. М.: УРСС, 2001, https://is.ifmo.ru/reflections/kronrod/), а программа вводилась в вычислительную машину с помощью перфокарт, причем отладку программы можно было производить только несколько раз в неделю. В настоящее же время, как я думаю, наиболее часто используемая манера написания программ учит не логике, а разгильдяйству, когда все и всегда можно исправить. Такая манера напоминает работу плохого лектора, который одной рукой пишет формулы, а другой тут же их стирает. Это изменяет психологию многих программистов, так как при обнаружении ошибок в любой их работе они говорят: «Ну и что, ведь это же релиз».

Разгильдяйство ставит клеймо на человеке и может остановить его карьерный рост… «В некоторых школах не ставят плохих оценок и дают столько попыток, сколько Вам требуется для правильного ответа, но это ничего общего с жизнью не имеет» (Б. Гейтс). К той же тематике посвящен текст: «Можно ли попросить прощения у минного поля?» (http://is.ifmo.ru/belletristic/pole/).

После описанного я дважды встречался с Виртом в Цюрихе. В первый раз в 2009 г. в ходе поездки в ETH. Там, кстати, получил его автограф на нашей книге (https://is.ifmo.ru/autograph/thanks_autoprog/). В ходе этой поездки мы договорились, и наши ребята стали проводить тренировки по спортивному программированию для швейцарских студентов и школьников («Всемирная школа программирования чемпионов мира из Университета ИТМО», https://vk.com/@1077823-vsemirnaya-shkola-programmirovaniya-chempionov-mira-iz-unive), причем тренировали они настолько эффективно, что в 2022 г. у меня был праздник: мало того, что команда ETH в десятый раз вышла в финал, она там выступила блестяще – заняла пятое место на чемпионате мира, став чемпионом Европы!

Второй раз я видел классика в 2010 г. на юбилее Бертрана Мейера (https://vk.com/album1077823_122563144).

В феврале 2014 г. наш университет поздравил профессора Вирта с восьмидесятилетием (https://news.itmo.ru/ru/archive/archive2/news/3907/).

Первого января 2024 г. на 90-м году один из основоположников программирования профессор Никлаус Вирт ушёл из жизни (https://d-russia.ru/pamjati-niklausa-virta.html). Вечная память!

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

Если молодой IT-специалист прочтет этот текст, то я советую ему ознакомиться также и с текстом Руслана Богатырева: Никлаус Вирт. Заветы смиренного зодчего (https://teletype.in/@pantheon/2024-02-15).

Надеюсь, что после изложенного Руслан исправит свой текст, с которого все началось, и тем самым восстановит историческую правду :-).

21.02.2024. https://d-russia.ru/o-vosstanovlenii-istoricheskoj-pravdy.html

P.S. 1. «Спасибо! Было очень интересно прочитать как человеку, начинавшему с «Паскаля». Соглашусь и даже акцентирую, что бич настоящего времени, то, что «все можно исправить». Это культивируется и технологиями (от автокорректировки орфографии в ворде и T9 до сред разработки, которые все скобки за тебя закроют) и процессами в образовании. В школах постоянно дают переписать любую неудачную работу, в вузах выстроили целую систему повторной промежуточной аттестации: после несданного на сессии предмета вуз обязан предоставить одну или несколько консультаций преподавателя, потом пересдача предмета комиссии, а еще студент может запросить повторное освоение дисциплины, в чем, правда, вуз может отказать. В результате появилось достаточно много студентов, которые рассуждают так: да ну её, планомерную и напряженную работу во время семестра – разок напрягусь и кое как закроюсь на комиссии. Последнее «достижение» в этом направлении: разрешение с этого года переписать ЕГЭ! А еще во многих компьютерных играх имеется возможность вернуться к сохранению персонажа, если его убили. В результате сформировалось поколение, которое считает, что ошибаться – это нормально. И делает из этого следующий вывод: за свои поступки тогда и отвечать не нужно – если я что-то сделаю не так, то все равно покажут, где ошибся и дадут исправить... Но вот незадача: «А что делать, когда наступит момент, когда твоя ошибка окажется критичной, а подстраховки не будет, а ты по-другому не умеешь. В результате можешь погибнуть сам и/или погубить других... И даже если так радикально не рассуждать, то отучать от привычки делать кое-как становится все сложнее...» (А. Маятин).

2. «Спасибо за ответ. Я, кстати, не вожу машину, потому что там часто бывает невозможно исправить сделанное…» (А. Шалыто).

3. После этого Александр написал: «И я по той же причине машину не вожу. Покатался неделю до первого ДТП и отдал супруге».

48 views·2 shares