ch
Feedback
Александр Кунташов — про 1С и не только

Александр Кунташов — про 1С и не только

前往频道在 Telegram

Заметки про разработку и смежные штуки: 1С, Vanessa Automation, DevOps в 1С, OneScript, PHP, Linux, JS, Python и всякое вокруг и около ИТ.

显示更多
2 544
订阅者
无数据24 小时
+37
-330
帖子存档
🥳 Только вчера напомнили старую шутку про Да = СерверуТруба(); (см. предыдущий пост), а сегодня 1С официально представила источник новых лулзов новый язык программирования 1С:Исполнитель. 🧐 Далее мои токсичные комментарии на эту тему. 🤬 В статье в Зазеркалье 🤖 1С:Исполнитель позиционируется как инструмент, похожий на языки командных интерпретаторов и приводят в пример "аналоги" в виде bash и языка командных bat-файлов для cmd.exe, но по описанию это язык со статической типизацией и другими продвинутыми фичами, т.е. явно не для разработки скриптов для автоматизации рутины и чего-то, что нужно побыстрее написать. 🤥 Зачем-то делается акцент "язык сценариев базируется на встроенном языке разработки 1С:Предприятие" (с оговоркой "имеет ряд отличий"), но по тому, что мы видим в примерах, язык обратно не совместим с встроенным ЯП 1С от слова "совсем" (с). Общего у них, кроме самой 1С, только операторы на кириллице с дублированием операторов на английском. 🤯 Двуязычность операторов языка никак не вяжется и с задекларированной экспансией на запад. Развивающийся язык рано или поздно обрастает библиотеками. Библиотеки, написанные кириллицей, будет сложно переиспользовать программистам-пользователям англоязычного варианта ключевых слов. Т.е. эти библиотеки нужно будет поддерживать в двух вариантах по крайней мере в части публичного API. Но зачем? 🤓 Концепты, реализованные в языке, чужды среднестатистическому 1Снику, не желающему учить что-то новое. А если есть мотивация разбираться в чем-то новом, то перспективнее учить какой-нибудь питон, а не странный нишевый язык программирования. То,что ключевые слова из русского языка как-то сильно помогают осваивать новые концепты программирования, это скорее миф. 😎 True-devops'ов и true-программистов еще сложнее заставить этот язык использовать в качестве своего инструмента. Зачем, когда уже все есть? 🤪 В общем, ни в результате прочтении статьи из Зазеркалья, ни по результатам бурного обсуждения в чатах, ни из комментариев/пересказов коллег, кто был в "Космосе" на Том Самом Докладе, где язык впервые представляли, лично у меня так и не нашлось ответа на вопрос "Нафига Зачем?". 😱 При этом на поверхности такое количество противоречий, что с трудом верится, что решение создавать новый язык или нет, имело вообще хоть какое-то веское обоснование, кроме желания устранить фатальный недостаток (см. Not Invented Here). Кстати, это также и ответ на вполне очевидный вопрос "Почему не OneScript?". p.s. Точка с запятой в качестве закрывающей операторной скобки — это та еще находка 🤮

https://mobile.twitter.com/iBljad/status/1265303184320446465 В реплаях там у true-разрабов снова подгорает )
https://mobile.twitter.com/iBljad/status/1265303184320446465 В реплаях там у true-разрабов снова подгорает )

На ИС появилась статья с описанием этого функционала: Vanessa. Использование видеоинструкций для web-клиента

Молчание "best practices": тестовые и эталонные данные, структура и связность, падения и новая функциональность, и другие неудобные вопросы к сценарному тестированию Непонимание некоторых базовых вопросов мешает программистам начать применять инструменты тестирования в процессе разработки для 1С. Как разобраться в терминологии и интегрировать процесс тестирования в разработку 1С-решений на конференции Infostart Event 2019 Inception рассказал руководитель отдела разработки компании C.T.Consultants Решитко Дмитрий.

👇 Статья по крутому докладу Дмитрия Решитко с ИфостартЭвента2019 о нюансах сценарного тестирования. Рекомендую 👍

🤖 + 🎬 = ❤️ Будущее кинематографа: пишешь историю/сценарий/книгу или берешь любой готовый текст, загружаешь в свой телевизор, указываешь, каких актеров хотел бы видеть в главных ролях и нажимаешь ▶️. Нейронка генерирует и показывает кинофильм. Не понравилась концовка/актер — исправил — 🔁 — смотришь дальше... Настоящее продвинутых 1Сников: пишешь сценарий, например, такой: УТ11_Демо.feature. Скармливаешь сценарий Vanessa Automation. Получаешь на выходе видео: https://www.youtube.com/watch?v=6b2CtestsaU Выпустили обновление — обновили сценарий — ▶️ — получаешь новое видео. 🔥

Bitrix - популярная CMS для стран СНГ. Там есть достаточно неплохая встроенная защита, которую всё-таки можно обойти. Обойти XSS WAF можно через нульбайт, в блоге deteact есть описание, почему это происходит. А еще там есть смешная обходка для Open Redirect - некорректный парсинг урла, который проверяет вхождение домена в начале строки, который можно откинуть в basic auth.

Срочный апдейт ☝️. Говорят, что падение Github произошло из-за COMMIT-19

