Обновить

Бэкенд

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

Язык, с которым у ИИ плохо

В подкасте Радио-Т 1018 был интересный момент, что у ИИ сейчас гораздо меньше опенсорсных репозиториев и датасетов на Swift, чем условно на Python или Go. И поэтому, как Claude Code, так и Codex хреново пишут нативные iOS приложения. А ведь API языка обновляется, имеющиеся данные в нейронках устаревают с каждым WWDC.

Я как бэкендер с этой темой не сталкиваюсь. Стало интересно, как в Apple вайбкодят разрабы и влияет ли это как-то на темпы разработки по сравнению с конкурентами. Apple Intelligence пока пытались запустить для обычных потребителей, или когда анонсировали переход на Gemini-бэкенд, это повлияло как-то на пайплайн разработчиков? Есть ли у их моделей какой-то секретный проприетарный датасет, чтобы повысить качество работы с их экосистемой?

Мне короткий гуглеж выдал, что анонсировался Swift Assist в 2024, но в 2025 году от него отказались в пользу доступа к любым моделям с помощью API-ключей. То есть сама компания не может предоставить продакшн тулинг за счет доступа к самому большому в мире закрытому репозиторию Swift-кода. Получается, Apple со своей закрытой инфраструктурой не может оставаться верной своей концепции. В эпоху агентской разработки у компании не получается замыкать на своем решении инженеров, чтобы не уступать конкурентам.

Тут у меня котелок начал накидывать вопросы.

Apple ладно, а какое будущее у новых языков программирования? Будут ли авторы новых языков задаваться вопросом «как мой язык будут поддерживать нейросети?» Их популяризация будет целиком и полностью за счет опен-сорс коммьюнити теперь, пока остальные языки будут писать агенты? Сообщества сами генерят синтетические данные для языков программирования, чтобы локальные модели лучше умели в определенный скилл? Или может для языков будут сразу разрабатываться скиллы или MCP? Какую роль в адаптации к агентсткой разработке будут играть компилируемые языки со строгой типизацией по сравнению с нестрогими, скриптовыми языками? А поддержка нового языка агентами на сносном уровне, - это повод для флекса в презентации у компании?

В интересное время живем.

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

Выбрать курс Практикума со скидкой 10%

С 1 июля часть курсов станет дороже — успейте в последнюю волну, чтобы учиться по прежней стоимости.

BLG-10 — промокод на скидку 10%, действует на все курсы до 30 июня включительно. Копируйте и применяйте при оплате для максимальной выгоды. Также получите бонусом курсы стоимостью ~75 000 ₽ и книги от издательства МИФ.

Давно не заходили в каталог? С тех пор многое изменилось: появились новые направления, а старые курсы стали полнее. Например, теперь в них есть модули по работе с нейросетями, ведь навыки работы с ИИ всё чаще видят как конкурентное преимущество.

Перейти в каталог курсов

Если планировали начать обучение — сейчас лучший момент. Ещё есть время выбрать курс и пройти бесплатную вводную часть, чтобы познакомиться с профессией и Практикумом — и принять взвешенное решение. Привязывать карту не нужно.

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

Python Парсинг: большой гайд 2026 + топ 20 ошибок при парсинге

Это полноценный бесплатный практический курс от базы до production-подхода.

Внутри разбираются:

- как работает HTTP, HTML и DOM

- requests, BeautifulSoup, lxml

- CSS-селекторы и XPath

- работа с API, JSON и авторизацией

- динамические сайты через Playwright и Selenium

- асинхронный парсинг на aiohttp и asyncio

- Scrapy как промышленный фреймворк

- обход антибот-защит

- хранение, валидация и экспорт данных

- ретраи, логирование и обработка ошибок

- тестирование парсеров

- архитектура production-парсера

- типовые ошибки и антипаттерны

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

Материал для тех, кто хочет прокачать Python-парсинг не на уровне игрушечных примеров, а ближе к реальным задачам.

https://github.com/justxor/Pythonparsing-/tree/main

