Оглавление
Доэр Дризл Пабло буквально тонула в дорожных чеках. После перевода компании из Филиппин в Швецию она стала посещать клиентов как минимум в двух странах ежемесячно, а бумажная волокита оказалась настолько утомительной, что начала стоить ей реальных денег. «Мой муж постоянно напоминал, что я не подаю документы на возмещение», — вспоминает Пабло. В итоге она решила справиться с проблемой с помощью ИИ, не подозревая, что опробует новый подход к созданию программного обеспечения.
Программирование через диалог: новая реальность
Пабло не была программистом и радовалась, что ей не пришлось изучать языки программирования. Она просто описала свою ситуацию на естественном языке функции Plan Designer в Microsoft Power Apps. Уже через два часа она использовала собственное приложение для управления расходами и начала удивлять своего менеджера своевременной подачей документов.
Термин «vibe coding», введенный известным компьютерным ученым Андреем Карпатым, привлек внимание в этом году как пример новой тенденции. Этот подход использования ИИ для преобразования разговора в создание программ меняет то, как разрабатывается программное обеспечение — открывая двери для новичков и освобождая разработчиков для более быстрого движения и экспериментов.
Повышение продуктивности разработчиков
Vibe coding отлично справляется с прототипированием и переносом концепций из головы на экран, помогая решить то, что некоторые программисты называют «проблемой чистого листа». ИИ-инструменты также бесценны, когда разработчики хотят экспериментировать или внедрять улучшения, которые в противном случае потребовали бы утомительных построчных изменений.
«Барьер для реализации идеи на бумаге, компьютере или получения первого черновика снизился до нуля», — говорит Дэвид Фаулер, ведущий инженер Microsoft, работающий над облачной разработкой. «Любой может это сделать».
Программирование с ИИ-инструментами может иметь «эффект умножения» для инженеров-программистов, взяв на себя исследовательскую и подготовительную работу над проектом, не позволяя разработчикам увязнуть в деталях и помогая продуктивности взлететь до небес.
Ирония в том, что «vibe coding» — это возвращение к истокам программирования, когда мы общались с компьютером на почти человеческом языке. Только теперь вместо ограниченного BASIC у нас безграничный ИИ, который понимает не только синтаксис, но и контекст. Правда, с одной оговоркой — чем сложнее задача, тем больше напоминает общение с очень умным, но слегка рассеянным стажером.
Быстрое прототипирование и его ограничения
Сотрудничество с ИИ меняет фокус для разработчиков, позволяя им сосредоточиться на общей картине, пока инструмент работает над кодом и архитектурой, необходимыми для достижения поставленных целей.
«Это разработка, ориентированная на результат», — объясняет Фаулер. «В традиционном кодировании обычно всё сводится к «как». В vibe coding всё сводится к «что»».
При традиционной разработке программного обеспечения каждая правка может занимать много времени, и программисты могут колебаться экспериментировать из-за страха потратить ресурсы впустую. Помощь ИИ с основами оказывает «глубокое влияние», помогая сократить эти усилия, чтобы разработчики могли пробовать разные идеи и быстрее вносить улучшения.
Скорость против качества: вызовы новой парадигмы
В то же время разработчики опасаются новой тенденции по нескольким причинам, отмечает Фаулер.
Инженерия программного обеспечения — это не «просто выплевывание кода», а процесс, включающий сбор требований, рассмотрение цели, размышления о том, как программа может развиваться со временем, и другие «человекоцентричные» деятельности. И поскольку «программное обеспечение всегда ломается», существует «большая обеспокоенность, что инженерам-программистам придется разбираться с беспорядком, создаваемым vibe-кодерами».
«Vibe coding интересен для быстрых прототипов или экспериментов, — говорит Сара Бёрд, руководитель направления ответственного ИИ в Microsoft, — но когда дело доходит до создания промышленного программного обеспечения, мы считаем, что код, сгенерированный ИИ, по-прежнему требует строгой, спецификационно-ориентированной разработки».
ИИ-инструменты Microsoft и агенты программирования имеют «защиту, встроенную на каждом уровне», сочетая бдительность разработчика и непрерывное тестирование, чтобы выявлять проблемы до того, как они достигнут пользователей.
Это необходимо, потому что сама скорость и простота, которые делают vibe coding таким привлекательным, также могут привести к сокращениям — таким как пропуск важных проверок безопасности или закрепление ранних хаков, которые позже становится трудно исправить. По мере масштабирования проектов эти сокращения могут создавать реальные проблемы — от сломанных функций до уязвимостей, которые могут навредить бизнесу или его клиентам.
Гвидо ван Россум, создатель Python, популярного языка программирования, используемого миллионами разработчиков, говорит, что часто прибегает к vibe coding в GitHub Copilot и VS Code в своей роли ведущего инженера Microsoft. Но он рассматривает инструменты как помощников, а не замену.
«С помощью агента программирования я чувствую себя более продуктивным, но это больше похоже на наличие электрической пилы вместо ручной, чем на робота, который может построить мне стул или шкаф», — заключает он.
По материалам Microsoft.
Оставить комментарий