Создатель C++ раскритиковал вайбкодинг: «AI приводит к росту ошибок и уязвимостей»

3 мин
Создатель C++ раскритиковал вайбкодинг: «AI приводит к росту ошибок и уязвимостей»

Автор языка программирования C++ Бьёрн Страуструп заявил, что современные ИИ-инструменты пока не способны качественно писать сложный системный исходник и проектировать языки программирования. Тему вайб-кодинга затронули в подкасте Райана Петермана. 

«Мне кажется, что в той области, которая интересует меня больше всего, код все так же будут писать люди, используя привычные абстракции. Примеры попыток сгенерировать исходник в этой области с помощью ИИ, что я видел, не дали хороших результатов — наоборот, только привели к росту числа ошибок и уязвимостей», — подчеркнул Бьёрн Страуструп.

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

«Сгенерированный ИИ исходник обычно сильнее подвержен изменениям, чем код, написанный человеком. Когда разработчик вносит изменения, они, как правило, локальны, и можно относительно легко отследить их последствия. С ИИ все иначе: вы не всегда понимаете, что именно изменилось и где, следовательно приходится разбираться», — отметил Бьёрн Страуструп.

Одновременно отец С++ не утверждает, что ИИ бесполезен. По его мнению, ИИ можно использовать для написания документации, но проверять ее все равно должен человек.

«На данный момент ИИ плохо справляется с критичным к безопасности или производительности кодом. Конечно, возможно, 70–80% всего программного кода не относятся к таким категориям. Но меня интересуют именно те 10–20%, где требования особенно высоки. Вот там ИИ пока не дотягивает».

Равным образом на подкасте коснулись темы LLM. Страуструп отметил, что LLM обучается на уже существующем коде, на старых подходах и решениях.

«Проблема LLM-генерации в том, что она главным образом воспроизводит старый исходник наряду со старыми ограничениями производительности и ошибками. Возможно, это можно усовершенствовать. Я слышал, что существуют так называемые «Бьёрн-приложения», которые опираются на мои работы, но даже тут есть сложность: сегодня я говорю уже не совсем то же самое, что говорил двадцать лет назад».

Своим мнением по поводу активного распространения AI-кодинга также поделились разработчики статического анализатора кода PVS-Studio. Инструмент специализируется на поиске ошибок в коде, написанном в том числе и на языке программирования C++.

Филипп Хандельянц, руководитель разработки статических анализаторов PVS-Studio:

Критика Бьёрна Страуструпа целиком оправдана в случаях, когда разработчик просто вставляет результат работы ИИ-агента в инициатива. При таком подходе, зависимо от промпта, нейросеть может сгенерировать неоптимальный код, к тому же содержащий баги и/или потенциальные уязвимости. Мы видели подтверждение этому при проверках проектов, написанных с помощью вайбкодинга: Vib-OS, markus. К счастью, разработчики этих проектов ставили перед собой цель не написать production-level подход для всех, а скорее провести тематическое исследование.

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

Олег Лысый, руководитель направления разработки C++:

Безусловно, ИИ — это средство, который уже вошел в нашу жизнь. У нас нет выбора, применять его или нет. Вопрос только в том, как именно его применять. Подход, при котором ИИ-агент генерирует код по описанию задачи в трекере задач и сразу же заливает его в кодовую базу, невозможно применять для серьезной разработки (кто-то вообще так делает в здравом уме?).

Тем не менее с тем же успехом можно критиковать использование IDE с их системами автодополнения кода. Представьте, что мы будем критиковать решение, при котором разработчик пишет случайную букву на клавиатуре, жмет кнопку Tab для автодополнения и сразу же коммитит исходник. Звучит безумно? Вот и мне хайп вокруг ИИ кажется безумием.

Читают сейчас

Апдейт Windows 11 KB5124008 нарушает работу подключений Always On VPN

3 часа назад

Апдейт Windows 11 KB5124008 нарушает работу подключений Always On VPN

На этой неделе Microsoft выпустила очередное ежемесячное апдейт для Windows 11, и пользователи стартовали жаловаться на возникновение проблем. Одной из них стала неработоспособность VPN‑соединений тип

В McKinsey стартовали информировать сотрудников о перерасходе ИИ‑токенов

3 часа назад

В McKinsey стартовали информировать сотрудников о перерасходе ИИ‑токенов

В McKinsey решили бороться с перерасходом ИИ‑токенов не введением жёстких лимитов, а информирование сотрудников. Читать далее

WhatsApp Business программный оболочку: с 1 октября платим за всё? Разбираю по пунктам

4 часа назад

WhatsApp Business программный оболочку: с 1 октября платим за всё? Разбираю по пунктам

Вы долго и сложно подключали WhatsApp* Business программный интерфейс: проходили верификацию, регистрировали номер, подключали CRM и чат-бота. Всё ради нормальной работы: чтобы не держать телефон вклю

Biostar начала продвижение видеокарты на базе GeForce GT 730

5 часов назад

Biostar начала продвижение видеокарты на базе GeForce GT 730

Тайваньская Biostar начала продвижение видеокарты на базе GeForce GT 730, вышедшей летом 2014 года. Организация рекламирует новинку под названием Biostar VN7313TG46 для диспетчерских пунктов, промышле

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

6 часов назад

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

Британская финтех‑компания Revolut по ошибке раскрыла мошенникам данные своих клиентов, в том числе паспортные данные, селфи для подтверждения личности и историю криптовалютных транзакций. Злоумышленн