Обновить

Разработка

Сначала показывать
Порог рейтинга

Представлен открытый проект Telegram Downloader, который умеет легально, быстро и легко скачивать любые файлы даже из защищённых каналов и чатов, где закрыта пересылка контента:

  • качает даже тяжёлые файлы за несколько секунд.

  • загрузки экспортируются в JSON-формат прямо на локальный диск.

  • работает локально — вся информация о загрузках будет только на локальном ПК.

  • не нарушает политику мессенджера.

Теги:
Всего голосов 7: ↑7 и ↓0+7
Комментарии0

Актуализировали версии языков в Apps ⌨️

Чтобы вы запускали приложения на более современных версиях, в которых появились новые функции и улучшение производительности.

Добавили версии:

➖ Python: 3.14, 3.13
➖ PHP: 8.4
➖ Node.js: v24
➖ Go: 1.25, 1.24, 1.23
➖ .NET: 9.0
➖ Elixir: 1.19, 1.18, 1.17, 1.16
➖ Java: 25, 21

➡️ Обновить окружения в Apps →

И вам наш продакт-менеджер, Артем Гринберг просил передать:

🤓 А еще готовим статью и вебинар о том, как мы переписали Apps и что именно в них изменилось. Скоро расскажем подробности.

Теги:
Всего голосов 9: ↑9 и ↓0+13
Комментарии1

Вам не кажется, что порядок агрументов в обратной польской записи нелогичен? Почему 5 - 3 в ОПЗ это 5 3 - а не 3 5 - ? Как частично применить аргумент к функции? Т.е. как сделать каррирование оператора - ? Надо применить к нему предпоследний элемент стека, т.е. стек должен состоять как минимум из двух элементов, а для частичного применения достаточно было бы, чтобы на стеке лежал только один элемент.

Конечно можно каррировить оператор не первым, а последним аргументом, т.е. частично применить 3 к - и получить функцию, которая на вход будет принимать число, и вычитать из него 3. Для оператора минус вроде всё логично. А давайте рассмотрим оператор map : (a -> b) -> List<a> если к нему частично применить некоторую функцию (a -> b), это имеет определённый смысл - мы получим функцию, к которой можно применять различные данные (списки), а если мы поступим наоборот и частично применим к map некоторый список, то мы получим довольное нелепую конструкцию - список данных, к которым можно применять разные функции.

Подозреваю, что Ян Лукасевич определил такой порядок, чтобы визуально арифметические операции выгладели похожими на привычную нам инфикцную запись, но для более сложных функций, чем арифметические операторы такой порядок вызывает некоторые неудобства.

Теги:
Всего голосов 4: ↑3 и ↓1+3
Комментарии10

В игре Escape from Tarkov на магазине P90 долгое время висела надпись «Потом будет прозрачный» — после релиза её поменяли на «По ходу не будет». Игру делали девять лет, включая восемь лет и три месяца тестирования.

Теги:
Всего голосов 9: ↑9 и ↓0+11
Комментарии2

Представлен ИИ-сервис Vibetest Use, который тестирует сайты на прочность и ищет уязвимости. Параллельно запускаются сразу несколько проверок с помощью ИИ, которые ищут ошибки, битые ссылки или проблемы в дизайне. Работает на базе Claude. В качестве альтернативы можно запустить с бесплатным API от Google через Cursor.

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии1

Почему нужно использовать DTO

Data Transfer Object, термин, который для разработчиков на статических языках является чем-то самим разумеющимся, но вот остальные его могут не знать (даже если пользуются). Хотя в эпоху интеграций, фронтенд-бекенд, сервис-сервис, очереди, это крайне важная конструкция.

DTO это очень промежуточный объект между моделью в вашем коде и данными, которые вы отдаете наружу или принимаете от внешней системы.

  • Модель => DTO => json/protobuf/sql...

  • json/protobuf/sql... => DTO => Модель