#junior #python #парсинг


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

SQLite-провайдер для RedBase — скоро.

Тот же API что PostgreSQL и MSSQL. Без миграций, полный LINQ, типизированные колонки.

Free: нативное расширение (.so / .dll / .dylib).
Pro: чистый C# — работает в Blazor WASM.

Минимальная версия SQLite 3.44.0+.

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

▶️ История USmall — хайлоад изнутри

6+ млн товаров, 130 ритейлеров и до 70 млн запросов во время распродаж. Мигрировали USmall в наше облако и записали видеокейс о том, как устроена инфраструктура такого проекта.

Из любопытного:

1️⃣ 130 площадок — 130 изолированных контуров. На каждую свой репозиторий и Docker-образ. Релизы независимы, все изменения изолированы.

2️⃣ Свой механизм иерархических подов. В основе паттерн одноразовых подов — каждый выполняет один цикл и завершается. Поверх него команда построила иерархию, где родительский под запускает дочерние. Так обходят ограничение Python по пропускной способности одного воркера и обрабатывают задачи параллельно.

3️⃣ Выделенный сервер под оркестратор. Когда Airflow потребовалась отдельная конфигурация, под него собрали сервер на двух 32-ядерных процессорах и перенесли без простоя.

4️⃣ AI прямо в Kubernetes-кластере. В тестовом режиме крутится нейросеть, которая ускоряет подключение новых магазинов.

Все это команда ведет сама — новые ноды добавляет за пару минут через панель, без отдельных DevOps-инженеров. А инфраструктура у нас вышла на 35% дешевле прежнего провайдера — при том же объеме.

В видео Станислав, руководитель Python-разработки USmall, рассказывает про архитектуру и почему выбрали наше облако.

Смотреть видеокейс на ютубе, рутубе и в вк.

Или читать подробный разбор на сайте →

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

Бэкенд без слепых зон: 10 открытых уроков для разработчиков

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

Собрали бесплатные открытые уроки для бэкенд‑разработчиков разных стеков. Преподаватели‑практики покажут рабочие подходы, разберут типовые ошибки и ответят на вопросы. Заодно можно познакомиться с экспертами и проверить формат обучения OTUS.

Архитектура и взаимодействие сервисов

  • 22 июня, 20:00. «OAuth 2.0, JWT и коварные куки: проектируем безопасную аутентификацию». Записаться

  • 24 июня, 20:00. «RabbitMQ против Kafka — что выбрать для вашей структуры: сравнение и лучшие практики». Записаться

  • 24 июня, 20:00. «Отказоустойчивый и высокодоступный кластер RabbitMQ». Записаться

Java и Spring

  • 22 июня, 20:00. «Контейнеризация Java-приложений с Docker». Записаться

  • 29 июня, 20:00. «Как работает @Transactional в Spring: границы транзакций и типовые ошибки». Записаться

  • 1 июля, 20:00. «Алгоритмическая сложность коллекций в Java». Записаться

  • 22 июля, 20:00. «DAO на Spring JDBC». Записаться

.NET и Go

  • 18 июня, 20:00. «Хостинг ASP.NET Core изнутри». Записаться

  • 25 июня, 20:00. «Кеширование в ASP.NET Core: от IMemoryCache до Redis». Записаться

  • 8 июля, 20:00. «Чистая архитектура на Go без "карго-культа": слои, DTO и интерфейсы». Записаться

Выбирайте тему под свой стек и подключайтесь к открытым урокам.

Больше бесплатных открытых уроков по другим направлениям смотрите в нашем дайджесте.

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

Вайб-кодинг на корпоративном контроле: как превращать хаос генерации в инженерную дисциплину

Приглашаем вас на совместный вебинар ITFB Group и компании Veai, посвящённый практике контролируемого применения ИИ в разработке.

Когда: 24 июня, 11:00
Где: онлайн

Ключевой вопрос: как использовать скорость вайб-кодинга, но при этом не допустить падения качества, потери управляемости и рисков безопасности?

