Комментарии 16
Отличное начало! Успехов с VA
ну хотя бы один комментарий к статье восторженный, а то сообщество здесь токсичное какое-то :)
Я отвык уже от такой нетактичности или токсичности, как Вы пишите. Это неконструктивно и не практично и, главное - Зачем? устраивать на ровном месте бойцовский клуб )
Ладно. Пусть молодежь развлекается, а я попробую найти другие места для публикаций на русском языке моих работ по eco-programming парадигме и VAOP или через некоторое время вернусь, но уже в переводах
Вы привыкли проповедовать свои идеи студентам или "заказчикам", которые в программировании ничего не понимают. И, соответственно, не могут критически эти идеи оценить.
Для местного сообщества так умилительно восхищающие вас идеи "автоматного программирования" являются элементарными.
И зря вы обижаетесь на "нетактичность" и "токсичность". Большое спасибо комментаторам к первой статье за их терпение - вышла очень забавная дискуссия.
Я даже не мог предполагать три года назад, что отголоски моей первой статьи на Хабре, где я изложил основные принципы и терминологию новой методологии программирования VAOP, разойдутся так далеко. Интерес к методологии не только не угас до сих пор, но и, кажется, продолжает расти.
Применение VAOP требует от программиста понимания, что алгоритм, который он реализует в коде, существует отдельно от самого кода программы, и что в этот алгоритм можно вносить изменения. Современные программисты, начиная где-то 20-30 лет назад, стали обходить этап создания блок-схемы алгоритма, который был обязательным на заре программирования. Таким образом, для многих из них алгоритм и код программы стали восприниматься как единое целое, хотя код программы — это лишь инструкция для компьютера, написанная на языке, понятном исполнителю-компьютеру. Когда я спрашивал программистов показать мне алгоритм того, что они закодировали, они обычно указывали на код программы и пытались объяснить мне его работу, не понимая сути моего вопроса.
Вот почему, когда в своей статье я начинаю говорить об алгоритме, изобретенном "яйцеголовым", и затем описываю этот алгоритм с помощью va-script, многие не понимают, о чем идет речь. Как метко заметил мой внук: "Деда, ты пытаешься рассказать о паровозе людям, которые никогда не видели рельсов".
Вот почему, когда на первых занятиях с студентами я объясняю и демонстрирую на примерах, что алгоритм задачи, которую они должны запрограммировать, можно оформить, сохранить и редактировать отдельно от кода его реализации, они начинают осознавать все преимущества, которые предоставляет VAOP.
Затем, прочитав вместе комментарии к моей первой статье на Хабре, студенты честно признаются, что до этого момента они не полностью понимали, что такое алгоритмы и как они могут существовать отдельно. Они осознают, что va-script — это не что иное, как способ записи блок-схемы любого алгоритма, и признают, что без этого объяснения, скорее всего, также не поняли бы сути, подобно тем, кто оставлял комментарии.
Я осознаю свою долю ответственности в этом. Написав ту первую статью на Хабре, я не мог представить, что новое поколение программистов мыслит иначе, чем мы 40 лет назад. Я говорил о рельсах, стрелках и паровозах с вагонами, не учитывая изменения в восприятии. Прошу прощения, ребята. Я был не прав.
In array M = [1.4, 777, 5, 4.3, 7, 8, 777, 9,23, 777, 5, 6.5, 777, 3] sum will be equal to 10
Здесь у нас шесть подсписков, которые начинаются с 777 и заканчиваются 777.1: [777, 5, 4.3, 7, 8, 777]
2: [777, 9, 23, 777]
3: [777, 5, 6.5, 777]
4: [777, 5, 4.3, 7, 8, 777, 9, 23, 777]
5: [777, 9, 23, 777, 5, 6.5, 777]
6: [777, 5, 4.3, 7, 8, 777, 9, 23, 777, 5, 6.5, 777]
Ни у одного из них сумма не равняется 10.
Так что будем править, постановку задачи или примеры?
Считая сумму элементов Вы следовали алгоритму-сценарию, прочитанному не в va-script, а в каком-то месте, которое уже устарело. Так часто бывает. Вот и я ошибся и забыл сказать что v-agent суммирует только "comment_010":" > 0 and int and (first or third)" первый и потом каждый третий злетент при условии если они целые и положительные. При этом, очень важно, что если даже он не посчитал первый элемент отрезка потому, что он не целый и меньше нуля или ноль, то va ведет отсчет третьего элемента от этого элемента. Это к вопросу - покажите мне Алгоритм. В VAOP c этим нет проблем и разобраться и поменять при необходимости.
Для сравнения попробуйте понять что и как делается в программах решающих эту задачу заказчика, написанный дедовским подходом. Там, вообще, не понять что и как складывается )
Заказчик может повеселиться и сказать, что если элемент = 0, то его не замечать и не считать первым и не вести от него отсчет каждого третьего.
Вот так и играем со студентами, пока они не понимают как, вообще, раньше писали без VAOP, особено, когда я даю подправить код доугого студента на в VAOP, то первый вопрос - А что этот код делает и как? На что я отвечаю - Спроси разработчика если найдешь и если он вспомнит )
И все приходится переписывать самому с чистого листа. А это ведь лишние затраты ресурсов ...
Считая сумму элементов Вы следовали алгоритму-сценарию, прочитанному не в va-script, а в каком-то месте, которое уже устарело.
Из вашей статьи:
Заказчику нужно знать сумму элементов, которые находятся в подсписке, начинающемся и заканчивающемся элементом, равным 777. Элемент, равный 7, останавливает добавление всех последующих элементов в подсписке к общей сумме
Таким образом, ваша программа решает не задачу, сформулированную заказчиком, а некую воображаемую задачу, поскольку никаких изменений требований далее по статье не указано.
Так что будем править, постановку задачи или примеры?
Отвечая на Ваш вопрос, ничего не будем править ) Будем считать это проверкой на мнимательность чтения статьи. Я часто использую такой прмем при чтении лекций - заявляю одно, а код пишу про другое ) и смотрю на реакцию студентов ). Это типа обратной связи такой ... все уснули или не все )
Чуть не захлебнулся, спасибо.
Так а где же всё-таки код самого телеграм-бота? Или хотели отвлечь внимание от темы статьи ушатами воды и дебильных примеров с семёрками?
пардон конечно, но акцент статьи напомнил анекдот про студента, который всё знал только про вшей и когда у него был вопрос про рыбу на экзамене, а он ответил "рыба живёт в воде, у неё чешуя, а если бы была шерсть, то у неё были бы вши..."
это я к чему, вот есть человек пишущий на питоне, php или c# и решающий большой круг задач и тут у него просят что-то еще и он решает успешно, и делает выбор между тремя обозначенными языками, и может приводить к ситуациям когда на питоне это сделать проще и лучше, но человек пишет на c#, так как он его знает и умеет с ним работать. поэтому вопрос предпочтений связан с теми инструментами, которыми владеет специалист и было бы странно учить 100500 языков, чтобы в нужный момент (который может и не наступить) применить именно тот самый лучший вариант.
ну и по секрету - мелкие проекты которые непонятно кто потом будет сопровождать в принципе делать сразу правильно и идеально нет смысла, вам за эту идеальность просто никто не заплатит.
V-Agent :)
VAOP как low code инструмент для разработки telegram BOT и не только