Нафига? Почему не сразу преобразовывать из, допустим, json в нашу модель или наоборот? Тем более во всех экосистемах есть механизмы, которые позволяют упаковывать любые объекты, задавая правила преобразования через метаданные, аннотации или еще как-то. Пример из Java:

@Entity
public class User {
    @Id
    private Long id;
    @JsonIgnore              // приходится скрывать
    private String passwordHash;
    @JsonProperty("created_at")
    private LocalDateTime createdAt;

    // getters/setters ...
}

var json = new ObjectMapper().writeValueAsString(dto);

Существует масса причин, почему это плохая идея. Для начала, это банальное нарушение MVC архитектуры. Модель начинает знать как о представлении, о том какие поля надо выдавать наружу, какие нет, как их переименовывать и так далее. Если это кажется натянутым, то вот вам реальные последствия.

Одна и та же сущность для внешнего мира редко представляется одним способом. В зависимости от задачи, это может быть один набор полей или другой. Как это разрулить? Дальше, здесь плохо контролируется процесс, легко может быть такое, что новое поле автоматически попало наружу, хотя вы этого не планировали, но забыли его исключить. А если нужны вычисляемые поля или другое представление (всегда в датах)? В такой ситуации модель будет наполняться доп свойствами и методами, которые готовят доп данные для преобразования, что ведет к сильному загрязнению кода. Что из этого относится к бизнес-части, а что к представлению? Проблема.

DTO позволяют отделить представление от модели в коде, создавая по сути промежуточный слой. Имея его, вы можете независимо развивать свою модель и API для взаимодействия с ним. И да, это один из аспектов MVC, конкретно Model-View.

Готовые DTO гораздо легче чем модели конвертировать в типы на TS если у вас есть такая потребность. Например мы наши DTO (используем Alba), превращаем в типы TS с помощью готового инструмента (Typelizer). С моделями так легко не получится.

За это конечно придется заплатить. В проекте появится папка, с большим количеством файлов. Но это с лихвой компенсирует все описанные выше проблемы. DTO очень простые и для их создания далеко не всегда надо с нуля писать классы. В той же java они генерируются с помощью mapstruct, в других языках свои механизмы.

Но это только базовая история. Если мы еще подключаем инструменты генерации из sql (как в go) или openapi как везде, то те самые DTO создаются вообще автоматически на основе описаний.

INSERT INTO links (original_url, short_name)
VALUES (sqlc.arg(original_url), sqlc.arg(short_name))
RETURNING *;

DTO:

type CreateLinkParams struct {
	OriginalUrl string `json:"original_url"`
	ShortName   string `json:"short_name"`
}

Причем для update будет создана своя структура:

type UpdateLinkParams struct {
	OriginalUrl string `json:"original_url"`
	ShortName   string `json:"short_name"`
	ID          int64  `json:"id"`
}

Здесь отличается только id, но в реальных кейсах, отличий в создании или обновлении одной сущности обычно значительно больше, поэтому количество DTO тут становится еще больше.

DTO, кстати, должны быть имутабельны, иначе туда потечет логика

Больше про разработку в моем телеграм-канале Организованное программирование

Теги:
Всего голосов 9: ↑7 и ↓2+6
Комментарии1

Скрытый налог: когда 1С висит, бизнес теряет деньги. Покажем, как «Монитор» снижает затраты с первой недели

Во сколько обходятся бизнесу простои из-за «тормозов» 1С? Компания может терять десятки тысяч рублей в день, а все потому, что команда технических специалистов ищет и не может найти ту самую ошибку. А можно превратить потери от простоев в компенсацию для бюджета. 

25 ноября в 12:00 на вебинаре «Скрытый налог: когда 1С висит, бизнес теряет деньги» мы расскажем, как инструмент «Монитор» для 1С помогает бизнесу сокращать финансовые потери. 

Спикер: Андрей Бурмистров, 1С-эксперт по технологическим вопросам крупных внедрений

В программе:

— примеры скрытых затрат при проблемах со скоростью работы в 1С;