О продукте

Veai — первый российский ИИ-агент, сочетающий высокую скорость генерации кода с жёстким контролем на основе формальных методов. На вебинаре мы на реальных примерах покажем, чем Veai отличается от Cursor, Copilot и других доступных на рынке решений.

Программа вебинара

Практическая демонстрация: работа агента на реальном коде — от постановки задачи до готового результата.

Сравнительный анализ: объективная оценка сильных и слабых сторон популярных ИИ-ассистентов.

Метрики и экономика: данные по экономии часов, ROI, доле принятого сгенерированного кода и росту тестового покрытия (до 80% с использованием символьного исполнения и data-flow анализа).

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

Безопасность и архитектура: варианты развертывания (on‑premise, self‑hosting, VPC, SaaS), механизмы контроля доступа и встроенный SAST-движок, проверяющий каждую генерацию.

Спикеры

Константин Волков, менеджер по техническим решениям Veai.
Наталья Романова, директор по развитию ITFB Group.

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

Кому будет полезно: ИТ-директорам, руководителям разработки, архитекторам и всем, кто внедряет или планирует внедрять ИИ-инструменты в корпоративную среду.

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

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

Вебинар: через час расскажем, как управлять IT-инфраструктурой через Terraform

Terraform-провайдер Selectel позволяет управлять физическими серверами и другими ресурсами по концепции IaC. Мы готовим большой апдейт этого сервиса — на вебинаре расскажем все подробности.

Что вас ждет:

  • поделимся возможностями Terraform-провайдера для управления IT-инфраструктурой;

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

  • объясним, как работают новые функции.

Приятный бонус: все слушатели вебинара получат промокод на 3 000 бонусов в панели Selectel, чтобы протестировать возможности Terraform.

📹 Смотреть на YouTube

📹 Смотреть в VK

Теги:
Всего голосов 7: ↑5 и ↓2+8
Комментарии0
18 июня, начало в 18:30 (Мск), онлайн, Zoom
18 июня, начало в 18:30 (Мск), онлайн, Zoom

Приходите на второй открытый онлайн Devhands AI Meetup #2!

📅 Когда: 18 июня, начало в 18:30 (Мск)

