В последние годы искусственный интеллект стремительно проник во все сферы человеческой деятельности, включая программирование. Многие эксперты и пользователи утверждали, что использование генеративного ИИ в написании кода существенно ускорит работу разработчиков и повысит их производительность. Однако недавнее исследование, проведённое организацией METR, ставит под сомнение эти оптимистичные ожидания. Данная работа проливает свет на реальные результаты внедрения ИИ-инструментов в профессиональную среду и поднимает важные вопросы о том, насколько ИИ-кодинг действительно помогает программистам. История активного использования ИИ для автодополнения и генерации кода поднимается на пике популярности благодаря таким системам, как Cursor Pro и другим разработкам, интегрирующим модели на основе крупных языковых моделей.
Основная идея заключается в том, что ИИ может выступать в роли ассистента, который снижает рутины, предлагает решения задач, выстраивает базовые структуры программ и помогает с поиском ошибок. Многие специалисты воспринимают эти инструменты как значимое преимущество, позволяющее быстрее доводить задачи до конца и снижать трудозатраты. Тем не менее, METR провела рандомизированное контролируемое исследование с привлечением опытных open-source разработчиков, имеющих в среднем почти 5 лет практики в своих проектах. Они выполняли сложные задачи с применением ИИ-инструментов и без них. Перед экспериментом программисты ожидали, что ИИ уменьшит время выполнения задач на 24%, а после окончания работы — оценивали реальное ускорение примерно в 20%.
Прогнозы специалистов по экономике и машинному обучению предсказывали ещё большие выгоды. Результаты оказались неожиданными и вызывающими тревогу для индустрии: использование текущих ИИ средств замедляло процесс написания кода в среднем на 19%. Такая цифра разбивает распространенные мифы о том, что ИИ-технологии уже могут без проблем заменять или значительно облегчать задачи опытных инженеров. Наоборот, в некоторых случаях взаимодействие с ассистентом приводит к тому, что время разработки возрастает. Причины обнаруженного эффекта многогранны.
Во-первых, работа с чужим кодом, созданным искусственным интеллектом, часто усложняет поиск и исправление ошибок. Программистам приходится тратить дополнительные ресурсы на понимание, как устроен сгенерированный блок кода, что снижает скорость и продуктивность. Во-вторых, ИИ может предлагать решения, не учитывающие специфику и контекст проекта, что ведёт к необходимости дополнительной доработки и проверки правильности кода. Стоит также отметить разрыв между восприятием разработчиков и реальностью. Многие пользователи ИИ-инструментов ощущают субъективное ускорение процесса и уверены в повышении своей продуктивности.
Однако исследование зафиксировало, что их ощущения зачастую не соответствуют фактическому времени выполнения задач. Такие искажения восприятия могут приводить к чрезмерной вере в возможности ИИ и снижать внимание к возможным негативным аспектам его применения. Тем не менее, специалисты METR подчеркивают — выявленные результаты являются лишь снимком текущего состояния технологий на начало 2025 года. Ограниченность исследования связана с уникальной группой участников и спецификой сложных, зрелых проектов, в которых они работают. По мнению авторов, в иных условиях — для новичков, на небольших проектах или с иными требованиями качества — ИИ может показывать более значимую пользу.
Также нельзя исключать знакомый эффект «ИКЕА» для софта: даже если программист не написал код самостоятельно, а лишь собрал и доработал его с помощью ИИ, он всё равно ощущает удовлетворение и чувство владения результатом, что положительно влияет на его отношение к работе и восприятие ИИ. В комментариях к статье, публикуемой Гэри Маркусом, выступают разработчики с различным опытом и точками зрения. Некоторые отмечают, что ИИ помог им достичь результатов, которые в одиночку было бы сложно или невозможно реализовать — особенно при изучении новых языков программирования или взаимодействии с малоизвестными библиотеками. Другие предупреждают об опасности слишком поверхностного тестирования сгенерированного кода и стремления принимать простые решения для сложных бизнес-задач. Текущая ситуация вынуждает двигаться в сторону более осторожного, сбалансированного подхода к применению ИИ в программировании.
Прежде чем доверять автоматическим помощникам, необходимо тщательно оценивать реальный вклад технологии в повышение эффективности работы и одновременно контролировать возможные побочные эффекты. Важно понимать, что ИИ — это инструмент, а не волшебное решение всех проблем. Будущие улучшения моделей и методик использования ИИ, несомненно, улучшат показатели и устранить многие существующие недостатки. Но сегодня индустрия и сообщество разработчиков должны быть готовы к тому, что ожидаемые прорывы не всегда совпадают с реальностью, особенно когда речь идёт о комплексных и ответственных задачах программирования. Подводя итоги, можно сказать, что ИИ в кодинге — это перспективное направление с огромным потенциалом, но которое требует взвешенного и критического подхода.
Настоящая революция в производительности возможна лишь при комплексной интеграции прогрессивных алгоритмов с умением человека грамотно их применять, а не слепой доверии слепым технологиям. Исследования, подобные METR, напоминают нам о необходимости тщательно измерять фактическую эффективность и продолжать совершенствовать инструменты, а также практики их внедрения в повседневную работу программистов.