Недавнее исследование поставило под сомнение популярное убеждение, что инструменты ИИ вроде Cursor всегда ускоряют работу программистов. Оказалось, что опытные разработчики, работающие с хорошо знакомыми кодовыми базами, тратят на задачи намного больше времени, а не меньше, как ожидалось.
Перед началом исследования ученые прогнозировали, что ИИ сократит время выполнения задач на 24%. Даже после завершения работы они оставались уверены, что стали работать на 20% быстрее. Однако фактические замеры показали обратное — время выполнения задач увеличилось на 19%.
Как создать ИИ-ассистента, который работает за вас
Главная проблема заключается в том, что разработчикам приходится тратить время на анализ и правку предложений ИИ. Этот феномен особенно заметен в сложных проектах с устоявшейся архитектурой. ИИ, обученный на открытых репозиториях, предлагает шаблонные решения, которые не всегда вписываются в специфику конкретной кодовой базы. В результате вместо автоматизации рутины программисты получают дополнительный этап — ревью и доработку сгенерированного кода.
Стоит учитывать, что замедление касается только опытных инженеров, работающих с привычными проектами. Дело в том, что опытные разработчики часто работают с кодом, который они хорошо понимают, и их процессы отлажены годами.
Внедрение AI-инструментов (например, GitHub Copilot, ChatGPT, Codeium) требует:
- Освоения новых интерфейсов – даже небольшие задержки из-за незнакомого UI/UX снижают скорость.
- Постоянного анализа AI-предложений – код, генерируемый ИИ, не всегда точен, и его проверка отнимает время.
- Адаптации рабочих процессов – если раньше разработчик писал код напрямую, теперь ему нужно формулировать промпты, что создаёт дополнительный шаг.
Становится актуальной так называемая «проблема чужого кода», искуственный интеллект часто предлагает решения, которые:
- Не соответствуют стилю кодовой базы – приходится тратить время на доработку.
- Содержат скрытые ошибки – даже если код выглядит рабочим, он может нарушать внутренние зависимости.
- Усложняют рефакторинг – если AI-сгенерированный код интегрирован без глубокого понимания, это может замедлить дальнейшую поддержку.
Третья проблема – потеря «потока».Опытные разработчики часто работают в состоянии глубокой концентрации. ИИ-инструменты, постоянно предлагая варианты, могут:
- Прерывать ход мыслей – например, Copilot предлагает автодополнения, которые отвлекают.
- Создавать избыточные варианты – вместо того чтобы сразу написать нужный код, разработчик тратит время на оценку AI-предложений.
Кроме того ИИ имеет и свои ограничения в написании кода, например:
- Специфичная бизнес-логика – AI обучается на открытых репозиториях, но не знает внутренней архитектуры проекта.
- Устаревшие или кастомные технологии – если проект использует редкие фреймворки или старые версии, AI может предлагать нерелевантные решения.
Ранее другие исследования действительно фиксировали рост производительности на 56% или увеличение числа выполненных задач на 26%. Однако не стоит забывать, что многие такие тесты используют синтетические задания, далёкие от реальной разработки.
Несмотря на замедленное выполнение задач, большинство участников исследования продолжают работать, применяя системи искусственного интеллекта. Причина проста — ИИ делает процесс менее напряжённым.
Хотя исследование показало, что ИИ может замедлять работу опытных разработчиков в сложных проектах, это не значит, что такие инструменты бесполезны. Напротив, в рутинных, шаблонных или хорошо структурированных задачах они демонстрируют впечатляющую эффективность. Например, в некоторых случаях ИИ становится настоящим помощником:
Одна из самых сильных сторон ИИ — генерация повторяющегося кода. Например:
- Настройка API-эндпоинтов (роуты, контроллеры, DTO)
- Создание CRUD-операций (базовые методы для работы с базой данных)
- Инициализация конфигураций (настройка Webpack, Docker, CI/CD)
Раньше разработчики копировали такие блоки из старых проектов или писали их вручную. Теперь ИИ делает это за секунды, предлагая готовые, проверенные решения.
Ускорение работы с документацией. Это экономит часы монотонной работы, которую раньше приходилось выполнять вручную.
- Автогенерация комментариев (ИИ анализирует код и пишет пояснения)
- Создание README-файлов (структурирует описание проекта)
- Формирование технических спецификаций (например, Swagger-документация для API)
Быстрое прототипирование. Это особенно полезно в хакатонах или при исследовании новых технологий. Если нужно быстро проверить идею, ИИ позволяет:
- Набросать каркас приложения (например, инициализировать React-компоненты или Flask-сервер)
- Сгенерировать тестовые данные (моки для базы, JSON-структуры)
- Написать простые алгоритмы (сортировки, парсинг данных, базовые математические операции)
Упрощение отладки. Хотя опытные разработчики и так быстро находят стандартные баги, новичкам ИИ сильно помогает:
- Поиск синтаксических ошибок (ИИ подсказывает, где забыта скобка или точка с запятой)
- Предложение простых исправлений (например, если переменная не объявлена)
- Объяснение ошибок (перевод технических сообщений компилятора на человеческий язык)
Обучение и поиск информации. Раньше на это уходило время в Google и Stack Overflow — теперь ответ можно получить сразу в IDE:
- Объяснение концепций (например, "как работает промис в JavaScript?")
- Поиск альтернативных решений ("как оптимизировать этот SQL-запрос?")
- Перевод кода между языками (например, с Python на Java)
Искусственный интеллект эффективен в большинстве несложных задач по причине того, что для решения несложных задач достаточно лишь чётко сформулировать запрос, а требования обычно просты и понятны. ИИ обучен на огромном количестве примеров — миллионах похожих фрагментов кода, что позволяет ему давать релевантные ответы. И наконец, ему не требуется глубоко понимать архитектуру проекта, поскольку многие задачи требуют минимального контекста. То есть, даже если искуственный интеллект не экономит время, он снижает когнитивную нагрузку, предлагая отправную точку для размышлений.
Результаты исследования бросают вызов идее о том, что ИИ однозначно повышает эффективность дорогих специалистов. Это ставит под вопрос оправданность миллиардных инвестиций в ИИ-инструменты для разработки.
В то же время угроза автоматизации для junior-позиций остаётся актуальной. В ближайшие пять лет ИИ может сократить до половины «беловоротничковых» должностей начального уровня в ближайшие пять лет.
Искусственный интеллект меняет разработку, но не так прямолинейно, как многие ожидали. Для опытных программистов он пока чаще служит интеллектуальным блокнотом, чем настоящим ускорителем. Возможно, будущие версии инструментов учтут эти нюансы — но пока главный урок в том, что слепо доверять ИИ нельзя. Как и любой инструмент, он требует осмысленного применения.