🔗 Где: Zoom (запись через таймпад

Формат: блиц по 7 минут, только личный опыт и кейсы, без воды. ~45 минут выступления подряд без вопросов, ~45 минут — обсуждение и вопросы. Всё бесплатно.

Программа на 18 июня:

«ACP как база для агентской автоматизации» Алексей Самойлов, Techlead в Fastronome

«Системный дизайн через AI-скиллы и MCP: от требований до архитектурного решения» Виталий Юшкевич, Lead engineer в Pugofka 

«Опыт применения AI в стартапе инфраструктурной платформы» Георгий Меликов, no-ops платформа Exordos

«Организация правил работы с проектами в Claude» Денис Савицкий, разработчик в DeltaSoft

«Опыт применения AI для анализа фродовых регистраций» Дмитрий Дунаев, Дата инженер в ССР

Ксения Погорельских, хостинг-сервис Deploy-f-, название доклада уточняется (расскажу про факапы, про эксперимент, где 30 агентов-тестировщиков нон-стоп ищут баги, а агент-разработчик эти баги исправляет и отдает на ретест. И почему эти агенты долго не могли выдать мне ветку с фиксами, готовую к мержу в мастер).

Приходи, регистрируйся, это можно сделать через таймпад, или через наш чат, Devhands AI Club. Если интересно участвовать в качестве блиц-спикера - присылай заявку на следующий митап. Темы, которые мы хотим обсуждать:

Кейс: рассказ о запущенных проектах, опыт внедрения и adoption в компаниях

Цикл разработки: Agentic SDLC, SDD, ADR, автоматизация QA (unit, smoke, e2e, нагрузочное), деплой, работа с инцидентами, sandboxing, security

Агенты: возможности/недостатки, опыт, сравнение, новинки, баги 

Облачное окружение: модели, гейтвеи, стоимость

Локальные модели: модели, железо, сетапы, скорость и стоимость. 

Ошибки, которые я не повторю. Ошибки, которые я не повторю. Ошибки, которые я не повторю. Ошибки, которые я не повторю. Ошибки, которые я не повторю.

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

На Go непривычно после Python

На работе переводим сервисы на Go. Делюсь ощущениями от Go, как FastAPI-питонист:

  • В Go классов нет, есть struct с полями.

  • Внутри структур нет методов. Перечислили поля и все. Дальше функцию связываем отдельно со структурой сигнатурой вида funс (s *SomeStruct) Greet () string {}. С аргументами читается еще тяжелее.

  • ООП нет, наследования нет. Связь между структурами через композицию.

  • Ошибки нужно обрабатывать руками без try ... except с помощью if err != nil {...}.

  • nil вместо None

  • Эксепшнов нет. Функции возвращают ошибку как обычное значение: val, err := SomeFunc(). Хотя в Python я ответ из кортежей прям не люблю и избегаю, тут это база.

  • Зато есть panic, которые по сути – необработанные эксепшны.

  • Но на паники есть recover, который лечит последствия паники :)

  • Комментарии через два слеша // comment

  • Докстринги над сигнатурами, а не под.

  • OpenaAPI для Swagger надо собирать самому без FastAPI. Напрочь забытый навык. Даже с либами вроде swaggo/swag делать это надо руками, с ошибками.

  • Валидации полей нужно писать руками. Нет аналога Pydantic с батарейками.

  • Строка в двойных кавычках "w" – строка. В одинарных 'w' – руна, другой тип данных, который принимает в себя только один символ. Писать слово или фразу в руну нельзя.

  • А есть еще backtick ` ` для тегов структур. В них как раз могут задаваться правила валидаций в go-playground/validator:
    type User struct {
    Name string `validate:"required,min=2"`
    }

  • len у строк в байтах. Символ в кириллице = 2 байта. len строки на кириллице ~х2, непривычно. Нужно считать длину рунами в строках.

  • Иинтерполяция делается через fmt.Printf(). В отличие от f-строк в Python требует в конце явного перевода строки с \n, иначе строки слипаются. 

  • Вместо snake_case – lowerCamelCase для приватных идентификаторов пакета, а UpperCamelCase для экспортируемых.

  • Первым аргументом в запускаемом приложении командой go run some-script.go неявно выступает путь до файла. Из-за этого появляются идиомы в циклах типо «начни со 2-го аргумента».

  • Моржовый оператор a := "some" в Go это инициализация переменной с присваиванием. В Python это оператор в if ... else блоках, который инициализирует переменную только если сработало условие.

  • Аргументы у методов – позиционные. DoSomething(first, second, last) против do_something(action=first, modifier=second, final_action=last) у Python. Python умеет в лаконичность, но тут Go в нее заставляет. У методов со сложными контрактами надо сигнатуру подсматривать.

Что в Go нравится:

Тут много наивного по неопытности :)

  • Горутины – топ. Не нужно в голове держать асинхронный код, потоки, процессы, футуры, CPU-задачи, IO-задачи – на все горутины. А для передачи данных – каналы. Горутины весят 2-4 КБ против ОС-потока в 2-4 МБ памяти. Нет танцев с GIL. go func и начинаешь в конкурентность.

  • Статическая типизация при сборке находит много ошибок без линтеров и mypy. Еще она заставляет явно писать типы данных в аргументах и ответах от функций. Код нагляднее.

  • Вместо двоеточий  и отступов фигурные скобки. Я еще с NodeJS любил не капризное авто-форматирование.

  • Go-скрипты собираются в бинарники. Для них не нужен установленный Python или JVM. Просто запускаем как обычный баш-скрипт через ./script

  • Импортировать пакеты нужно целиком. Как в Python только метод импортировать нельзя. Обязательная лаконичность тут нравится. Импорты аккуратные, а в коде вызов их функций более явный.

  • Код модулей удобно читать сверху вниз. Python – интерпретируемый. Все, что не объединено в класс, должно быть объявлено перед вызовом. Код приходится нередко читать снизу вверх. Go – компилируется, порядок кода неважен. Читать код по ходу пьесы проще.

  • Стандартный пакет для тестирования go test все умеет из коробки. Аналог pytest как внешняя зависимость не нужен.

  • Ради чего все это: перевод сервиса с Python на Go даже тупо с ИИ-агентом, по метрикам Prometheus (АБ 50/50 трафик) снизил время ответа и потребление CPU и IO-ресурсов в десятки раз.

