en
Feedback
Никита Арипов | 1С, DevExp

Никита Арипов | 1С, DevExp

Open in Telegram

Личный канал, где делюсь полезностями и идеями с сообществом 1С Мнение личное, не официальное и только на основе открытых данных О себе: Разрабатываю 1С:Бухгалтерия предприятия и отвечаю за 1С:Бухгалтерия некоммерческой организации Вопросы - @Oxotka

Show more
2 896
Subscribers
No data24 hours
No data7 days
+5030 days
Posts Archive
📊 Channel Analysis Results by @ScratchAuthorEgoBot 🎯 Channel: @arin1c 🔥 Roast Analysis: Здарова, Никитос! Опять нашел минутку между сеансами публичной психотерапии в телеграме и раскрашиванием оловянных фигурок, чтобы написать пост? Серьезно, твой канал уже можно переименовывать в «Записки тревожного тимлида». Каждый второй пост — это разбор какой-нибудь «фундаментальной ошибки», которая мешает тебе просто признать, что ты крутой. Мы уже поняли, ты самый рефлексирующий программист 1С во всем СНГ. Может, уже хватит объяснять «Методом утенка» то, что все нормальные люди называют «поныть вслух»? Тебе 37 лет, ты работаешь в «1С», а все еще пытаешься доказать миру ( и себе), что ты «настоящий программист». Запустил целый веб-тренажер, чтобы хоть на денек почувствовать себя модным фронтендером, а потом с облегчением выдохнул и побежал обратно в свой уютный Конфигуратор, потому что «там все проще». Классика! Скоро начнешь рассказывать, что «1С:Предприятие» — это на самом деле low-code фреймворк для создания метавселенных. Твой «Стек технологий» скоро будет длиннее, чем список твоих незаконченных хобби. Еще немного, и ты добавишь туда «умение дышать» и «прокрастинацию как метод творческого поиска». А твоя одержимость процессами? Если бы ты проектировал утро, у нас был бы репозиторий на GitHub «Шаблон для вставания с кровати» и серия вебинаров «Кастомизация процесса чистки зубов с сохранением поддержки». И, конечно, твои выступления. Выиграл первое место на конфе — и тут же начал оправдываться и «осторожно радоваться». Да расслабься ты уже! Все знают, что ты просто хотел, чтобы тебя похвалили и дали печеньку. Твоя Лилит с недокрашенными глазами, наверное, уже устала слушать твои монологи о том, как страшно жить и какой сложный этот ваш Асинх/Ждать. Короче, хватит уже анализировать каждый свой чих. Просто признай: ты начальник, ты крутой, и да, иногда можно просто запушить в прод в пятницу без трех постов о когнитивных искажениях, которые к этому привели. Обнял!

Отчет McKinsey про ИИ Прочитал отчет Состояние ИИ от McKinsey (март 2025). Из интересного: 1. Компании, занимающиеся IT и разработкой продуктов планируют увеличивать найм людей. То есть разработчиков в ближайшее время не заменят.
In IT and product development, however, respondents are more likely to expect increasing than decreasing head count
2. Больше 80% компаний внедривших ИИ не видят увеличение прибыли от этого. То есть внедрение ИИ не дает глобальных преимуществ с точки зрения финансов
More than 80 percent of respondents say their organizations aren’t seeing a tangible impact on enterprise-level EBIT from their use of gen AI
3. Найти ИИ специалистов непросто. Многие респонденты сообщают, что найти таких соискателей «сложно» и «очень сложно».
Respondents continue to see these roles as largely challenging to fill, though a smaller share of respondents than in the past two years describe hiring for many roles as “difficult” or “very difficult”
4. Основные риски в использовании ИИ — это неточность, безопасность и интеллектуальная собственность. То есть у всех одни и те же проблемы и пока их сложно решить.
Respondents are more likely than in early 2024 to say their organizations are actively managing risks related to inaccuracy, cybersecurity, and intellectual property infringement
Саммари отчета на русском

Отчет McKinsey про ИИ Попался отчет Состояние ИИ от McKinsey (март 2025). Из интересных выводов: 1. IT и разработка продуктов планируют увеличивать найм людей. То есть разработчиков в ближайшее время не заменят.
In IT and product development, however, respondents are more likely to expect increasing than decreasing head count 2.
Больше 80% компаний внедривших ИИ не видят увеличение прибыли от этого Внедрение ИИ не дает глобальных преимуществ с точки зрения финансов More than 80 percent of respondents say their organizations aren’t seeing a tangible impact on enterprise-level EBIT from their use of gen AI 3. Найти ИИ специалистов непросто. Многие респонденты сообщатся, что найти таких соискателей «сложно» и «очень сложно»

