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

В этой статье вы узнаете, как реально влияет искусственный интеллект на работу программистов и эффективность разработки программного обеспечения.
Генеральный директор компании Anthropic недавно заявил, что в течение 3-6 месяцев искусственный интеллект будет писать 90% программного кода. Мы считаем, что такие заявления делаются с целью привлечь внимание, особенно когда называются такие большие цифры и короткие сроки. В индустрии ИИ подобный подход встречается часто.

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

Так если искусственный интеллект пишет больше кода, неужели разработчики теперь делают меньше?

На самом деле дело обстоит иначе, и существует три основные причины этому:

  • Количество кода, создаваемого искусственным интеллектом, не означает, что у разработчиков стало меньше работы.
  • Искусственный интеллект часто пишет избыточный код, тем самым завышая показатели и кажущуюся пользу.
  • Много кода, который пишет искусственный интеллект, раньше вовсе не писался разработчиками.
Теперь давайте подробнее рассмотрим каждую из этих причин.

Готовы внедрить ИИ, но не знаете, с чего начать?


Получите консультацию с экспертами AllSee, чтобы сделать свой проект эффективнее и надежнее.

Объем кода, генерируемого ИИ, не соответствует объему работы, который он снимает с разработчиков

Может показаться, что если компания Google с помощью искусственного интеллекта пишет 25% своего кода, то значит искусственный интеллект создал четверть всех программ, и теперь разработчики отвечают только за оставшиеся 75%.

На самом деле ситуация другая.

Команда использует инструменты вроде Github Copilot, и когда искусственный интеллект автоматически подставляет почти те же строки кода, которые мы и хотели написать, это действительно помогает и немного ускоряет работу. С технической точки зрения, можно сказать, что искусственный интеллект “создаёт” достаточно большую часть кода. Не будет удивительно, если окажется, что примерно 50% нашего кода делается именно такими автодополнениями. Но всё равно мы тщательно думаем над этим кодом и добавляем его по одной строке.

То есть, искусственный интеллект не столько пишет код, сколько просто “набирает” его за нас.

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

Существуют редакторы, такие как Cursor и Windsurf, которые являются доработанными версиями VSCode и построены вокруг идеи написания кода через подсказки искусственному интеллекту, чтобы реализовать много функциональности.

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

Поэтому, даже если формально искусственный интеллект написал большую часть кода, усилия опытных специалистов по-прежнему нужны на всех этапах: чтобы переписать, доработать и внедрить код в проект. Работа остаётся такой же ответственной и детальной, как и раньше.

Хотите узнать, как лидеры российского рынка используют наши решения?


Ознакомьтесь с презентацией кейсов AllSee, где собраны реальные решения, доказавшие свою эффективность в бизнесе!

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

Когда команде предлагают искусственному интеллекту написать код, он сделает это и попытается реализовать всё, что его просят.

Поэтому важно внимательно формулировать задачи.

В одном из недавних проектов мы использовали Rive для создания анимации на веб-странице с эффектом наведения. Мы обратились к искусственному интеллекту за помощью, и он создал HTML-страницу с встроенной анимацией. После этого мы попросили добавить обработчики наведения мыши, предполагая, что их потребуется реализовать отдельно. Искусственный интеллект добавил соответствующий код, но при запуске страницы хоть эффект и работал, в консоли появлялись ошибки.

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

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

Это одна из причин, почему объём кода, создаваемого искусственным интеллектом, увеличивается, но участие разработчиков не становится меньше. Становится просто больше кода.

Особенно часто появляется код, который не нужен проекту.

Этот пример отражает более широкую тенденцию, подтверждённую масштабными исследованиями.

Анализ GitClear показывает рост объёма дублирующегося кода, который копируется и вставляется из результатов работы искусственного интеллекта. Теперь объём такого копирования превышает случаи обычного перемещения кода, что говорит о замене переработки и повторного использования на простое дублирование.

Производится всё больше кода, формально создаваемого искусственным интеллектом — это заметный показатель для компании Anthropic. Но такие цифры на самом деле завышены из-за склонности копировать фрагменты без необходимости. Это приводит к усложнению поддержки программ и нарушает принцип “не повторяйся”.

Многие коды, написанные ИИ, не были написаны разработчиками до появления ИИ

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

Раньше существовали такие платформы, как Stack Overflow, где можно было найти разные варианты решения задач от других участников сообщества. На Codepen выкладывались готовые решения для фронтенд-технологий, а на Shadertoy — готовые шейдеры для WebGL. Были инструменты, например, Yeoman, которые помогали быстро создавать заготовки для проектов, а сейчас для этого используется Vite с шаблонами под разные задачи. К тому же, все современные фреймворки — это надстройки над привычными HTML, JavaScript и CSS, позволяющие писать меньше шаблонного кода и создавать более сложные веб-приложения.

Так же, как сейчас неопытные разработчики могут столкнуться с проблемами, слепо используя код искусственного интеллекта, раньше некоторые просто копировали чужие фрагменты кода из Stack Overflow, считая, что нашли готовое решение, но на самом деле лишь создавали новые сложности для себя.

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

Разработчики — это те, кто создаёт истории. Код — это просто язык, с помощью которого эти истории рассказываются.

Искусственный интеллект — это всего лишь ещё один инструмент, который помогает воплотить задуманное на экране.

Использование искусственного интеллекта растёт, потому что он быстро и удобно предлагает индивидуальные решения по запросу (и из-за этого, кстати, всё меньше стали посещать Stack Overflow).

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

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

Хотите быть в курсе актуальных новостей о внедрении AI?


Подписывайтесь на телеграм-канал AllSee и читайте наши свежие новости о трендах и решениях с ИИ каждый день!

Худшие выводы, которые можно сделать из растущей тенденции использования ИИ для написания кода

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

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

Это может привести к неправильным решениям — либо к поспешной погоне за искусственным интеллектом, либо к чрезмерной реакции против его использования.

Мы не рекомендуем устанавливать конкретные цели по проценту кода, созданного искусственным интеллектом в вашей организации.
Задача должна быть в повышении эффективности. Искусственный интеллект — это всего лишь один из инструментов, который может помочь этого добиться. Объём кода, написанного искусственным интеллектом, не отражает уровень эффективности. Хуже всего будет ошибочное убеждение, что, увеличив долю такого кода, можно сэкономить и сократить число разработчиков.

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

Мы рекомендуем поддерживать внедрение искусственного интеллекта, но не требовать определённых результатов любой ценой.

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

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

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

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

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

Как и во многих вещах, истина находится посередине.

Создайте новое будущее с нашими решениями

Похожие статьи
Показать еще