Из-за последнего вас и спрашивают на Python-собесе «готов перейти на Go»? Бабки, с-ка, бабки.

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

18 июня в 16:00 (Мск) состоится бесплатный вебинар «Rust: зачем выбирать этот язык в 2026 году?». Разберем, как Rust устраняет проблемы безопасности памяти и data races, сохраняя производительность уровня C++. Также развеем мифы про обучение Rust в 2026 году и обсудим гибридный подход интеграции с C++ через C-ABI.

На вебинаре:

✔️ Rust в 2026: цифры, тренды, кейсы

✔️ Проблемы C/C++ (use-after-free, data races) и как Rust их устраняет на уровне компиляции

✔️ Система владения и заимствования: примеры кода

✔️ Производительность: Rust vs C++ (бенчмарки)

✔️ Инструментарий: Cargo vs CMake

✔️ Гибридный подход: интеграция Rust с C++ через C-ABI

✔️ Кривая обучения в 2026 году: мифы и реальность

Предварительная подготовка:

Базовое понимание работы с памятью в C/C++ и общее представление о компиляции. Знание синтаксиса Rust не требуется.

📆 Когда: 18 июня, 16:00 — 17:00 (Мск)

👨‍🎓 Спикер: Самсонов Максим, эксперт в области разработки ПО (C/C++, Python, Rust, TypeScript, Java, JavaScript, R)

👉 Записаться

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

Агент Ануфрий v.1.0.0

Последний апдейт конструктора для создания собственных ассистентов на Python включил в себя оптимизацию токенов и скорости. Агент стал в 3 раза экономичнее.

Добавлена ленивая загрузка инструментов. Вместо отправки всех 24 встроенных инструментов сразу, агент получает 6 базовых, включая tool_use, через который доступны остальные 20.

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

Системный промпт стал компактнее в 3 раза.

Кэширование cистемного промпта и определния инструментов в OpenAI/OpenRouter (90% скидка):

  • добавлены заголовки для идентификации проекта в OpenRouter

  • в OpenAI кэширование работает автоматически за счет стабильного системного промпта

Добавлено клиентское кэширование для локальных LLM (экономим немного времени CPU на пересоздании промпта).

Добавлено логирование токенов на каждой итерации для наглядности.

Результат оптимизации: экономия около 75% токенов на каждом запросе. Работать с API стало значительно дешевле, а на локальных LLM заметно комфортнее.

При этом архитектура проекта сохранила свою простоту и читаемость.

Репозиторий: github/AgentAnufry

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

В стране копирующих продуктов.

Как сейчас помню. Прилетает баг. Пользователь-кассир видит закупочную цену. Исправил. Прилетает баг. Пользователь-управляющий видит не закупочную цену, а цену продажи. Фиксить нельзя рефакторить.

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

Настарался не менее знатно, что-то постоянно не сходилось. Ну, не могли полтора десятка человек быть абсолютным злом. Или я в самом загадочном месте планеты, или причина в другом. Я стал искать, перебирать бэклог, группировать бэклог и вышел на… планирование. На его отсутствие.