Я как-то писал, что боялся Схемы запросов, потому что это какая-то неведомая технология, которую легко заменяется обычной работой со строками. Например, зачем мне писать левой рукой, если я и правой хорошо могу. Сейчас понимаю, что у этого инструмента куча своих плюсов и удобств. И зря не разобрался с ним раньше. И тут подумал, а что я еще не использую, но это очень полезное? С одной стороны когда ты четко знаешь, чем не пользуешься, то это легко. Например, Регистры расчетов. Ну тут понятно, что это крутая и уникальная фишка ЗУП, а у нас в конфигурации таких регистров нет. А вот с другой стороны, как найти то, чем я не пользуюсь? Это как вспомнить то, чего не знаешь… Решил воспользоваться одной из самых лучших методик для подобных задач! Мы эту методику постоянно применяем в проектах и она неизменно приносит удивительные результаты. Это — разговор с пользователями! Нужно лишь спросить и поговорить с теми, кто уже этим пользуется. Поэтому, внимание, вопрос: Какой инструмент, технология или объект конфигурации стал для Вас открытием? Чтобы прям вырвалось: - А что так можно было, чтоли?! Это может быть что угодно: Критерии отбора, консоль кода, XDTO-пакеты, Бизнес-процессы, Регулярные выражения, Вернуться к конфигурации БД, Выделить фрагмент через Рефакторинг, Сравнить файлы в Конфигураторе, Автоматическое подключение отладки в фоновых заданиях, подсветка текущего идентификатора. Здесь нет правильного ответа — интересно именно ваше мнение!

Только у слабого разработчика или аналитика задача плохо описана, У сильного — бизнес плохо формирует требования!

Переживания и мысли про Тренажер: Код-ревью 1С Прошел месяц с публикации Тренажера по код-ревью для 1С. Хочу поделиться своими мыслями и переживаниями. 1. Ощущаю себя «настоящим программистом» С детстве мечтал разрабатывать игры — примерно с пяти лет, как только у меня появился компьютер. Причем игры как будто важнее, чем разрабатывать. Конфигурации и решений на 1С с полна закрывает потребность в разработке. А вот с играми все сложнее. Поэтому в тренажере постарался добавить игровые механики: элементы изучения, реиграбельность, достижения, таблица лидерства и прочее. Еще один важный момент — это не привычная 1С. И это добавляет уверенности: чувствуешь себя настоящим программистом. Обязательно напишу про это отдельный пост, потому что чувствую за этим свою боль. 2. Сильно переживал из-за запуска У меня не было опыта запуска веб-приложений. Я участвовал в разработке как программист для веба, но это выглядело так: закоммитил код — и все как-то само заработало. Здесь же пришлось разбираться и все делать самому: рассчитывать нагрузку, оптимизировать обращения к серверу, следить за количеством соединений с базой и так далее. Благодаря этому опыту стал больше ценить простоту и удобство 1С. У нас с этим все сильно проще. Или может быть привычнее? К счастью, запуск прошел успешно. С пиковой нагрузкой справился хорошо, а дальше все выровнялось. 3. Поддержка продукта — это серьезная работа Запуск проекта — это сложный этап, но конечный этап. У него всегда есть срок выполнения. А вот поддержка — процесс постоянный. В моменте она не кажется обременительной, но на дистанции способна сильно выматывать. Это похоже на разработку типовой конфигурации Бухгалтерии: ты не можешь просто остановиться, всегда есть что дорабатывать, есть пользователи, есть обязательства. Помню как-то Олег Фогель приводил аналогию с выпуском газеты. Всегда появляются новые статьи или новости, которые нужно описывать. И это условно бесконечный процесс. У меня был опыт длительной поддержки платных решений на Инфостарте. В какой-то момент я отказался от них — сил и энергии стало уходить больше, чем я мог себе позволить. Поэтому внутри есть тревога: а вдруг не справлюсь и с Тренажером? Уже обдумываю, как можно разделить ответственность с сообществом :) 4. Огромная благодарность Хочу еще раз поблагодарить всех, кто поучаствовал в Тренажере! Отдельное спасибо тем, кто оставляет комментарии к задачам, поддерживает на boosty, делиться идеями по развитию. Вы все очень крутые! Спасибо! ❤️