— разбор ключевых функций Монитора (долгие запросы, блокировки, взаимоблокировки, ошибки технологического журнала, уведомления о событиях);

— ответы на вопросы участников.

Все участники вебинара получат в подарок 30-дневную триал-версию «Монитора» с бесплатной установкой от наших специалистов. За 1 день и 0 рублей вы увидите проблемы производительности вашей 1С!

👉Регистрируйтесь по ссылке

ВАЖНО! С 1 января 2026 года меняется лицензионная политика продукта: на каждые 3 сервера необходимо будет покупать лицензию. До конца декабря есть возможность купить лицензию без ограничения по количеству серверов.

Теги:
Всего голосов 3: ↑0 и ↓3-3
Комментарии0

В маркетплейсе VK Cloud появилось сразу несколько новых решений, поэтому мы хотим, чтобы вы узнали, как с ними работать из первых рук во время вебинаров. Оба решения появятся в маркетплейсе накануне трансляций.

📌 26 ноября в 11:00 будем говорить о том, какие преимущества открывает РЕД База Данных. Почему это надежно, и как работает совместная поддержка в рамках SLA. Эфир проведет технологический евангелист VK Cloud Станислав Погоржельский и Алексей Бехтин, аналитик отдела разработки СУБД, РЕД Софт.

Что еще обсудим

🔷 Интеграция с прикладными системами. Как легко и быстро подключить РЕД Базу Данных к вашим приложениям, работающим в VK Cloud.

🔷 Кейсы и выгоды. Примеры из практики, демонстрирующие повышение производительности и снижение TCO (совокупной стоимости владения).

🔷 Разработка с помощью ИИ. Генерация приложения маркетплейса на Go с использованием СУБД РЕД База Данных.

Зарегистрироваться

📌 27 ноября в 11:00 начнем разговор про обеспечение безопасности данных в облаке с помощью Next Generation Firewall. Межсетевой экран позволяет контролировать трафик между ВМ, настраивать правила и вести мониторинг real-time. 

Владислав Закрятин, инженер по предпродажной подготовке из Ideco, покажет в прямом эфире, как развернуть решение за 15 минут.

Кому точно стоит посетить вебинар

🔷 DevOps и SRE-инженерам.

🔷 Руководителям ИТ-направлений.

🔷 Всем, кто использует или планирует использовать облачную инфраструктуру.

Зарегистрироваться

Теги:
Всего голосов 2: ↑0 и ↓2-2
Комментарии0

Как мы избавились от рутины в сетевом коде с помощью собственного фреймворка Chord 🪄

Расскажем на крупнейшей конференции для разработчиков разного профиля — Holly JS 🤟

Спикером конференции станет Дмитрий Дин, fullstack-лид Далее. В докладе «Chord’овская декларативность: побеждаем бойлерплейт сетевого взаимодействия» он поделится опытом внедрения собственного инструмента Chord (на базе JSON-RPC), который уже больше года работает в продакшене и избавляет команды от рутины при взаимодействии между клиентом и сервером. 

Доклад будет особенно полезен frontend- и fullstack-разработчикам (уровня Middle и выше), которые работают с TypeScript и современными фреймворками вроде SvelteKit, Next.js или Nuxt. 

Приходите послушать доклад Димы 21 ноября, с 15.30, в секции Фреймворки. 

🔗 Подробнее о докладе и спикере — на сайте Holy JS.

Теги:
Рейтинг0
Комментарии0

Апгрейд для сетевых инженеров: присоединяйся к разработке «соточных» коммутаторов

Разработчики коммутаторов KORNFELD ищут коллег. Нужны сетевые инженеры, которые будут тестировать сетевое оборудование, поддерживающее широкий спектр сервисов и протоколов, включая MC-LAG, BGP, OSPF, VxLAN, VPN, VRRP, LACP и другие. «Классические» тестировщики тут не подойдут — у успешного кандидата должен быть опыт работы с оборудованием типа Cisco, Huawei, Juniper, знание сетевых протоколов, применяемых в дата-центрах и офисах, — не только в теории, но и на практике. Фокус на мидл-специалистах и выше.