Ладно, не вышел. Был свидетелем. Как от спринта к спринту задачи не были связаны друг с другом. Сегодня мы делаем турникет, завтра апельсин, потом кузнечика, потому что срочно нужна наковальня, а у нас итерационный продукт! Если останется время, то переведём бабушку с ангуляра на рякт, если нет — дедушку, но закончить до сентября! Что будет через два месяца? Верно, бабка с дедом посреди дороги висят на турнике в шубах на рыбьем меху. А? Поняли? Поняли? Рыбий мех — кузнечный мех! Это аджайл, мамкина норка! Нет времени уточнять, тебе ещё апельсин чистить.

И вроде бы фантастика, ложь, абсурд! Но одна недоделанная фича сменяет другую и мы из созвона в созвон гоняем запятую по «фиксить нельзя рефакторить», ведём разговоры о техническом долге. Только долг оказывается концептуальным.

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

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

Табаки-менеджмент этому рад, он может даже с пониманием относиться к рефакторингу, но при всей внешней дружелюбности он одёрнет вашего коллегу и попросит сделать вот эту срочную фичу и разобраться вот с этим важным клиентом. Клиент ушёл, фича никому не нужна, а ваш рефакторинг — это ваш рефакторинг.

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

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

Собрали новую подборку заказов с Биржи Инфостарта. В этот раз в списке — задачи, которые появились с 4 по 9 июня: отчеты, обновления, интеграции, синхронизация, аналитика и проектная работа по 1С.

Есть как небольшие разовые задачи, так и заказы, где нужно глубже погрузиться в проект. На этой неделе заказчики ищут аналитиков, разработчиков и консультантов 1С. Встречаются задачи по ERP, БП, УНФ, УТ, «Управлению холдингом», MDM/Data Quality, обменам и внешним интеграциям.

Среди новых заказов:

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

Биржа заказов Инфостарта - это раздел, где заказчики публикуют задачи по 1С, а исполнители откликаются напрямую. Форматы разные: консультация, небольшая доработка, отчет, настройка обмена, интеграция с внешним сервисом, обновление конфигурации или сопровождение проекта.

Для работы через Биржу доступны:

  • 0% комиссии площадки;

  • прямой обмен контактами;

  • исполнители разного масштаба — от частных специалистов до ИТ-команд;

  • безопасная сделка по желанию;

  • рейтинги, кейсы и история откликов.

Посмотрите свежие заказы и выберите задачу, которая подходит под ваш опыт и загрузку.

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

Карьера в ИТ в 2026 году: как выбрать направление и пройти отбор

16 июня в 19:00 Центр «Пуск» МФТИ проведет открытую онлайн-встречу о карьерных траекториях в ИТ.

Kar'era-v-razrabotke.jpg
Kar'era-v-razrabotke.jpg

Встреча будет полезна тем, кто планирует развиваться в ИТ, выбирает между frontend, backend и embedded, готовится к собеседованиям или хочет усилить резюме.

В программе:

— выбор направления в разработке: frontend, backend, embedded;

— soft skills, которые важны для ИТ-специалиста в 2026 году;

— позиционирование на собеседовании;

— ИИ в разработке и найме;

— рынок найма в ИТ и ожидания компаний;

— ИИ-рекрутинг: мифы и реальность;

— метакомпетенции, которые помогают получить офер;

— управление воронкой найма;

— резюме: структура, акценты, типичные ошибки.

Спикеры: Иван Балашов — руководитель разработки в крупном iGaming-провайдере, имеет 10+ лет коммерческого опыта в бэкенд-разработке. Участвовал в запуске Ozon.Invest, а также создавал биллинговую систему для торговой платформы, которая обслуживала более 2 млн трейдеров.

Елизавета Знова — карьерный консультант, 4+ года в сфере HR. Менеджер по сопровождению персонала в компании «Контур». Помогает клиентам составлять резюме, успешно проходить воронку найма и расти в ИТ-ролях.

📅 Дата и время: 16 июня, 19:00 (Мск) Формат: онлайн

Регистрация на встречу:

✅ ВК https://vk.com/app6379730_-224205661#l=19&auto=1

