Код в мешке
249 subscribers
9.08K photos
1.6K videos
2.11K files
42.7K links
Код в мешке - про кодинг, и не только...
Это личная записная книжка

https://t.me/joinchat/AAAAAEIy6oGlr8oxqTMS5w
Download Telegram
Forwarded from Ivan Begtin (Ivan Begtin)
Для всех ИИ агентов для кодинга у меня есть довольно простой тест который большая часть из них ещё полгода назад пройти не могли. В Армении есть портал статистики statbank.armstat.am который много лет назад создавался за счет помощи ЕС и с той поры не обновлялся. Он построен на базе движка с открытым кодом PxWeb шведско-норвежской разработки который прошел большую эволюцию за эти годы, но в Армстате используется очень старая его версия с интерфейсом созданным на ASP.NET с большим числом postback запросов что не критично, но неприятно усложняет сбор из него данных. Я такую задачу отношу к скорее утомительным чем сложным, потому что отладка на них может быть долгой и замороченной.

У меня с этой задачей всегда была развилка из 3-х вариантов:
1. Создать и оплатить задачу для фрилансера (в пределах от $50 до $250 за всю работу)
2. Поручить одному из разработчиков/инженеров в команде (по уровню это задача скорее для аккуратного джуна)
3. С помощью ИИ агента сделать такой парсер

Поскольку задача не приоритетная (в Dateno данные собираются с более современных инсталляций PxWeb и через API), то для таких проверок ИИ агентов она прекрасно подходила. И я её пробовал решать и через ChatGPT, и Copilot, и Manus и Claude Code и первую версию Cursor'а, в общем много вариантов.

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

В итоге могу сказать что окончательно рабочее решение сумел сделать Antifravity от Google. Но каким образом, через запуск Chrome локально и автоматизированно пройдясь по сайту определив его структуру и создав код на Python который с некоторыми ошибками, но в итоге извлекал списки показателей и умел выгружать данные. Неидеальные, потому что так и не научился выгружать данные в форматах отличных от CSV, несмотря на несколько попыток и при том что через веб интерфейс это все работает, значит ошибка не в оригинальной системе.

Тем не менее, это уже результат примерно 2-х часов работы, что соответствовало бы времени в течение которого пришлось бы потратить на проверку работы фрилансера или разработчика в команде.

Что в итоге:
1. Количеств задач отдаваемых фрилансерам стремительно падает кроме малого числа где фрилансер большой профессионал в своей специализированной области.
2. Зачем нанимать джунов? Этот вопрос все острее с развитием ИИ агентов
3. ИИ агенты все успешнее решают "замороченные" и "утомительные" задачи с которыми ранее не справлялись

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

Меня приятно удивило качество работы Antigravity, но я его рассматриваю скорее как пример прогресса ИИ агентов в целом, подозреваю что другие ИИ агенты если ещё не могут этого (нужно браузером исследовать сайт), то смогут в скором будущем.

#opendata #opensource #ai #coding
Forwarded from Ivan Begtin (Ivan Begtin)
По итогам могу сказать что если Google сменит ценовую политику для корпоративного применения Antigravity (сейчас она 183.6 евро за месяц) или если его конкуренты прокачают свои решения для ещё большей эффективности, то работу над кодом это ускорят не а 2-3 раза, а в 10-30 раз.

Разработка любого внутреннего инструмента или конечного приложения теперь должна быть устроена иначе. На начальной стадии обязательно нужно писать текст видения результата который должен включать:
1. Описание того что создается
2. Описание результатов включая критерии качества:
- измеряемые индикаторы качества (в данном случае FAR/FRR)
- сравнение результатов с существующими аналогами если они есть
3. Гипотезы
4. Правила управления зависимостями
5. Правила организации кода, репозитория и автоматического покрытия тестами и документирования

Частично это вписывается в логику руководства ИИ агента в AGENTS.md или GEMINI.md, но лишь частично, скорее всего всё это необходимо оформлять во внутренние руководства по организации разработки с использованием ИИ агентов.

#opensource #ai #aiagents #coding #thoughts #devnotes
Forwarded from Ivan Begtin (Ivan Begtin)
Cursor выпустил гайд с лучшими практиками по использованию ИИ агентов в разработке. Рекомендации все довольно понятные, я бы даже сказал что очевидные для опытных разработчиков, но могут быть не настолько очевидными для кого-то ещё.

Важный акцент там на стадии планирования и вопросам к ассистенту до реализации фич или исправления багов.

А я бы добавил к этому следующее:
1. Планирование через OpenSpec или его аналоги. Очень хорошо структурирует процесс проектирования и коммуникации с ИИ агентом. Для сложного и унаследованного кода - это просто необходимо. В принципе разделять планирование и реализацию, на стадии планирования не меняется код, а результаты - спеки и планы.
2. Cursor и аналогичные инструменты (Antigravity, Copilot и тд.) могут выполнять роль инструментов исследовательской поддержки и аналитики. Например, формируz отчеты по конкурентам, проектируя инструменты бенчмарков с ними, подготовка аналитики по разным функциям, проектирование верхнеуровневой архитектуры и тд.
3. ИИ ассистент - это не только объект проверки (а не кривой ли код он написал?), но и сам является контуром контроля качества. Поэтому на каждой итерации внедрения фич необходим контур создания и проверки тестов, линтинга кода, обновления документации и тд. Это частично решается уже сейчас на стадиях планирования и спеков, но опыт показывает что явное указание этих обязательных проверок дает больше гарантии что код будет не поломан и документация будет актуальной.
4. Инструменты для разработки вполне способны не только писать код, но и писать документы. Подход такой же может быть как к репозиториям кода с использованием спецификаций, планирования и тд. Иначе говоря при проектировании больших ИТ продуктов можно создать отдельный репозиторий с архитектурой продуктов и от него создавать все остальные. Например, если надо условно с нуля сделать продукт у которого есть фронтэнд, бэкэнд, REST API, SDK, интеграционные модули и тд., то вместо того чтобы все засовывать в один репозиторий или сразу разбивать на множество, имеет смысл собрать архитектурный репозиторий с документами.

#ai #coding #thoughts #readings