Делал пуш, и тут github внезапно прилег https://www.githubstatus.com/ Совпадение?.. (с) upd. На 16:44 Мск заработало, ура.
+1
Делал пуш, и тут github внезапно прилег https://www.githubstatus.com/ Совпадение?.. (с) upd. На 16:44 Мск заработало, ура.

В Зазеркалье новая статья про синхронную асинхронность 😱 Вангую, что в 10-летней (ну вы поняли) перспективе это все копирование фич из других ЯП — лишь шаги по долгосрочному рефакторингу платформы с целью отвязать ее от встронного ЯП в пользу какого-либо мейнстримового языка. Естественно, отказаться здесь и сейчас от "великого и могучего" нельзя: и на уровне архитектуры он гвоздями возможно прибит, и специалистов нужных так быстро не переучишь/не привлечешь, да и просто слишком много на 1С кода написано — в обозримое время не переписать. Но оставаться с встроенным ЯП 1С навсегда платформе тоже скорее всего уже не получится, ибо это один из тормозов экспансии на запад. Ну представьте себе, вы презентуете некую новую платформу с потенциально интересными фичами, которые потребителям (разработчикам) нравятся. И в конце презентации говорите, что чтобы пользоваться фичами вам нужно изучить новый язык программирования, устаревший морально несколько лет назад. Ну вы поняли.

— А-а-а-синх... 😷 — Будьте здоровы! (источник картинки)
— А-а-а-синх... 😷 — Будьте здоровы! (источник картинки)

Скриншот-то к посту выше ☝️ потерялся, извините, вот он.
Скриншот-то к посту выше ☝️ потерялся, извините, вот он.

💩 Две простейшие строчки кода, логику которых не поймешь с первого раза На скриншоте за "самодокументирующимся" кодом (ну так гипердлинные идентификаторы обычно оправдывают) прячется вот такая красота:
НеПрервано = Прервано();
Если НеПрервано = Ложь Тогда
...

Такое ощущение, что специально сделали поперек всей логики, чтобы читателю голову сломать, эдакая обфускация. Этот код можно было бы еще "улучшить", добавив отрицание вместо явного сравнения с Ложью. Но к нашему счастью, метод Прервано() тоже спроектирован не удачно и может вернуть не только значение булева типа, поэтому тут обошлось без Если Не НеПрервано Тогда... (а было бы веселее!) Ну и, очевидно, с такой кривой логикой "повествования" (НеПрервано = Прервано()) какие-либо длинные "самодокументирующиеся" имена становятся не только бесполезными, но и вредят, т.к. в таком идентификаторе при беглом чтении кода "Не" можно и не заметить, или даже наоборот, увидев его в одном идентификаторе, на автомате прочитать во втором, похожем. (Если что, это из модуля 1С:Синхронизация с Битрикс24 для УТ 10.3) #говнокод #codesmell

☝️🍻+🍷+ ☕️ 👍 #ОставайсяДома #StayAtHome p.s. Время московское

#стрим Рабочий треш и угар начала года рассосался, а значит, можно провести очередной стрим и поднять кружку чая за здоровье Злого Именинника :) Обсудим новости, поднимем что-нибудь упавшее. Еще ничего не упало? Ничего страшного, обязательно уроним и поднимем :) Завтра (31.03.2020) в 19:30 на YouTube: https://www.youtube.com/watch?v=pbDtqn9Ahec

Хм... 🤔 #1C p.s. Я так и не смог отключить оба чекбокса "Защита от опасных действий", платформа 8.3.16.1148.

Кстати, про лицензирование шины не увидел ничего в статье.

🔥Поддержка AMPQ в 1С:Предприятии 8.3.17 "из коробки" Новости Зазеркалья: в платформу завезли ESB https://wonderland.v8.1c.ru/blog/integratsionnaya-shina/ Для 1С есть несколько отраслевых решений ESB разного масштаба и бюджета, несколько реализаций поддержки внешних брокеров сообщений (например, поддержка RabbitMQ в виде кроликов разных цветов, всем привет) и других компонент, из которых собирается шина. Почему 1С снова делает свое — такой вопрос себе 1сники-старожилы давно не задают, а для тех кто все-таки задает, сегодня напомнили ответ (вольный краткий пересказ): "Потому что можем доступно и всерьез!" (см. раздел статьи под заголовком "Преимущества нашей «Интеграционной шины»").

​Тесты снимают когнитивную нагрузку Чтобы соответствовать бизнес-требованиям, нужно постоянно с ними сверяться (написал и почувствовал себя инфобизнесменом — покупайте мои курсы, кек). Есть ребята, которые сверяются вручную — прямо садятся раз в пару часов и прогоняют мышкой операции, похожие на поведение пользователя. Кроме того, что выглядит это глупо (всегда хотел посмотреть как без автотестов проверяют свой код разработчики API), это ещё и жрет кучу времени. Кроме прямых затрат, есть ещё косвенные — программист без тестов за спиной постоянно вынужден думать, «как бы чего не сломать»: ведь не будешь же после каждого ветвления в коде садиться и протыкивать весь интерфейс заново. У ребят с тестами все наоборот, спокойно: у них всегда на экране есть лампочка. Зелёная — все работает, красная — все сломалось. Конечно хорошие разработчики всегда ходят в пользовательский интерфейс, но только для того, чтобы увидеть картинку глазами пользователя. А не чтобы убедиться, что не сломали все нафиг.