✅ Telegram https://t.me/mipt_events_bot?start=dl-1780649003233

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

Если что, Агент Ануфрий работает на любых системах, он кроссплатформенный.

Прямо сейчас он пыхтит на Windows и за 0 руб./токен ломает сайт Пентагона, ведь запущен на локальной модели qwen3-14b на древнем железе.

Агент Ануфрий - это open source-конструктор для создания собственных ассистентов на Python. Базовый агент уже мультиплатформенный, с долговременной памятью, автоматизацией браузера через CDP/Playwright, трекером задач, и системой навыков.

Репозиторий: AgentAnufry

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

Tencent UniRL: единый RL-цикл для диффузии, LLM и unified-моделей

Команда Tencent Hunyuan выложила UniRL, инфраструктуру для обучения с подкреплением, в которой один цикл пост-тренинга работает поверх разных семейств моделей: диффузионных и flow matching, LLM и VLM, а также гибридных авторегрессионно-диффузионных генераторов вроде Hunyuan-Image 3 и Bagel.

Обычный RL-стек заточен под одну модальность. Как только нужно покрыть и текст, и картинки, и видео, проект обрастает несовместимыми репозиториями и скриптами-костылями. В UniRL модель и алгоритм разведены на две независимые оси, поэтому покрытие считается как произведение множества моделей на множество алгоритмов, а не фиксированный набор рецептов.

Сам цикл устроен просто: сгенерировали, оценили, посчитали advantage, обновили веса, синхронизировали. Этот же луп обслуживает генерацию text-to-image, text и image-to-video, vision-language задачи, чистый текстовый LLM и VLM, диффузионный prompt-enhancer на базе LLM и unified-генерацию, которую однозадачный RL-репозиторий просто не выразит.

По инженерной части все сделано под масштаб. Движки rollout подключаются как плагины (train-side, SGLang, vLLM-Omni) за единым типизированным контрактом, шардинг идет через FSDP2, а три режима развертывания переключаются одним параметром в конфиге. Прототип и распределенный прод живут на одном коде.

В релизе два собственных алгоритма. FlowDPPO оптимизирует политику для flow и диффузионных моделей с trust-region масками на основе точной дивергенции. DRPO делает RL для языковых моделей с гладким квадратичным регуляризатором, взвешенным по advantage.

Ссылки: код UniRL https://github.com/Tencent-Hunyuan/UniRL, статья FlowDPPO https://github.com/Tencent-Hunyuan/UniRL/blob/main/FlowDPPO/HY_FlowDPPO.pdf, статья DRPO https://arxiv.org/abs/2606.09821, источник https://x.com/TencentHunyuan/status/2064312869827809702

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

Гайд: запуск автономного агента Ануфрия на локальной модели с LM Studio на Linux

Агент Ануфрий - это open source-конструктор для создания собственных ассистентов на Python. Базовый агент уже мультиплатформенный, с долговременной памятью, автоматизацией браузера через CDP/Playwright, трекером задач, и системой навыков.

Репозиторий: AgentAnufry