Получить быстрый оффер за 3 дня → 

Подать заявку можно до 30 ноября. Для этого достаточно заполнить форму на сайте, приложить резюме или скинуть ссылку на него.

Демонстрационная модель коммутатора, с которым нужно будет работать
Демонстрационная модель коммутатора, с которым нужно будет работать

Примеры задач сетевого инженера в тестировании:

  • Анализ продуктовых требований/ПМИ/ПСИ и составление use-кейсов.

  • Проведение разных видов тестирования: e2e, fail-over.

  • Составление тест-кейсов, тест-планов на продукт — как на новый функционал, так и на существующий.

  • Участие в совместных тестах, в том числе на площадке заказчика, и взаимодействие с командами разработки/L3/сервиса/документации.

Больше о вакансии — по ссылке.

Чтобы лучше представлять работу с KORNFELD, читайте статьи инженеров YADRO:

→ Жизненный цикл фичи в коммутаторе: от идеи через QA до прода

Как устроен L3-коммутатор: разбираемся с железом и настройками конфигурации

Теги:
Всего голосов 7: ↑7 и ↓0+9
Комментарии0

Открыли полный доступ к Evolution AI Factory для создания GenAI с минимальными затратами 🚀

Вчера на AI Journey объявили о коммерческом запуске Evolution AI Factory — облачной среды с готовым набором сервисов для работы с GenAI. Мы разрабатывали ее так, чтобы пользователям с любым уровнем навыков программирования и погружения в машинное обучение было удобно и понятно.            

В Evolution AI Factory шесть взаимосвязанных сервисов:

🧠 Foundation Models — каталог из 20+ моделей, включая GigaChat-2-Max, Qwen3-Coder, MiniMax и другие. Работают по OpenAI-совместимому API.

⚡ ML Inference — инструмент для быстрого запуска собственных ML-моделей или развертывания готовых из HuggingFace.

🤖 AI Agents — агенты для автономного выполнения задач и интеграции с другими системами.

📓 Evolution Notebooks — запуск нужной вам среды разработки в облаке: JupyterLab, VS Code Server, ComfyUI, n8n и другие. Возможность экспериментировать на CPU или GPU без ограничений.

🎯 Managed RAG — инструмент для повышения точности выдачи LLM с учетом ваших корпоративных данных.

🔧 ML Finetuning — дообучение LLM под задачи вашего бизнеса с использованием LoRA-адаптеров.

Сервисы доступны с гарантированным SLA, поддержкой 24/7 и возможностью масштабировать нагрузку. И все по доступным ценам: открытые LLM из каталога Foundation Models сейчас стоят в среднем 35 рублей за входной и 70 рублей за выходной миллион токенов. 

Выбирайте подходящие инструменты и реализуйте проекты в облаке! 

Теги:
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Хотели ускорить разработку с ИИ, а получили сопротивление и хаос: как работать с командой

Сегодня ИИ стараются внедрить буквально в каждый этап разработки. Иногда это вдохновляет, но чаще вызывает закономерный скепсис и сопротивление — особенно у команд, которых бездумно заставляют использовать новые инструменты.  Почему возникает это сопротивление и как его преодолеть?

Евгений Сатуров, CTO Mobile в Surf, провел 50+ сессий парного программирования, понаблюдал, как разработчики впервые работают с ИИ, и собрал 40 страниц выводов. А потом рассказал обо всем на конференции AI Boost. Теперь выступление есть на YouTube.

Вы узнаете:

  • Почему ИИ-кодинг — это отдельный навык, а не автоматическое ускорение разработки.

  • Какие 5 ключевых страхов чаще всего мешают командам (стоимость, недоверие, потеря контроля, замедление, отказ от результата).

  • Как ИИ подчеркивает слабые места постановки задач и почему качество промпта напрямую влияет на качество решения.

  • Чем различаются системные, таск- и мета-промпты, и зачем их понимать каждому разработчику.

  • Почему ИИ-агенты эффективнее на цельных задачах, чем на мелких правках.

  • Как руководителю внедрять ИИ так, чтобы это не было про «разбирайтесь сами».

