tgindex

Журнал инженера-программиста

описание

Мир глазами программиста. Истории и размышления. Автор: @Dementor_AK https://www.linkedin.com/in/dv-kinash

246
подписчиков
Охват к подписчикам
87,8%
ERR
Реакции к просмотрам
2,71%
186 на 31 постов
Пересылки к просмотрам
0,67%
46
Постов в день
0,0
всего 31

Где отзываются чаще

доля реакций к просмотрам
  • 4 авг.Захожу уже перед сном в комнату, включаю свет и краем глаза фиксирую быстрое движение по клавиатуре в сторону системника. Подсвечиваю туда фонариком и в ответ вижу перепуганные глаза-бусинки. Ловким движением руки мышонок был пойман в коробочку и уже через 5 минут выпущен на клумбу рядом с домом. Это прямо флешбек из детства из 90х. Тогда я вечером зашел на кухню и увидел движение мини-чупакабры по кухонному столе в направлении плиты. Это был первый контакт с "подвальными беженцами", после которого мы часто видели мышей в нашей квартире и даже применяли мышеловки, чтобы переловить почти два десятка незваных гостей. В детстве мыши забирались к нам в квартиру на третий этаж по вентиляции. Сейчас я живу значительно выше (можно задолбаться подниматься по лестнице, когда лифты не работают) и у меня вопросики к тому как этот мелкий мышонок умудрился к нам забраться - тоже по вентиляции (почему не остался на кухне с продуктами) или через открытое окно (как раз рядом со столом с компом)? Как вообще этот слабый юнец справился с такой тяжелой дорогой и почему не вышел у соседей на нижних этажах? Или он спускался с крыши? Путь вниз действительно намного короче и легче, но как он тогда попал на крышу? #offline #irl8,40%
  • 19 июл.Понемногу уже буду возвращаться. Клубок жизненных событий понемногу распутывается, а окружающий мир не стоит на месте и продолжает удивлять. Зафиксирую текущие события: 1) Теща все никак не может оформить компенсацию за разрушенную квартиру. В день прихода комиссии (для фиксации степени ущерба) она закрыла свою торговую точку и половину дня прождала их визит. А когда вернулась на работу, то ей ближе к вечеру позвонили, что те готовы к ней прийти (но она бы просто не успела приехать). В следующий раз такой накладки не будет, так как сегодня ночью во время самого массовой баллистической атаки (41 ракета в течении 40 минут) ее торговую точку сравняло с землей и она теперь снова безработная и может ждать комиссию в любое время. 2) Похоже, что мы зря делали операцию нашей кошке. Хотя все прошло хорошо и шов отлично зажил, но у нее начались проблемы с легкими - там оказались метастазы, которые разрушали легочную ткань. Дважды мы носили ее на дренаж жидкости, но она в конце-концов стала отказываться от еды и почти не пила. В этот понедельник мы с нею попрощались, а уже в четверг забрали с Новой Почти урну с ее прахом. 3) Моя отсрочка от призыва вернулась в Резерв+ и вероятность стать учасником "бусификации" стала существенно ниже (хотя в наше время ни от чего нельзя зарекаться). 4) Пока ми последние недели мучились с нашей кошкой, то сталкивались в ветклиниках с проблемой мобилизованных ветврачей. Даже в последний день, когда мы обзванивали службы ритуальных услуг для питомцев, мы далеко не сразу нашли тех, кто к нам приедет - часть телефонов была отключена, у некоторых было объявление, что в связи с мобилизацией всех сотрудников услуги прекращены до окончания войны. 5) Мои анализы существенно не изменились и все далеки от нормы, но имеют тенденцию к стабилизации. Например тромбоциты (норма 150-400) в течении месяца у меня по чуть-чуть уменьшаются: 723 -> 702 -> 667. Всего 10 показателей далеки от нормы. Даже если я месяц ел фальсификат вместо лекарств, то последствия хотя бы обратимы. #войнаимир #offline #irl7,07%
  • 23 февр.Поскольку я веду разработку в 1C:EDT на общем терминальном сервере, я периодически сталкиваюсь с невозможностью отладки своего проекта, когда кто-то другой уже успел ранее занял порт 1551. В отличи от Конфигуратора, который запускает отладку на доступном свободном порту и разработчику даже не нужно знать на про какие порты и особенности реализации стека TCP/IP, тут по умолчанию всегда используется один и тот же порт. Просто большинство этого не замечают, так как разрабатывают на выделенной технике. 1С:Помощник, ИИ от самой 1С, который разработал специально для работы в 1C:EDT и который должен знать все нюансы работы, тут бесполезен. Для начала он искренне считает, что этого не может быть и EDT как и Конфигуратор самостоятельно ищет свободные порты. Если настаивать на существовании проблемы, то он начинает предлагать различные варианты с ключами запуска отладки, ключами запуска самого EDT или параметрами для конфига. При чем все, что он предлагает - он сочиняет на ходу и это все не работает. Когда меня в очередной раз достало, что для отладки мне нужно дополнительно запускать Конфигуратор, я решил детальнее изучить настройки профиля отладки и обнаружил, что хоть на графической форме явно нужного параметра нет, но все настройки можно сохранить по указанному пути и отредактировать в виде текста. Для этого нужно перейти на последнюю закладку Common/Общее и для сохранения выбрать каталог. Тут будет сразу две особенности: 1) для сохранения можно указать только корень одного из открытых проектов, 2) нельзя указать имя настройки - это всегда будет название текущей конфигурации отладки и расширение *.launch . Т.е. если вы используете Git и не хотите чтобы вся команда вместо стандартного 1551 начала дружно использовать новый указанный вами порт, то нужно сразу добавить в .gitignore исключение для всех launch-файлов. Прежде чем переходить к редактированию файла, нужно форму настроек отладки закрыть и применить изменения. Если вы внесете ручные изменения в конфиг, а потом в EDT нажмете сохранение настройки, то все внесенные правки перезатрутся стандартными значениями (заметил такое поведение на версиях 2025.*) В текстовом конфиге нам будет нужен параметр ATTR_DEBUG_SERVER_PORT (с длинным префиксом, который можно увидеть на моем скрине), который равен "-1", что дает команду использовать порт 1551. Но мы можем тут задать любой другой порт (я обычно использую 2551 или 3551, чтобы было напоминание про оригинальное значение). После записи файла просто запускайте нужную конфигурацию отладки и проблемы с конфликтом портов больше не будет. #EDT #1C #debug6,12%
  • 24 окт.У меня была задачка с доработкой прав в конфигурации IRP. Суть в том, что ранее права на отчеты наследовались от подсистем, но практика показала, что не все отчеты одинаково полезны (а некоторые вообще запрещены к просмотру), и потому было принято решение создать по роли для каждого отчета и заниматься тонкой настройкой уже в соответствующих профилях доступа. Единственная проблемка в том, что отчетов уже 66 штук и эта тупая механичная работа у меня бы отняла минимум два часа времени (скорее целую половину дня). И тут я вспомнил про вчерашний вебинар по вайбкодингу 🤓 Чтобы самостоятельно повайбить, мне понадобился всего лишь Cursor на бесплатном тарифе, в котором я открыл папку со своим рабочим репозиторием. На первом скрине видно как я попросил создать новые роли (тут видно, что я допустил промашку и попросил только "просмотр", и потом пришлось отдельно просить добавить "использование" и заодно удалить лишние права на использование видов клиентов) - Cursor проанализировал дерево проекта, сам понял что такое "роль" и какова их структура, и сделал абсолютно верно 66 новых ролей. На втором скрине видно как я попросил включить роли в описание конфигурации. Поскольку я второй запрос выполнил в том же чате, то Cursor помнил нужный список из 66 ролей, который не пришлось дополнительно напоминать. Агент проанализировал файл описания структуры конфигурации, понял как добавлять в описание роли и добавил новые сразу под уже существующими. На третьем скриншоте видно, что роли уже сами подгрузились в параллельно открытом ЕДТ. И они сразу были абсолютно правильными и готовыми к использованию (не считая нюансов, о которых я уже упомянул). Так же на этом скрине виден 1С:Помощник, которому сегодня что-то плоховато и он отказывается отвечать 🤪 Итого, я за 15 минут на бесплатном тарифе с самой простой моделью без MCP получил рабочий результат задачи, которая в обычных условиях заняла бы несколько часов моего времени. И эти 15 минут я потратил в основном на просмотр структуры и содержимого новых файлов, на обновление тестовой базы и на проверку, что тестовый пользователь теперь видит только те отчеты, которые я точечно добавил в его профиль. #1С #cursor #vibecoding5,58%
  • 18 июл.Поучаствовал в дискуссии на Линкидин с одной участницей, которая написала пост про "Не верю людям, которые говорят, что работают по 8 часов в день - проверено собственным опытом и у меня так никогда не получается". Там было упущено сразу два важных момента: 1) если ты никогда не работал по 8 и более часов в день, то для тебя действительно такая нагрузка является неподъемной. Это как прийти в спортзал и в первый день пытаться жать сотку, если ранее даже гантели десятки не пробовал поднимать. К нагрузкам нужно постепенно привыкать. Если бы авторка поста как я одновременно ходила в обычную школу и музыкальную, после занятий ездила работать на дачу и перед сном помимо уроков успевала читать интересные книги, то просто не существовало вопроса о непосильной сложности 8 часов кликать мышкой. 2) нельзя ничего мерять по своим силам и даже по силам своего окружения. Ведь так можно сказать, что все олимпийский призеры на допинге, ведь ты без допинга не сможешь достичь тех же результатов (да и допингом тоже не сможешь - значит все состязания подстроены). Если у тебя вдохновения хватает лишь написать парочку постов в интернете, так значит все эти Гюго, Дюма, Джеки Лондоны и Стивены Кинги на самом деле тоже не писали свои романы, а нанимали армии литературных рабов для титанического труда в сотню страниц.5,19%
  • 28 июн.❓ Почему так мало постов? Мои старые читатели помнят, что ранее я не мог сдержаться и писал почти каждый день (иногда по несколько заметок в день). Неужели у меня пропало вдохновение? Нет, причины лежат в оффлайне. 1) Прошел год со времени, как ракета уничтожила подъезд от крыши до подвала в соседнем доме, по адресу тещи, где я жил более десяти лет. До нашей квартиры от эпицентра взрыва было не больше 50 метров и потому по всем стенам и потолку пошли трещины (теща пряталась в коридоре и отделалась испугом). Попытки получить компенсацию не увенчались успехом. Соседи, кто шустрее, получили компенсацию в первые месяцы, но мы до осени занимались только внесением квартиры в электронные реестры (обязательное условие для компенсации), поскольку это была старая хрущовка с докомпьютерной эпохи и никто не оцифровывал старые документы (еще был отдельный квест с распознаванием печати на документах, которая практически стерлась, но поле регистратора было обязательным при подачи заявки на включение в реестры). И сейчас окончательно получили отказ. 2) Накануне годовщины с квартирой тещи несколько реактивных беспилотников влетели в соседний дом бабушки моей жены. Бабушка не пострадала, так как успела умереть месяцем ранее. А вот теще не повезло - она как раз приехала посмотреть на ущерб после первого прилета, когда произошла новая атака со взрывом, ударная волна которого довыбивала остатки окон и засыпала тещу осколками стекла. В доме ОСББ и жильцы сразу подали коллективный запрос на компенсацию, который сразу отклонили - денег нет! К слову, когда пострадала первая квартира, то приходили волонтеры и помогали заделывать окна досками и клеенкой, но в этот раз никто не пришел (видимо за прошедший год количество добровольцев прорядили рейды ТЦК). 3) Рейды ТЦК по Киеву ужесточились. Буквально вчера услышал крики из окна и выглянув увидел классическую картину. "Группа оповещения" схватила в парке парня, который выгуливал собаку. "Добровольца" вместе с его собакой силой засунули в серебристый фиат на глазах продавцов и покупателей нашей сельскохозяйственной ярмарки, и те попытались отбить парня - кричали, стучали по стенам машины, пытались перекрыть дорогу выезда из парка. Но видимо премии за поимку были важнее и бусик начал газовать прямо на протестующих, так смог вырваться из окружения и уехал с добычей. 4) Моя отсрочка от призыва действует до 30 июня (т.е. прекратится через три дня). Следующую должны были дать автоматически по моему запросу через Резерв+, но на днях Минообороны сообщили, что отключили связь с госреестрами и получение отсрочек онлайн не будет работать какое-то неопределенное время... 5) Моя болезнь крови обострилась и последние три недели все анализы очень плохие. Пытаемся с моим семейным врачом и гематологом понять причину, но пока безрезультатно отмели две гипотезы с сопутствующими заболеваниями. Видимо проблема сложнее. Чтобы сдерживать болезнь, я принимаю дорогие препараты по тысяче баксов в месяц - покупать с рук у перекупщиков на 10-20% дешевле чем в аптеках, но есть риск попасть на подделку. Если я ел подделки месяц или два, то это очень плохо и болезнь имела время адаптировать к лекарствам... 6) У нашей кошки уже более полгода были узлики на груди, но нам в нашей ветеринарке ответили, что хирургическое вмешательство в ее случае (нефроз одной почки со времен жизни в приюте) только повредит и нам нужно наблюдать. Неделю назад один из узлов сильно напух и отвердел. Кошка начала его вылизывать своим шершавым языком и вскрыла образование (сняла кожу над опухолью) после чего начался плохой запах. Ветеринар сказала, что нужно срочно делать операцию, а пока с помощью бандажа ограничить возможность вылизывать опухоль. Операцию мы провели у нашей знакомой хорошей докторши, которая уже спасала многих кошек наших родственников и знакомых. Оказалось, что из-за мастита с застоявшимся молоком (старые уплотнения) внутри уже развился гнойный абсцес, который давал тот запах. При операции хирург удалила весь левый пакет молочных желез, так как опухоль пошла от груди почти до паха. Это была очень тяжелая и сложная операция и потому менее проблемный правый пакет желез трогать не стали и отложили операцию на август, если кошка успешно переживет последствия текущей операции. Пока все хорошо. Уже прошло больше недели со времени операции и вчера на осмотре сняли большую часть швов. Но для нас с женой это тяжело и были бессонные ночи с контролем, чтобы кошка не вылизывалась и активно не бегала (не считая таблеток и бесконечных уколов). 7) Для завершения стоит упомянуть погоду. Сейчас очень жарко и, как на зло, начались традиционные пожары в области. Вчера весь Киев был затянут мерзким смогом и даже ночью нужно было держать все окна закрытыми без притока свежего воздуха. Когда я пробывал приоткрывать окно, то в квартиру сразу шел тяжелый запах гари. #войнаимир #offline #irl4,87%
  • 8 авг.У Сергея Сыпачева вышло очередное вдохновляющее интервью - Конец эпохи 1С? Один промт — и готовая конфигурация за вечер Рекомендую посмотреть, если кто-то живет в иллюзии, что ИИ все еще где-то там далеко и до сих пор не применимо в реальной работе. Тут человек, который далек от команды разработчиков платформы 1С и не обладающий их закрытой документацией, всего за один вечер в рамках лимитов недорогой подписки сделал упрощенный аналог платформы 1С, а потом по вечерам в один промпт делал портирование своих старых 1С-конфигураций на новую платформу. И это не просто работоспособно, но уже используется реальными людьми в реальном бизнесе!!! Большой вопрос - почему, обладая мощью современных американских и китайских моделей, оригинальная команда 1С сидит ровно на попе и не закрывают тысячами открытые проблемы из багтрекера? Почему до сих пор прикрываются бутылочным горлышком "ручной обработки" пользовательских запросов и воздерживаются от требуемых правок платформы, когда рутину можно делегировать машинам? #1С #ИИ #AI4,71%
  • 3 июл.Когда я по просьбе компании 1С проходил опрос по опыту использования EDT, то уже тогда у меня сложилось впечатление, что все это "шляпа". Ведь если бы я был тимлидом разработки EDT, то ответы на эти вопросы мне не несли практическую пользу и никак не изменили бы мои планы работ, и разве что послужили как инструментом "общественного мнения" в рамках корпоративных споров за планирование ресурсов. Недавно был вебинар по результатам опроса. Результаты, которые собрала команда разработки EDT, оказались такими же скучными и бестолковыми как сами вопросы. Тоже касалось озвученных планов - что-то смутное в духе "за все хорошее и против плохого". Единственная замеченная польза этого вебинара была лишь в вопросах слушателей, которые подняли несколько важных тем - но это было лишь каплей из моря вопросов и претензий (всего три-четыре человека, с разным опытом, безсистемно)... Снова заметил ощущение "скрытой шизофрении". В то время, как Нуралиев и его "апостолы" утверждают, что EDT должен быть основным инструментом разработки вместо Конфигуратор, развитие которого остановлено много лет назад, в это же самое время сама EDT-команда считает, что делает только инструмент для вендоров тиражируемых решений. Поэтому потребление памяти не является проблемой, так как запуск EDT планировался лишь на оборудовании разработчиков, системные требования к которому на голову выше чем требования к оборудованию для запуска 1С:Конфигуратора. Поэтому годовое (иногда больше) отставание по поддерживаемым версиям платформы - ведь вендорам не важно на новые функции и исправления ошибок, если они должны поддерживать свои решения на старых платформах, а значит с поддержкой новых версий в EDT нет повода спешить. Работать в EDT должны не все подряд, а только лучшие из лучших, а следовательно нет смысла делать юзер-френдли интерфейс и понятную документацию, а поиск причин возникающих при сборке конфигураций в гигантских java-stacktrace никого не смутит. Чтобы лично я сделал по другому? 1) Если хватает людей, то я бы поменял отношение к командам, которые уже используют EDT - это не должны быть враги, которые закидывают багами и портят планирование бэклогов. Это должны быть друзья, которые делятся уникальным опытом. Нужно "навести" мосты с разнообразными командами, которые ежедневно применяют EDT в своей работы - это море опыта, неочевидных лайвхаков и свежего взгляда. 2) Если людей в команде нет, то сделать акцент на доработке системы плагинов. Текущая документация не актуальная, не полная и содержит ошибки; стандартная установка среды разработки плагинов содержит ошибки и по факту не отличается от обычного Eclipse for RCP and RAP Developers (в котором уже можно подключить ИИ). Все работает крайне не стабильно - пока я сам пробовал разрабатывать плагин, то у меня трижды слетали файлы платформы и их нужно было заново закачивать с сервера 1С, что занимало почти сутки (у меня тогда еще свет часто отключали); а так же при работе было множество мистических ошибок, победить которые можно было лишь магическими ключиками для конфигов, которыми делились в чате разработчиков. А ведь это могла быть золотая жила! Если бы каждый с легкостью мог создавать плагины для облегчения своей работы, то это лучше всяких опросов показало бы вектор будущего развития EDT и самые популярные идеи можно было бы постепенно включать в вендорскую сборку. #разработка #1С #EDT4,55%
  • 14 июл. 2025 г.без подписи3,57%
  • 10 апр.У нас в больнице электронный документооборот с особым вайбом 🤪 Документы изначально создаются в электронной системе. Потом печатаются на принтере, чтобы быть подписанными от руки врачами. Потом в специально выделенном кабинете сектора ЭДО специально выделенный специалист ставит мокрые печати. Далее эти документы нужно отсканировать и вложить назад в электронную систему. Хештег - Будущее уже здесь! 🤓3,40%
  • 27 маяНа работе с 1С:Напарником как-то не заладилось и он все еще больше галлюцинирует чем дает пользы - вероятно его обучали для помощи с доработкой типовых, а не в целом под 1С:Предприятие. Свои персональные подписки для рабочих вопросов я естественно не использую (это было бы странно), таким образом из современного разнообразия ИИ я временами использую только бесплатный Cursor. Иногда очень удачно 👍 Но стоит и про фейлы рассказать, чтобы картинка мира была без розовых очков 🔥 Вчера решал одну "простую" проблему - было два документа, в первом из которых контрагент при смене договора подставлялся, а во втором - нет. При чем визуально реализации были абсолютно идентичными и использовались одни и те же общие модули. Очевидно, что проблема была где-то внутри из-за срабатывания некоего "побочного эффекта", но пока не было понятно где именно 😳 Я сделал замеры производительности в EDT 🤝 для обоих сценариев, но их сравнение стандартными средствами - это почти как ручная отладка, за которой можно час за часом весь день впустую просидеть и не найти ответ. И тут я вспомнил про своего ИИ-джуна 🤨 Выгрузил оба замера в файлы и скормил их в Cursor с задачей отследить прохождение общих модулей и найти развилку, где поведение изменилось. Агент долго grep-ал и по итогу написал "Эврика, я нашел!" и выдал место в коде, которое было идентично в двух сценариях 💫 На всякий случай перепроверил предложенный фрагмент, но нет - там все точно было идентично и не могло быть причиной проблем. Указал на это Cursor-у и получил ответ, что мне нужно оплатить Pro-подписку, если хочу продолжить общение 💰 "Абстрактный вайбкодер" на моем месте вероятно заплатил бы подписку Cursor и продолжил бы ждать ответ, но я просто закрыл Cursor вместе с EDT 🤝 и открыл старый добрый Конфигуратор 🛠, где на модулях можно одновременно показать два и более замеров производительности. Прошло примерно минут десять сканирования кода моими органическими глазами и в глубинах событийного движка я нашел тот самый рудиментарный Если...КонецЕсли из устаревшей логики, на котором обработка смены договора останавливалась и удаление которого привело систему в порядок 🍺 💗 Мораль истории - никому не верим на 100% и никогда не отключаем собственные мозги! #1С #cursor #vibecoding3,32%
  • 18 июн.🟡 Соскучились по ошибкам из мира 1С? Есть полностью стандартный ЗУП на поддержке без доработок. У нескольких пользователей ничего не открывается: ни документы, ни отчеты. Если смотреть в журнал регистрации, то там при открытии формы или при компоновке отчета идут вызовы в общие модули кадрового учета и : [ОшибкаВоВремяВыполненияВстроенногоЯзыка] kaynağı: {(30, 2)}: Sözdizim hatası "İç" <<?>>İç СОЕДИНЕНИЕ РегистрСведений.ГражданствоФизическихЛиц КАК РегистрСведений Проблемы, как вы уже догадались из текста ошибки, только у пользователей с турецким языком системы (сам ЗУП на русском). Стеки вызовов ошибок ни о чем не говорят. Где-то внутри ЗУП его 100500 функций формируют текст запроса согласно настроек, функциональных опций и прав доступа, а на выходе в результирующем запросе вместе строки "ВНУТРЕННЕЕ СОЕДИНЕНИЕ" почему-то "İç СОЕДИНЕНИЕ". Но при этом в моем англоязычном интерфейсе все работало, а включать ради тестирования турецкий язык системы я не решался... Подсказкой для поиска стало то, что во всех ошибках в строке псевдоним задавался как "РегистрСведений". Я выполнил поиск по конфигурации и нашел все 6 мест, где для присоединяемой таблицы задавался такой алиас - это были шаблоны запросов, которые далее скармливались в ЗарплатаКадрыПериодическиеРегистры.ОписаниеЗапросаПоТексту(), а там шаблон передавался схеме запроса и на базе этого объекта делалась верстка нового запроса: Для Каждого ИсточникСхемы Из Оператор.Источники Цикл Для Каждого Соединение Из ИсточникСхемы.Соединения Цикл ОписаниеСоединения = СтруктураОбъединяемогоЗапроса.Соединения.Добавить(); ОписаниеСоединения.ВедущаяТаблица = ИсточникСхемы.Источник.Псевдоним; ОписаниеСоединения.ПрисоединяемаяТаблица = Соединение.Источник.Источник.Псевдоним; ОписаниеСоединения.ТипСоединения = Строка(Соединение.ТипСоединения); ОписаниеСоединения.Условия = Новый Массив; ОписаниеСоединения.ПорядокСоединения = ПорядокСоединения; КонецЦикла; КонецЦикла; По листингу видно, что в свойство ТипСоединения для описания нового соединения закидывалось представление, которое получено из ТипСоединенияСхемыЗапроса.Внутреннее (QuerySchemaJoinType.Inner) с помощью функции Строка(), которая возвращает представление согласно региональных настроек пользователя (для турецкого это "İç"). Платформа 1С поддерживает 23 языка для отображения представлений внутренних значений, но язык запросов поддерживает только русский и английский. #1С #баги3,24%