Метод утенка У меня на рабочем столе под монитором стоит вот такая фигурка Лилит (Diablo IV) Она помимо эстетического удоволь
Метод утенка У меня на рабочем столе под монитором стоит вот такая фигурка Лилит (Diablo IV) Она помимо эстетического удовольствия еще и помогает в решении сложных задач и проектировании. Чтобы использовать ее силы нужно лишь максимально подробно и вслух объяснить, что я хочу сделать и что у меня не получается. И очень часто ответ быстро приходит. Это называется Метод утенка. Он описан в книге «Программист-прагматик». Мы разбирали оттуда уже Портфель знаний. Почему работает Метод утенка? 1. Проговаривание. Когда мы проговариваем что-то вслух, то лучше структурируем и упорядочиваем свои мысли. Когда они в голове, то там они более хаотичные. 2. Эмоциональная и когнитивная разгрузка. Фигурка или утенок не будет тебя осуждать или перебивать, даже если ты рассказываешь казалось бы очевидные вещи. Проговаривание помогает отсеять ненужное и оставить только главное, причем делаешь это без стресса и в игровом режиме. 3. Самонаблюдение. Когда проговариваешь, то четче видешь свои ошибки и заблуждения. Можешь, например, заметить, что следствия в размышлениях нелогичны. Часто замечал это когда готовишься к выступлениям - до тех пор пока не проговоришь вслух доклад он кажется максимально стройным и красивым. Итог: Метод утенка действует как инструмент внешнего мозга — помогает проговаривать, структурировать мысли и снижать эмоциональный барьер, чтобы быстрее найти решение. Кстати, это оловянная фигурка Лилит полностью раскрашенная мной (глаза не доделал только). Иногда ее заменяет Абатур или Синдрагоса. А что Вы используете в качестве утенка? Кто помогает думать?

Даже символично как-то :) 300 звездочку поставил Никита Федькин!
Даже символично как-то :) 300 звездочку поставил Никита Федькин!

Обновление стека технологий В Стек технологий для 1С добавлена информация о YaXUnit и Накидка благодаря Павлу Ткаченко. YAxUnit — это мощный инструмент написания тестов для решений на платформе 1С:Предприятие. Создан с учетом лучших практик тестирования и предлагает множество функций, которые позволяют эффективно справиться с поставленной задачей. Накидка — это инструмент для 1С:Предприятие 8, который позволяет быстро создавать формы по текстовому описанию. Использует простой и понятный синтаксис, напоминающий Markdown, а также поддерживает визуальное проектирование элементов интерфейса. Сам я с этими инструментами не работал, но от уважаемых людей слышал только хорошие отзывы. Но хотел бы еще собрать примеров использования YAxUnit для 1С. Какие задачи решаете? Напишите в комментариях! Мы, например, делали несколько подходов к юнит-тестам с разным результатом. Сейчас, в основном, для регрессионного тестирования у нас используется 1С:Сценарное тестирование, Сверка движений и тесты, написанные на Python. Для проектирования интерфейса мы чаще всего используем Mockplus. Больше полезных инструментов в Стеке технологий для 1С

Что такое идемпотентность? Идемпотентность — свойство операции, при котором повторный вызов с теми же входными данными не меняет её результат. Проще говоря: можно нажать кнопку «ещё раз» — и ничего не сломается. Пример из жизни: Кнопка вызова лифта. Если лифт уже вызван, то повторное нажатие не приведет к вызову нового лифта. Зачем это нужно в разработке? - Сохранность данных — исключаем дубли и неконсистентность - Прогнозируемость — повторные запросы не приводят к сюрпризам - Удобство для пользователя. Нажал «Загрузить» по ошибке — всё равно получишь тот же результат Например, импорт контрагентов из Excel. Типичный алгоритм: 1. Читаем файл построчно 2. Формируем объект «контрагент» с его реквизитами 3. Сохраняем в базу 4. Пишем запись в журнал импорта Что идёт не так? - Дубли контрагентов. При параллельном или повторном импорте одни и те же строки могут создать две разные записи. Обратите внимание, что и проверки на существующего контрагента могут быть не точные. Например, если искать по наименованию или другим полям, которые может изменить пользователь. - Раздувается журнал регистрации. Даже если данные не поменялись, мы каждый раз добавляем новую запись в журнал. Идемпотентность при обновлениях В разработке конфигураций важно для обработчиков обновления предусмотреть, что они могут выполниться несколько раз. Не нужно допускать случаев когда мы при обработке изменяем свойство на противоположное (плохо: Объект.ПометкаНаУдаление = Не Объект.ПометкаНаУдаление) Идемпотентность в интерфейсе Когда пользователь жмёт «Загрузить» или «Сформировать отчёт», не стоит запускать операцию заново — нужно дождаться завершения первого запроса и показать результат. При этом решение блокировать кнопку формирования отчета не всегда корректно. Например, пользователь может заметить, что указал не ту организацию и следует заново сформировать отчет. В этом случае правильно будет отменить старое задание и запустить новое, а не дожидаться выполнения. То есть может быть два случая когда пользователь нажал на кнопку повторно: 1. Данные не поменялись. Программа позволяет это сделать, но выполняется первое задание 2. Данные поменялись. Программа позволяет это сделать и запускается новое задание Итог Идемпотентность помогает писать надёжный код и делать интерфейсы более дружелюбными. Если можно нажать «ещё раз» — пусть это не приведёт к катастрофе.

