Погнали
Рано или поздно я бы поднял тут эту тему, так как занимаюсь ей... ну прям долго, лет 6 наверное. Речь о языке ДРАКОН. Это такой алгоритмический язык. Вы наверняка в школе чертили в тетрадке с помощью линейки подобные схемы - в прямоугольнике действие, в ромбике вопрос, в овалах - начало и конец. Эти схемы были не простыми, а по ГОСТу, который придумали 40 лет тому назад. Владимир Паронджанов переосмыслил эти схемы, подверг их критике и предложил свою альтернативу - язык ДРАКОН. Есть два важных замечания:
1) обычно Владимир Даниелович скромничал и говорил, что к созданию языка причастен не он один, а целый коллектив, потому что были предпосылки в виде языка Графит-Флокс, используемого в космической отрасли СССР,
2) ДРАКОН заимствует элементы ГОСТа и по сути является его "стайлгайдом". ГОСТ неактуален, потому что там прописаны всякие физические компоненты, некоторые уже раритетные (дисплеи, магнитные ленты и прочее), а в ДРАКОНе больше внимания уделено именно всяким конструкциям си-подобных языков. Сейчас из подобных вещей в России популярны только UML и BPMN.
Я с ДРАКОНом познакомился в 2018 году в университете. Он мне не сразу понравился, не скрою. Но хорошо, что хотя бы не надо было чертить ручками, а сидеть за пентиумом в "Фабуле" Эдуарда Ильченко. Потом у моего первого научного руководителя, Сибилёва Валерия Дмитриевича, возникло предложение для студентов сделать свой (нелагающий) редактор дракон-схем. Предложение не прям чтоб было мне адресовано, но как-то остальные предложения по проектам меня не зацепили, так что однажды вечером я пришёл к нему к концу пары у другой группы, сел за стол и мы обсудили как это должно выглядеть. Он сказал, что достаточно двух человек: меня и кого-то ещё. Я взял Вову Гойника с собой, потом к нам присоединился Влад Кузнецов, потому что он тоже не успел найти проекта для себя. Такой компанией мы пару лет занимались редактором, он был нам и курсовой, и дипломной, и прочей защитой. Получалось слабо, потому что всю работу делал я, и мы изначально шли по неверному следу, как это делать в виде программы. Ближе к четвёртому курсу Влад Кузнецов выгорел в учёбе. Я пытался подбирать слова, потому что не знал как объяснить его неучастие, чтобы отстранить от проекта. Но на сайте ТУСУРа в то время по ФИО человека и номеру группы можно было посмотреть его успеваемость. Я увидел, что Влад Кузнецов держался на плаву только за счёт этого проекта по ДРАКОНу. То есть ему и так грозило отчисление. Сейчас бы я промолчал и ничего не написал, но тогда я написал ему сообщение и в ответ получил порцию горького экзистенциального кризиса. С тех пор мы не общались, хотя я не держу никакого зла, что так получилось, и, честно говоря, я вообще боюсь с тех пор Влада Кузнецова, каких-либо его фраз.
Мы с Вовой Гойником дошли до защиты и защитились на отлично, правда оба получили синие дипломы за прошлые грехи. Я горжусь своим синим дипломом. Он меня избавил от комплекса отличника, показал, что я обычный человек, а не полубог какой-то, не реинкарнация Эйнштейна. Защита была не совсем честной, потому что я - автор и своего диплома бакалавара, и диплома бакалавра Вовы Гойника. Я полностью написал ему пояснительную записку (66 страниц), сделал презентацию, написал сценарий защиты вместе с предвиденными вопросами, и я был автором докладов на научных конференциях по теме защиты. Мы репетировали защиту, я засекал 7 минут, чтоб он мог уложиться в регламент, прям несколько дней репетировали. Все файлы до сих пор хранятся на компьютере.
Сейчас я об этом смело пишу, потому что мы - магистры. Я тусуровский, Вова - политеховский. Бакалаврские дипломы уже не особо решают, когда есть карты постарше. На сегодняшний день мы не общаемся.
Магистратура
На магистратуре я продолжил начатое. Всё это время я поддерживал связь с форумом по языку ДРАКОН, писал об успехах и на самом деле был в каждой бочке затычкой: просто влетал с двух ног и без разбора начинал умничать. Только потом я себя придержал, говорил себе: "Не твоя тема. Нечего умничать". А у ДРАКОНа в самом деле было много тем для обсуждения. Актуальной по сей день остаётся его применение в программировании ПЛК, как бы новый CodeSys. Сейчас эту среду развивает Алексей Муравицкий. Она называется "Дракон+". А главным критиком, брызгающим ядовитой слюной и пишущим непонятные фразы, остаётся tonyk (реального имени и фамилии я не знаю, поэтому пишу ник с форума). По началу я пытался с ним поговорить, понять, что он хочет, потому что Владимир Паронджанов дал такую установку: tonyk - большой эксперт в программировании ПЛК и микроконтроллеров, у него есть своё представление о ДРАКОНе, но он разругался в прошлом со всеми, кто хотел с ним это обсудить. Так вот tonyk написал кучу непонятных слов, понял, что со мной каши не сваришь, и снова бросился избивать ДРАКОН как концепцию. Сила критики зависела от настроения tonyk. Если он был в хорошем расположении духа, то писал, что вообще-то ДРАКОН - хороший язык, полезный, но его надо подтолкнуть и где-то развить. А если в плохом - рвал и метал, что схемки эти никому не нужны, что язык этот лежит на дне, и лежит он по заслугам. Ну и tonyk косвено подстёбывал меня за наличие собачки на аватарке профиля: ведёт диалог с кем-то и ни с того ни с сего бросает: "Да-да, это вам не собачку на автарку ставить". Так гнило, за моей спиной. Я себя хорошо знаю, я критику по отношению к себе воспринимаю очень болезненно, поэтому во мне надолго затаилась обида на этого человека. Паронджанов лично писал мне замечания за грубые высказывания в адрес tonyk, но это было лишь защитной реакцией и попыткой постоять за свою честь. В последние месяцы сущетвования форума он активизировался не на шутку, и как когда-то я отвечал всем подряд, он стал отвечать всем подряд. Он ругал других, что они обсуждают не то, что всем надо сесть за IDE и написать дракон-редактор для ПЛК. Нельзя быть плохим человеком из-за того, что я не делаю того, что хочет tonyk, тем более это не моя область научных интересов. Парноджанов написал мне на почту, что дело чести в подобных дискуссиях неважно, что я веду себя как обиженный ребёнок и что на критику надо отвечать миролюбиво. Этому мне ещё учиться и учиться на самом деле. Я считаю, что на кртиику не всегда нужно отвечать миролюбиво, иначе критик перестанет себя ограничивать в формулировках и манерах. Снаружи я бы смог спокойно, но потом бы неделю это переваривал внутри со всей варящейся злобой и ненавистью. На мой взгляд, Владимир Даниелович не разобрался в ситуации и не понял моего отношения к оскорблениям tonyk. И это было последнее сообщение для меня от Владимира Паронджанова, через пару месяцев он ушёл из жизни.
Но до того, как случилось это грустное событие, Владимир Даниелович следил за моими делами; мы с ним иногда переписывались. Пожалуй, главным поводом обратить на меня внимание послужили мои критические замечания к дракон-схемам белгородского аквапарка "Лазурный". Критику в свой адрес я не переношу, но сам критиковать люблю. Не отрицаю: я - противный человек. Руководитель белгородского аквапарка собрал схемы всех-всех-всех - от охранников до химиков - и скомпоновал их в одну книжку. Я насписал комментарий к каждой схеме практически, Паронджанов попросил всё оформить чередой сообщений, я так и сделал. А дальше уже была заинтересованность моим дракон-редактором. Паронджанов часто выражал нетерпение: "Когда же будут итоги апробации? Когда будет сайт, чтобы дать ссылку в кулуары?". Я писал, что всё будет, что я обязан по магистратуре предоставить программный продукт, и я его сделаю. Несмотря на нетерпение, автор языка ДРАКОН не считал меня пустомелей и поддерживал: Владимир Паронджанов написал рекомендательное письмо при моём зачислении в аспирантуру.
Единственное, чего жаль, что не успели спецификацию ДРАКОНа написать. Из-за отсутствия спецификации ДРАКОН до сих пор считается чем-то несерьёзным, неофициальным. Я прям удивился, перечитывая почту, когда увидел от себя предложение написать её. Как итог: общение складывалось неплохо, взаимоуважительно, но непринуждённо, не ощущалось разницы в 60+ лет.
Теперьки
В прошлом - предки, в будущем - потомки, а мы - теперьки. Теперь язык ДРАКОН - сирота. Каждый его по-своему развивает и уже развил. У Муравицкого идёт работа с "Дракон+", и негласно он считается человеком, поднявшим этот флаг. Степан Митькин сделал кучу дракон-редакторов по одним авторским лекалам (стоит отметить, хорошие редакторы). Геннадий Тышев продал свою "ИС Дракон" студентам-физикам МГУ. Tonyk наверняка где-то в телеграм-канале Алексея Муравицкого продолжает писать лонгриды со своим экспертным мнением. И со всеми ними я кстати общался, со всеми ключевыми фигурами в развитии ДРАКОНа.
Администратор заморозил форум. Создание новых тем невозможно, но доступно прочтение старых. Неизвестно, как долго продержится это положение, потому что форум по ДРАКОНу мне казался интересным местом, а риски его удаления всё-таки присутствуют. По этой причине я навайбкодил парсер этого форума и сохранил себе на диск архив всех тем, сообщений и вложений. Зачем всё это?
У меня есть идея, на будущее, живы будем - не помрём. Я бы хотел подготовить цикл видео о языке ДРАКОН. Не просто о том, как строить дракон-схемы, а о различных приёмах, вопросах, которые обсуждали на форуме. Не исключаю, что для начала я напишу об этом книгу. Но для этого нужно время на ознакомление со всем форумом и придумывание структуры повествования. Такого времени у меня пока нет.
Философия
Когда в "Школе Злословия" Анастасия Волочкова сказала, что в картине, на которой цветок пробивается сквозь асфальт, скрыта философия, ведущие начали плеваться от неуместности слова. Символ - да, но не философия. А вот ДРАКОН имеет в себе что-то потаённое, как метод, наверное. Я не знаю символ ли это, философия ли или что-то другое. Паронджанов специально читал кучу книг об удобстве зрительного восприятия, эволюции графики, схемостроения. Ведь никто не задумывался, почему нам удобно смотреть на какие-то схемы, на план эвакуации, например. Удобно и всё тут. Какая разница? А Владимиру Паронджанову это было важно и интересно, потому что он придумывал свой язык, новые схемы. И ведь придумал! И вообще ДРАКОН, на мой взгляд, это не только о программировании, но и о думании. Он подставляет плечо, чтобы ты мог задавать правильные вопросы, искать на них ответы и обогащать своё логическое мышление. Сложно рассказать о ДРАКОНе незнакомцу, не казась при этом сумасшедшим и грубияном. Как объяснить человеку, что с ДРАКОНом он будет думать лучше? Прохожий скорее оскорбится: "Я плохо думаю, хочешь сказать? Я тупой, хочешь сказать? Все тупые кроме вас, хочешь сказать?". Но тут не попробуешь - не поймёшь.
Почему я назвал подзаголовок "Философия"? Потому что в этом году я писал реферат по "Истории и философии науки" на тему дракон-схем. Обычно эти рефераты хранятся в университете в архиве столько, сколько должны храниться аспирантские работы (кажется, 3-5 лет). А я бы хотел прямо здесь опубликовать фрагмент из этого реферата, потому что он мне кажется очень удачно написанным. Внимание, фрагмент:
Мысль о том, что визуально текст воспринимается труднее изображения, кажется правдивой. Но если современный человек может её доказать научными фактами, то мыслитель прошлого аргументирует её через собственное мироощущение, которым объясняет все явления. В трудах античных философов не было рассуждений о разнице восприятия текста и изображения, но все они отдавали зрению большую роль в восприятии окружающего мира. Например, Аристотель в начале «Метафизики» называет зрение самым важным чувством для аналитического мышления:
Все люди от природы стремятся к знанию. Доказательство тому - влечение к чувственным восприятиям: ведь независимо от того, есть от них польза или нет, их ценят ради них самих, и больше всех зрительные восприятия, ибо видение, можно сказать, мы предпочитаем всем остальным восприятиям, не только ради того, чтобы действовать, но и тогда, когда мы не собираемся что-либо делать
Платон в «Тимее» считает зрение лучшим чувством с эстетической точки зрения:
По моему разумению, зрение – это источник величайшей для нас пользы; вот и в нынешнем нашем рассуждении мы не смогли бы сказать ни единого слова о природе Вселенной, если бы никогда не видели ни звезд, ни Солнца, ни неба
Философ двадцатого века Морис Мерло-Понти отдал зрению гораздо меньшую роль. В отличие от древнегреческих философов он не считал, что человеческий глаз наполнен какой-либо стихией (огнём или воздухом), которая высвобождается и соприкасается с окружающей материей. Для Мерло-Понти глаз является таким, каким его описывают биологи, но его функции более разнообразны. Философ считал, что человеческие органы чувств настолько перемешаны, что не существует чёткого разграничения ролей каждого органа, поэтому любое чувство ощущается телом целиком. Так он написал в «Феноменологии восприятия»:
…и хотя зрение, осязание, слух образуют различные подходы к объекту, эти структуры оказывались преобразованы в однородные качества и выводились из локальных различий задействованных органов
Если о разнице в восприятии философы не выражали мыслей, то следующим шагом в исследовании стал поиск разницы в толковании. Толкование текстов – герменевтика – тоже имеет античные истоки. В древнегреческой мифологии посланнику богов Гермесу необходимо было истолковывать людям божественные вести. Однако сегодня всё чаще используется термин «визуальная герменевтика» по той причине, что способы обработки разных видов информации порой не соответствуют логике. Например, человек может смотреть на картину, перемещая взгляд слева направо, как при чтении текста. Это не новая тенденция, потому что такой способ разглядывания картин заметили художники, создающие натюрморты. Таким образом, на их картинах стол представляет собой горизонтальную поверхность как строку текста, а на столе располагаются предметы подобно словам. Возможна и обратная ситуация, когда текст трактуется в зависимости от наиболее приметных слов в нём.
Упомянув произведения искусства, стоит рассмотреть ещё одну сторону визуализации алгоритмов – творческую составляющую. Несмотря на иррациональность и субъективность таких понятий как «творчество» и «вдохновение», французский философ и математик Анри Пуанкаре попытался переосмыслить их. Свои мысли он изложил в докладе «Математическое творчество», с которым затем выступил на заседании Психологического общества в Париже в 1908 году. Алгоритмы нетрудно назвать математическими объектами, ведь они построены по законам математической логики. Анри Пуанкаре дал такое определение творчеству:
В чём, в самом деле, состоит математическое творчество? <…> Творчество заключается как раз в том, чтобы не создавать бесполезных комбинаций, а создавать такие, которые оказываются полезными <…> Творить – это отличать, выбирать
По мнению Пуанкаре описанные комбинации не являются чем-то сверхъестественным: они возникают в результате работы бессознательного или «подсознательного Я». Помимо пользы плоды математического творчества должны быть эстетически качественными:
Но какие же именно математические предметы мы называем прекрасными, изящными <…> ? Это те, элементы которых расположены так гармонично, что ум без труда может охватить целое, проникая в то же время и в детали
Такое описание ещё больше делает блок-схемы алгоритмов объектами математического творчества. Определение красоты от Пуанкаре схоже с определением эргономичности от создателя алгоритмического языка ДРАКОН:
Эргономичный – дружелюбный, лёгкий для понимания, удобный для работы
Перебирая комбинации блоков в схеме алгоритма, человек ищет способы сделать его более наглядным, лаконичным, простым в дальнейшей реализации, но при этом полным. Опираясь на мысли Анри Пуанкаре, можно сказать, что процесс создания блок-схем алгоритмов – это процесс математического творения.
#Дракон #Алгоритмы #Программирование