Тарик Шаукат из Sonar: «Мы столкнулись с кризисом ответственности из-за кода, написанного ИИ»

Eye on AI 740 53 мин 4 мин 11.12.2024
Главное

В условиях стремительного внедрения нейросетей в процесс разработки ПО, индустрия сталкивается с парадоксом: инструменты, призванные ускорить написание кода, одновременно генерируют огромные массивы технических ошибок и уязвимостей. В новом выпуске подкаста Eye on AI генеральный директор компании Sonar Тарик Шаукат (Tariq Shaukat) обсуждает с ведущим Крейгом Смитом, как «галлюцинации» ИИ создают кризис ответственности в крупных корпорациях и почему детерминированные системы проверки остаются единственным надежным барьером на пути к «спагетти-коду».

🛡️ От открытого кода к защите корпоративных гигантов 2:03

Тарик Шаукат присоединился к Sonar около 15 месяцев назад, имея за спиной внушительный опыт в руководстве крупными технологическими компаниями: он занимал пост президента в Bumble и Google Cloud . Его нынешняя компания, Sonar (известная по домену sonarsource.com), выросла из опенсорс-проекта SonarCube, запущенного более 15 лет назад .

Сегодня Sonar — это экосистема, которой пользуются:

Основная задача продуктов Sonar — инспекция кода на предмет багов, проблем с сопровождаемостью и уязвимостей в безопасности. Система поддерживает более 30 языков программирования и работает как в среде разработки (IDE), так и на этапе финальной проверки перед слиянием веток кода (pull requests) .

🤖 Гибридный подход: почему ИИ не может проверять сам себя 4:44

Одной из ключевых тем беседы стало противостояние детерминированных и вероятностных систем. Шаукат подчеркивает, что продукты Sonar остаются во многом основанными на строгих правилах (deterministic rules-based). В мире генеративного ИИ (GenAI) это становится преимуществом: для контроля качества необходима повторяемость и предсказуемость, которых лишены нейросети .

Тем не менее, Sonar внедряет ИИ в двух направлениях:

  1. Серые зоны: Анализ проблем, где недостаточно жестких правил и требуется понимание контекста или субъективное суждение .
  2. AI Code Fix: Использование ИИ для предложения исправлений к найденным ошибкам. Благодаря глубокому контексту анализа, вероятность принятия таких «фикса» разработчиком в два раза выше, чем у обычных ИИ-помощников вроде GitHub Copilot .

Шаукат отмечает, что Sonar не конкурирует с генераторами кода, а дополняет их. Пользователи берут код из Copilot или Amazon CodeWhisperer и прогоняют его через Sonar для получения «гарантии качества» (AI Code Assurance) .

⚠️ Кризис ответственности: когда код «не мой, а нейросети» 14:56

Центральной проблемой современной разработки гость называет «кризис ответственности» (accountability crisis). По мнению Шауката, разработчики не учились на программистов, чтобы быть «корректорами» за нейросетью . Возникает психологический феномен «автоматизированного предубеждения» (automation bias): если ИИ 50 раз выдал хороший код, на 51-й раз человек просто нажмет «принять», не вчитываясь в детали .

Тарик приводит пример из практики крупного финансового института:

Шаукат утверждает, что человеческая природа не приспособлена к монотонной проверке сотен строк кода, написанных машиной. Именно поэтому необходимы жесткие «ворота качества» (quality gates), которые блокируют продвижение кода, пока в нем не будут устранены критические ошибки .

🏛️ Архитектура против «спагетти-кода» 34:40

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

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

🗝️ Наследие COBOL и технический долг 38:54

Многие крупные банки и страховые компании до сих пор работают на COBOL — языке программирования, созданном более 60 лет назад. По словам Шауката, Sonar поддерживает COBOL, так как найти специалистов по нему все сложнее, а код требует постоянных изменений .

Основные тезисы о техдолге:

В завершение Шаукат отметил, что около 50% времени разработчиков уходит на «рутину» (toil) — отладку и документацию. Использование ИИ в связке с инструментами контроля качества должно освободить программистов от этого балласта, сохранив при этом безопасность критической инфраструктуры .

💬 Цитаты

«Нейросети не идеальны... ошибки — это их фича, а не баг, но в коде это имеет реальные последствия для безопасности.»

Тарик Шаукат 16:45

«Разработчик не учился в университете для того, чтобы стать корректором за ИИ.»

Тарик Шаукат 17:50
👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Детерминированная система
Система, которая при одинаковых входных данных всегда выдает один и тот же предсказуемый результат.
Технический долг
Накопленные проблемы в программном коде, которые затрудняют его поддержку и развитие в будущем.
Pull Request
Запрос на объединение изменений из одной ветки кода в основную, ключевой этап код-ревью.
📊 Цифры
🗓 Хронология
  1. 2008 Запуск проекта SonarCube как open-source решения.
  2. Август 2024 Запуск корпоративного SAS-предложения (Enterprise SAS) от Sonar.
⚖️ Другая сторона
Искусственный интеллект Tariq Shaukat Sonar SonarQube AI Code Assurance технический долг