Решил поучаствовать в конкурсе авторских telegram-каналов. Там много разных номинаций, не только IT. Но мы метим именно в него… Многие знают, что «настоящие программисты» всегда по-особому относятся к 1С и php. Я раньше злился на это, потом понял, что это наша фишка. Все таки программирование на 1С — это не только программирование, но и знание предметной области и очень сильные софт-скиллы. А как иначе ты будешь понимать, что от тебя хочет пользователь? Поэтому будем пробираться в большое IT. В рамках конкурса каналы будут оцениваться как программным комитетом, так и простым голосованием. Поэтому чуть позже буду просить понажимать всякие кнопочки (это необязательно). Кстати, конкурс открытый и если кто-то хочет попробовать и свои силы, то можно подать заявку. Условия: 1. Зарегистрироваться 2. Дождаться ответа 3. Сделать ссылку на лендинг 4. Упомянуть главный канал конкурса Всем прекрасных выходных!

Когда придумываешь понятное название переменной

Открытый пакет интеграций Добавил в Стек технологий для 1С информацию об OpenIntegration. Этот набор модулей, которые поставляются и в виде расширения, и в виде готовых файлов. В коде уже подготовлены все необходимые методы для взаимодействия с популярными API. Из ключевых сервисов можно отметить: Telegram, CDEK, Ozon, Yandex Disk и другие. Для работы с API не нужно самостоятельно читать документацию и готовить обвязку вызовов - все уже готово. Можно сразу обращаться к готовым методам, например OPI_YandexDisk.ЗагрузитьФайл() или OPI_VK.СоздатьПост(). У всех инструментов есть подробнейшая документация с примерами и кодом. Конечно, как и с любым API нужно будет выполнить первоначальную настройку на стороне сервиса, чтобы получить нужные токены и корректно настроить авторизацию, но дальнейшая работа уже может комфортно осуществляться с помощью этого пакета. Сам код методов выглядит так:
```bsl // Изменить сообщение // Изменяет состав существующего сообщения // // Параметры: // Токен - Строка - Токен бота - token // Канал - Строка - Идентификатор канала - channel // Отметка - Строка - Временная отметка сообщения - stamp // Текст - Строка - Новый текст сообщения - text // МассивБлоков - Массив Из Структура - Массив описаний блоков - blocks - JSON массива описаний блоков // // Возвращаемое значение: // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack Функция ИзменитьСообщение(Знач Токен, Знач Канал, Знач Отметка, Знач Текст = "", Знач МассивБлоков = "") Экспорт Строка_ = "Строка"; URL = "https://slack.com/api/chat.update"; Заголовки = ПолучитьЗаголовокАвторизации(Токен); Параметры = Новый Структура; OPI_Инструменты.ДобавитьПоле("channel", Канал , Строка_ , Параметры); OPI_Инструменты.ДобавитьПоле("text" , Текст , Строка_ , Параметры); OPI_Инструменты.ДобавитьПоле("ts" , Отметка , Строка_ , Параметры); OPI_Инструменты.ДобавитьПоле("blocks" , МассивБлоков, "Коллекция", Параметры); Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры, Заголовки); Возврат Ответ; КонецФункции```
Больше полезных инструментов в Стеке технологий для 1С

Ой, давайте уже после июньских! Всем хороших длинных выходных!