Главные барьеры на пути внедрения — не технические, а человеческие. Все ошибки и проблемы проистекают из страхов и заблуждений разработчиков, а не из несовершенства ИИ.

Евгений Сатуров, CTO Mobile в Surf

В видео — много практики, наблюдений и реальных кейсов, как ИИ реально помогает командам — и какие ошибки лучше не повторять. Смотрите на YouTube.

Теги:
Всего голосов 6: ↑1 и ↓5-4
Комментарии2

Квиз: насколько вы разбираетесь в играх 90-х

Помните мелодию из Марио? Этот джингл, (который у вас, вероятно, заиграл в голове) — символ эпохи, которая для многих открыла мир видеоигр. 

Если вы росли на картриджах и первых CD с играми или просто хотите освежить память о культовой эпохе, то пройдите наш новый квиз.

Пройти квиз →

Ответьте на 10 вопросов и получите подборку полезных материалов. Не забудьте  заглянуть в комментарии, чтобы поделиться своим рекордом.

Теги:
Всего голосов 10: ↑6 и ↓4+7
Комментарии6

Ближайшие события

Дело было 20 лет назад.
Мы уже не студенты, но и до взрослой жизни как до Луны пешком.
Ни забот, ни логики - зато с гормонами и амбициями.
Нулевые.

И вот барышня в ЖЖ (да-да, это как Телеграм, только с модемным писком и на сайте) пишет:

«А давайте встретим Новый год в Коктебели»

Один пост - и пол-рунета в кассах. В итоге мы выкупили поезд. А может, и два.

Картина маслом: декабрь, летний курорт, и целый состав, набитый незнакомыми людьми, которые решили, что это отличная идея.

Поезд гудел - сначала в прямом, потом и в переносном смысле. Мне кажется, через 3 часа гудеть начали проводники, через 5 - бабушки на перронах. Через 7- птицы и животные, попавшие в воздушный поток состава.

Крым пал. Город был в предсмертной зимней коме, когда туда вкатился целый состав молодых идиотов с алкоголем, гормонами и амбициями.

Отельчики ещё кое-как принимали, а вот рестораны - сдались без боя. Еда по 3–4 часа, отмены блюд на второй день стали нормой. От массовых погромов спасали только алкоголь и молодость.

Я-то считал поездку сказкой. А оказалось - драки, выбитые зубы и прочие радости, которые я чудом пропустил.
И всё это - в шапочках Санты, на которых красовались наши ЖЖ-ники. Удобно: сразу видно, кто именно выбил тебе зуб. Такой вот рождественский хоррор…

Ну а логика… думаю, она что-то знала и вышла вместе с провожающими еще на Казанском.

Но мы старательно восполняли её отсутствие. В соседнем купе кто-то разбил окно - летний, да ещё и неотапливаемый вагон в Крым сразу стал похож на арктический экспресс.
И вот в плацкарте, доверху наполненном пивом и прижавшимися друг к другу телами незнакомцев, я впервые услышал задачку про поезд.

И раз уж сегодня пятница - пусть она достанется вам.

- Гудящий поезд "Москва-Коктебель" движется по кругу. Наблюдатель находится в одном из вагонов и может:
- ходить вдоль поезда,
- включать/выключать свет в вагоне,
- смотреть в окно (но поезд слишком большой, увидеть «другую сторону» нельзя).

Изначально в каждом вагоне свет может гореть или нет. Это неизвестно.
- Вопрос: как посчитать количество вагонов?

Правила простые:
знаем - молчим,
нет - думаем - пишем.
AI не пользуемся.
Ответ - обязательно скажу, но позже.

-
#вот_не_задача #комплимент_от_шефа

Теги:
Всего голосов 5: ↑0 и ↓5-5
Комментарии10