Для быстрого запуска нам хватит безголового (без графического интерфейса) демона llmster (https://lmstudio.ai/). Команда в терминале:

curl -fsSL https://lmstudio.ai/install.sh | bash

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

Запускаем:

lms daemon up

Качаем нужную LLM модель (чем больше, тем умнее, но требует больше ресурсов): https://lmstudio.ai/models Для примера возьмем небольшую модель:

lms get qwen/qwen3.5-9b

После скачивания подгружаем модель в память:

lms load qwen/qwen3.5-9b

В .env скопируйте эту конфигурацию:

# ============================================
# LM Studio Configuration (Local) - ACTIVE
# ============================================
LLM_PROVIDER=lmstudio
LLM_API_KEY=lm-studio
LLM_BASE_URL=http://localhost:1234/v1
LLM_MODEL=deepseek/deepseek-r1-0528-qwen3-8b

# ============================================
# Embeddings Configuration (Local) - ACTIVE
# ============================================
# Используем локальную embeddings модель из LM Studio
EMBEDDINGS_PROVIDER=lmstudio
EMBEDDINGS_MODEL=text-embedding-nomic-embed-text-v1.5
EMBEDDINGS_BASE_URL=http://localhost:1234/v1
EMBEDDINGS_API_KEY=lm-studio

# ============================================
# Дополнительные параметры
# ============================================
LLM_TEMPERATURE=0.1
LLM_MAX_TOKENS=4096
LLM_TIMEOUT=300
MAX_ITERATIONS=20

Запустите lms сервер:

lms server start --port 1234 &

или

lms server start

Порт по умолчанию будет 1234

Запустите агента.

Шпаргалка с командами lms:

# запустить демон
lms daemon up

# запуск/остановка сервера
lms server start
lms server stop

lms server status        # статус сервера
lms ps                   # загруженные в память модели
lms ls                   # список скачанных моделей

# остановить текущую модель
lms unload

# выгрузить все модели из памяти
lms unload --all

# получить список доступных моделей
lms ls

# Удалить конкретную модель
lms rm qwen/qwen3.5-9b

# Или удалить несколько моделей
lms rm model1 model2 model3

Важно!

Чем слабее ваше железо, тем меньше модель вы сможете использовать, с меньшим объемом контекстного окна. Объем контекста в базовой версии агента (системный промпт + описание инструментов) в районе 6к товенов, это много.

Для работы с небольшими моделями сожмите системный промпт и описание инструментов или удалите лишнее (файл main.py)

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

Лучше не сохраняйте в сессии PHP объекты с защищенными или приватными свойствами, если сама сессия хранится в БД.

Оговорюсь, что не поддерживаю сохранение объектов в сессиях PHP, а пример взят из Legacy-проекта, в котором компонент рекомендованных продаж клиенту реализован в виде класса. Видимо предыдущие разработчики посчитали удобным не париться с сохранением рекомендаций в виде отдельной структуры, а сохраняли класс прямо в сессию клиента. Сами сессии хранятся в БД MySQL (тоже тема для отдельной дискуссии).

Всё это отлично работало до переезда БД на кодировку utf8mb4_general_ci. После чего начались плавающие ошибки: некоторых пользователей стало выкидывать из ПУ. Довольно быстро определили, что проблема с сессиями, чуть больше времени потребовалось, чтобы определить, что некоторые сессии внезапно становились битыми у тех клиентов, для которых срабатывал сервис подбора рекомендаций.

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

  • публичные свойства `public $item` сохраняются как item

  • защищенные свойства `protected $item` сохраняются как \0*\0item

  • приватные свойства `private $item` сохраняются как \0ClassName\0item

причем \0 это нулевой байт. Главной проблемой стало то, что MySQL воспринимал этот нулевой байт как конец строки и сохранял в таблицу обрезанную строку. Сессия становилась невалидной.

Самое простое решение в данном случае изменить тип поля на BLOB, в этом случае текст корректно сохранится побайтово. По поводу вопроса, стоит ли сохранять объекты в сессию пользователя, каждый думаю решит для себя сам.

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

Ваш худший кошмар, или простой regex, который удивит даже опытных программистов.

re.match(r"^abc$", "abc\n") # python
/^abc$/.test("abc\n") // Javascript
preg_match("/^abc$/", "abc\n"); // PHP

Не читайте дальше, попробуйте угадать какой вывод будет у каждого из вариантов?

False?

True ?

Правильный ответ:

False
True
False

Живите с этим :)

Всё дело в том, что в PCRE $ означает не "конец строки", а "конец строки, или позиция перед \n в конце строки". А в ECMAScript это не так.

Лично я думал, что должно быть False, но регулярные выражения продолжают меня удивлять спустя много лет.

Правильный regex для точного совпадения с концом строки:

re.match(r"^abc\Z", "abc\n")
// javascript идеален, нечего исправлять :)
preg_match("/^abc\p/", "abc\n")

== false

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