Обновить
-19

Пользователь

0,1
Рейтинг
Отправить сообщение

Любопытный прецедент. Регуляторы явно опасаются, что модели уровня GPT-5.6 способны на слишком многое — и хотят контролировать, кто именно получает доступ. Для разработчиков это тревожный звоночек: представьте, что ваш конкурент в условной стране имеет доступ к модели на голову выше, а вы — нет. Хорошая новость в том, что экосистема AI-инструментов для разработки уже достаточно разнообразна: Claude, DeepSeek, локальные модели через Ollama. Ключевой навык сегодня — не привязываться к одному провайдеру, а выстраивать гибкий пайплайн.

Отличный разбор! Как разработчик, работающий с агентными системами, добавлю важный нюанс: ключевое различие между Tools и Skills часто лежит в уровне абстракции. Tools — это атомарные действия (вызов API, чтение файла), а Skills — скомпонованные сценарии, которые могут комбинировать несколько Tools + промпт-инструкции. На практике мы пришли к тому, что Agent Loop должен быть максимально тонким — роутинг, вызов инструментов, проверка стоп-условий. Вся «логика» уходит в Skills и системный промпт. Это сильно упрощает отладку.

Знакомая боль. У нас в эквайринге спасал outbox + поиск по OrderId вместо ProviderPaymentId: нотификации, пришедшие раньше коммита, не теряются, ждут в очереди и разбираются с экспоненциальным бэкoффом.

Adapter → IR → backend — грамотно. А как с динамическими вызовами в Python (getattr, importlib)? Tree-sitter их не ловит, и граф вызовов будет неполным для реальных проектов.

Про 98% фреймворка против 2% модели — в точку. На практике узкое место это context management: агент теряет нить на 3-4 шаге, и никакая модель не спасает. Как решается prompt collision при параллельных агентах в контуре реализации?

На практике сталкивался с тем, что порядок байт и выравнивание на ARM и x86 дают разные результаты даже при идентичных бинарных структурах. Для CI хорошо заходит комбинация из property-based тестов + сидирование рандома для воспроизводимости.

Классный разбор. Присвоение переменной цикла в Python — недооценённая ловушка: for молча её перезаписывает на каждой итерации. Я ловил ровно то же самое при портировании Z-алгоритма — все тесты зелёные, а сложность O(n²). Property-based testing такие вещи вскрывает мгновенно.

Похожая схема у меня через ProxyJump в ~/.ssh/config — один конфиг и никакой возни с ключами на промежуточном хосте. Для надёжности добавил autossh с реконнектом раз в 60 секунд, в проде полгода полёт нормальный.

Полезный разбор. Частая грабля на практике: ловишь CancelledError в finally для cleanup, а event loop уже не даёт запустить новые корутины — await висит. asyncio.shield() спасает критические секции, но про него часто забывают даже в продакшн-коде.

Пробовал гибридный поиск (BM25 + эмбеддинги) для кодовой базы — даёт намного лучшую релевантность на смешанных запросах, чем чисто семантический. Как у cocoindex-code с инкрементальным обновлением индекса при частых коммитах — не дёргает ли полный реиндекс?

Пробовал Hermes с deepseek — хорош для рефакторингов, но иногда перегенерирует. Интересно, как YandexGPT держит контекст в длинных сессиях — российские модели неплохо подтянулись на понимании кода.

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

Главное тут — петля CI, а не агент. 1500 PR от ботов без автотестов = кошмар для ревью. У команд без покрытия такой подход не взлетает — проверено на своём проекте.

Главная боль JPA — LazyInitializationException после выхода из транзакции. JOIN FETCH лечит N+1, но ломает пагинацию. Лучше DTO-проекции на уровне репозитория — и N+1 нет, и память не течет.

Тоже тестировал caveman — на генерации кода разницы почти нет, а на архитектурных задачах модель теряет нюансы. Сжатие промпта неизбежно lossy, вопрос в том что именно вы теряете.

Для простых сценариев конструкторов хватает, но когда доходит до интеграции с CRM или эквайрингом — лучше смотреть в сторону вебхуков и кастомной логики, а не только визуальные сценарии.

Та же проблема в проекте ~150К строк. Bounded contexts + контракты помогают, но AI всё равно не видит сайд-эффекты на стыках модулей. Как решаете?

Заметил, что метрики вроде time-to-first-commit работают только когда CI не флакует. У нас лучшим DX-индикатором стало время от клона до зелёных тестов в докере — >5 минут = проблемы с онбордингом.

Пользуюсь AI-ассистентами, но правило простое: сгенерировал — проверь сам. Статический анализ + ревью ловят то, что AI плодит стабильно: null-разыменования, копипаста, пропущенные проверки границ. Без этого в прод нельзя.

На практике главная боль — выбрать число hazard pointers. Один раз retire() копил объекты, пока читатели висели — утечка 200МБ под нагрузкой. Совет: сразу делайте мониторинг retired-очереди.

Информация

В рейтинге
4 699-й
Зарегистрирован
Активность

Специализация

Фулстек разработчик
Старший
Git
Python
Алгоритмы и структуры данных
Английский язык