Блог Tantor на Habr: наша коллекция знаний по Tantor и PostgreSQL для вас 🐘

Друзья, наш блог на Хабре появился полгода назад, и за это время мы опубликовали целую библиотеку материалов. Мы не только пишем код и рассказываем о новинках, но и делимся тем новым, что изучаем и узнаем. Собрали для вас все статьи в тематические подборки:

🧑‍💻 Решение конкретных задач для администраторов БД и DevOps-инженеров

Как мониторить сотни инстансов PostgreSQL и не сойти с ума

Настройка OAuth-авторизации в СУБД Tantor Postgres

Быстрый старт в маскировании данных с pg_anon

Как провести нагрузочное тестирование БД PostgreSQL и ничего не забыть

Кластер Patroni в Docker-контейнерах

Трассировка запросов в Postgres с расширением pg_trace

Логирование (аудит) сессий в PostgreSQL

Тонкости оптимизации для разработчиков и архитекторов БД

Выбор индекса при соединении по нескольким столбцам

Когда может быть полезно семплирование в pg_stat_statements

Работа с временными таблицами в PostgreSQL

Работа с длинными строками в PostgreSQL

Хранение временных данных в PostgreSQL

Экспертный уровень и R&D

Сравнение транзакционных систем Oracle и PostgreSQL (перевод)

wpg_dphyp: учим PostgreSQL соединять таблицы по-другому

Пример создания патча для PostgreSQL

Внутристраничная очистка в индексах PostgreSQL

Ретроспектива: 64-битный счетчик транзакций в PostgreSQL

Для специалистов по 1С

Обзор улучшений для 1С в СУБД Tantor Special Edition 1C 17.6

Обзор улучшений для 1С в СУБД Tantor Special Edition 1C 17.5

Какие темы хотите обсудить в следующих статьях вы? Пишите в комментариях.

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии1

4 раунда за 2 недели собеседований → оффер в пятницу → отказ в понедельник.
Причина?
Мой чертов LinkedIn, который я не обновлял пару лет.

Все любят истории успеха 🙃
Но вот вам история НЕ-успеха - и при этом моя собственная.

За последние 2 недели прошёл:
🟢 HR-интервью
🟢 Техническое интервью (жёсткое, но честное)
🟢 Интервью с командой
🟢 Интервью с CPO
🟢 Получил оффер. Подтвердили, что всё ок.

В пятницу вечером в почте лежал «Welcome aboard».
Я, честно - обрадовался. Уже mentally onboarded. И самое !главное! крутая команда, крутые задачи впереди, возможность строить инфраструктуру с нуля и возможность топить в ИБ (реальную а не бумажную) - ну восторг жеж. Да я уже запланировал фаст-вины на первые 30 дней!

А в понедельник приходит письмо:
«СТО принял решение не двигаться дальше. Ваш опыт в резюме не соответствует тому, что в LinkedIn».

Что?! Какого?!
LinkedIn, который я не вёл несколько лет?
Площадка, которую большинство инженеров обновляет раз в эпоху?

Я объяснил, что могу подтвердить опыт трудовой, рекомендациями, стеками проектов, GitLab’ами, CI/CD пайплайнами - чем угодно.
Ответ:
«Решение финальное».

И вот честно - я не злюсь. (да что уж там, бесился первые пол часа)
Но вся эта ситуация подсветила кое-что важное:
Нужно делать то, что приведет напрямую к приему на работу, я повторил всю теорию, прошелся по практике - а надо было резюме пилить.

*Мой личный инсайт* В эпоху, когда DevOps пишет IAC, придумал собственный термин, что карьера тоже - Career As a Code, и её надо поддерживать.

Так что да: обновляю LinkedIn.
Да: выкладываю эту историю.
Да: остаюсь мотивирован строить системы, усиливать DevOps и DevSecOps, выстраивать безопасность, SRE, процессы, документирование, хаос-устойчивость - всё то, в чём я реально силён.

Может я единственный, кто еще живет по старому, а все остальные давно проснулись в матрице?

Как часто вы обновляете ЛН?

Теги:
Всего голосов 9: ↑6 и ↓3+4
Комментарии9

Как анализировать C и C++ код без привязки к сборочной системе на Windows

Код, написанный на C и C++, может использоваться для самых разных целей. И под каждые из этих целей есть свои инструменты сборки. Например, при разработке программного обеспечения для встраиваемых систем используются специальные компиляторы и сборочные системы.

Иногда бывает так, что появляется целый "зоопарк" самописных скриптов сборки, а его последний "смотритель" уволился ещё в прошлом году (играет Гражданская Оборона — "Зоопарк").

Хотелось бы всё равно как-то анализировать такой код без необходимости разбираться в хрупкой и непонятной системе сборки. Что же делать?

На самом деле, решение есть! Смысл взаимодействия анализатора со сборочной системой состоит в том, чтобы получить необходимую для анализа информацию. Но получить её можно и другим способом: из запущенного процесса компиляции.

В новой статье посмотрим, как воспользоваться этим механизмом для ОС Windows в анализаторе PVS-Studio, и  как сделать его использование в процессе разработки удобным.

Теги:
Всего голосов 5: ↑4 и ↓1+4
Комментарии0

Короткий метр «ТЕХПРОЦЕСС» о производстве железа вышел на всех наших каналах

В этом получасовом фильме показываем то, чем гордимся и дорожим. Собственное производство полного цикла, где делаем компьютеры, серверы, ноутбуки, материнские платы и многое другое. Линии поверхностного монтажа, отдел технического контроля, сборочный цех.

А еще рассказываем о всех, ну или почти всех, наших технологических секретах.

Присоединяйтесь к экскурсии по заводу «Инферит» вместе с нашим главным технологом Кириллом Пушкиным — и увидьте весь процесс создания технологий своими глазами.

Вперед, смотреть ролик на YouTube, RUTUBE и VK Видео. И обязательно подпишитесь, чтобы не пропустить новые видео. Будем стараться делать интересно.

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Новости про документацию по Bitrix Framework!

1. Дополняем и улучшаем контент

Разделы, которые уже есть в документации и достаточно полно описаны:

  • Основы фреймворка

  • База данных

  • ORM

  • Безопасность

  • Производительность

Кроме контента, мы интегрируем документацию с AI/LLM для их корректной работы.
Найти всю актуальную информацию по работе с продуктом и фреймворком можно здесь https://docs.1c-bitrix.ru/

2. Благодарим за помощь

Партнеры и разработчики, которые уже внесли вклад в развитие нашей документации:

Спасибо, что помогаете делать документацию лучше!

3. Просим рассказать, чего вам не хватает

Хотим понять, в правильном ли направлении мы движемся и запускаем опрос для сбора обратной связи.

Расскажите, чего вам не хватает в новой документации, поделитесь своим опытом и мнением. Мы анализируем всю обратную связь и хотим добавить в документацию именно то, чего вам недостает в повседневной работе.

Ссылка на страницу опроса https://docs.1c-bitrix.ru/poll-bar.html

Теги:
Рейтинг0
Комментарии0

Repeater - легкий оркестратор для аналитики

Repeater запускает задачи по расписанию. Задачи описываются в toml-файлах и отображаются в веб-интерфейсе.

title = "wiki"
cron = "55 * * * *"

[[tasks]]
name = "wiki_pageviews"
cmd = "python3 ./examples/wiki_pageviews.py --end_date={{.scheduled_dt}}"   

[[tasks]]
name = "trigger_outliers_update"
cmd = "python3 ./examples/trigger_outliers_update.py"

Возможен запуск при завершении другой задачи, уведомления о падениях, параллельные этапы. Repeater подойдёт для импорта данных и обновления витрин в хранилище.

Попробуйте!

Демо: https://repeater.up.railway.app/
Репозиторий: https://github.com/andrewbrdk/Repeater

Теги:
Рейтинг0
Комментарии0