Что такое Vibe Coding, обучение программированию с помощью искусственного интеллекта с нуля

Vibe Coding: код исчезает, новая волна интуитивно-ориентированной разработки программного обеспечения?

Экспоненциальный рост генеративного искусственного интеллекта продолжает изменять отрасли, и разработка программного обеспечения не является исключением. Примерно в начале 2025 года новая волна мышления, исходящая из Кремниевой долины в США, стала привлекать внимание: казалось, что разработчики могут создавать продукты, практически не прибегая к кодированию, благодаря инструментам искусственного интеллекта. Такой подход к разработке, опирающийся на интуицию и отрывающийся от рутины традиционного кодинга, получил довольно современное название - "кодирование". Кодирование вибраций .

Проще говоря, Vibe Coding представляет собой новую философию разработки программного обеспечения. Разработчик описывает требования ИИ с помощью естественного языка, а ИИ отвечает за генерацию и модификацию кода. Основная идея заключается в том, чтобы реагировать на "вибрации" процесса разработки, полностью принимая возможности ИИ и даже в какой-то степени "забывая" о существовании самого кода. Эта методология ставит под сомнение давно укоренившееся в технологической отрасли представление о том, что разработка программного обеспечения должна опираться на инженеров, обладающих превосходными навыками кодирования.

 

Разработчик концепции: наблюдения Андрея Карпаты

Одним из ключевых людей, благодаря которым концепция Vibe Coding стала достоянием общественности, был Андрей Карпати. 38-летний эксперт в области ИИ является не только соучредителем OpenAI, но и возглавлял команду по разработке ИИ и автопилота в Tesla. В настоящее время, будучи основателем Eureka Labs, он также работает над распространением знаний об ИИ через такие платформы, как YouTube.

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

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

Он даже наводит на размышления:"Английский, который становится самым популярным новым языком программирования". (Самый популярный новый язык программирования - английский).

 

Границы между Vibe Coding и LLM Coding

Для ясности, Vibe Coding в настоящее время не является строго определенным академическим термином, а скорее "жужжащим" словом, используемым в технических кругах для обсуждения методологий разработки программного обеспечения с помощью ИИ. Саймон Уиллисон, известный программист, отмечает, что Vibe Coding легко спутать с кодированием с использованием больших языковых моделей (LLM), известным как LLM Coding. Хотя в обоих случаях используется разработка с помощью искусственного интеллекта, они принципиально отличаются по философии и практике:

  1. Основные концептуальные различияVibe Coding: Vibe Coding подчеркивает "плыть по течению" и "забыть о коде", при этом разработчики уделяют больше внимания творческой реализации и общей архитектуре и меньше - базовым техническим деталям. LLM Coding, с другой стороны, по-прежнему ставит код во главу угла, и разработчики обычно должны обладать некоторыми знаниями в области программирования, чтобы понимать и направлять контент, создаваемый искусственным интеллектом.
  2. Ориентация на роль разработчикаВ Vibe Coding разработчик больше похож на командира или сотрудника ИИ, передающего информацию о намерениях в основном с помощью естественного языка. В LLM Coding разработчик по-прежнему принимает активное участие в проверке, модификации и отладке кода, играя более активную роль технического привратника.
  3. Способы взаимодействия с кодомVibe Coding поощряет разработчиков доверять предложениям ИИ и непосредственно принимать их, иногда даже пропуская подробный обзор генерируемых ИИ изменений кода (diffs) и предпочитая "принимать все в себя". Саймон Уиллисон описывает это наглядно: "Если LLM пишет весь ваш код, а вы его просматриваете, тестируете и понимаете, то это не Vibe Coding - вы просто используете LLM в качестве помощника по набору текста". "
  4. Технические пороговые требования: Vibe Coding значительно снижает входной барьер для разработки программного обеспечения, теоретически позволяя непрофессиональным программистам участвовать в процессе создания продукта. LLM Coding также упрощает программирование, но пользователи, обладающие базовыми знаниями в области программирования, смогут более эффективно использовать этот тип инструмента.
  5. Основная направленность инструментаVibe Coding часто ассоциируется со специально разработанными, высокоинтегрированными средами разработки ИИ или инструментами, такими как Курсор Функция композитора AI, Антропология (используется в форме номинального выражения) Клод серии моделей (например, сонет Claude 3.7, упомянутый в оригинальной статье) и инструменты ввода речи, такие как Superwhisper. Кодирование LLM, с другой стороны, в большей степени использует такие инструменты, как GitHub Copilot Наиболее популярными инструментами для завершения и генерации кода являются Code Llama, Code Llama, StarCoder и многие другие.

 

Общий набор инструментов Vibe Coding

По словам таких инсайдеров отрасли, как Ниалл Макналти, руководитель отдела продукции Cambridge University Press, и Питер Янг, руководитель отдела продукции Roblox, разработчики, которые хотят попробовать свои силы в Vibe Coding, могут обратить внимание на следующие инструменты:

1. курсор AI

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

  • Инструмент композитора: Эта функция предназначена для автоматизации большей части процесса кодирования, когда пользователь просто описывает желаемую функциональность с помощью естественного языка.
  • Поддержка нескольких моделей: Интеграция включает в себя семейство GPT от OpenAI, Claude 3.5 Sonnet от Anthropic (или версию 3.7, как упоминалось в оригинальной статье) и DeepSeek и многие другие продвинутые модели искусственного интеллекта.
  • Генерация и оптимизация кода: ИИ может генерировать фрагменты кода и даже полную функциональность на основе подсказок естественного языка, а также помогать в исправлении ошибок и оптимизации кода.
  • Обнаружение ошибок в режиме реального времени: Редактор может мгновенно указать на синтаксические ошибки или потенциальные логические проблемы в коде.

2. Клод 3.7 Сонет

Разработанный компанией Anthropic, Claude 3.7 Sonnet (основанный на оригинальном сообщении и представляющий собой передовые модели семейства Claude) - это мощная крупномасштабная языковая модель с функциями, которые делают ее идеально подходящей для философии Vibe Coding:

  • Инструменты для артефактов: Позволяет пользователям генерировать и обрабатывать различные формы контента, такие как блоки кода, предварительный просмотр сайта, интерактивные компоненты и т. д., вне интерфейса чата.
  • возможность многоязычного программирования: Может генерировать код на многих основных языках программирования, включая Python и JavaScript.
  • модель использования: Доступно ограниченное количество бесплатных версий, а для полной функциональности требуется подписка на сервис Claude Pro.

3. Супершепот

Супер Шепот это механизм преобразования речи в текст, оптимизированный для сценариев кодирования, который добавляет более естественное взаимодействие человека и компьютера в Vibe Coding - разработку с помощью голосовых команд:

  • Интеграция редакторов: Может использоваться с курсором, Клайн возможно Виндсерфинг и многие другие редакторы работают вместе.
  • Повышение эффективности: Учитывая, что человеческая речь обычно в 3-5 раз быстрее, чем набор текста (~150+ WPM против 40-80 WPM), это теоретически может ускорить процесс разработки.
  • эргономикаУменьшение зависимости от клавиатуры может помочь снять физическую усталость, связанную с долгими часами работы над текстом, и обеспечить более интуитивный опыт взаимодействия.

 

Практическая работа с Vibe Coding: когда голос встречается с ИИ-редактором

Стремление Vibe Coding к "сенсорному соответствию" подразумевает, в некотором роде, свободу от физического воздействия. Кодирование голосом - одно из проявлений этой философии. Объединив Super Whisper с Cursor AI, вы сможете создать такую среду разработки, управляемую голосом.

Шаг 1: Установка инструментов

Для начала необходимо скачать и установить Cursor AI. Затем посетите официальный сайт Super Whisper, чтобы установить приложение Superwhisper, которое поддерживается как на платформах macOS, так и Windows.

Шаг 2: Настройте режим кодирования Superwhisper

Открыв приложение Superwhisper, выполните следующие настройки:

  1. Перейдите в меню "Настройка".
  2. Найдите опцию Modes (Режимы) и нажмите Create Mode (Создать режим).

    什么是 Vibe Coding?从零开始学习 AI 辅助编程

  3. Выберите Custom, чтобы создать новый режим.
  4. Назовите новый режим, например "Кодирование Python", и выберите Cursor в опции "Активировать при...". Выберите Cursor в опции "Активировать при использовании", чтобы связать этот режим с Cursor AI. В то же время модель распознавания речи и целевой язык (например, китайский) можно настроить по своему усмотрению.

    什么是 Vibe Coding?从零开始学习 AI 辅助编程

После завершения настройки пользователь может использовать назначенные клавиши быстрого доступа (например, в macOS по умолчанию это Option + 空格键) Разбудите Superwhisper и выберите режим "Python coding", который вы только что создали. Это позволит вам вводить команды или код голосом, когда курсор AI активен.

什么是 Vibe Coding?从零开始学习 AI 辅助编程

Обратите внимание, что если в системе установлены другие приложения, которые могут конфликтовать с голосовым вводом (например. ChatGPT настольных приложений), вам может понадобиться временно отключить их, чтобы Superwhisper мог принимать голосовой ввод и соединяться с Cursor без проблем.

 

Начало работы с Vibe Coding: путь познания для разработчиков Zero-Basic

Даже не имея традиционного образования в области программирования, концепция Vibe Coding предлагает возможность участвовать в создании программного обеспечения. Вот примерное представление о том, как начать:

Шаг 1: Выберите и настройте инструмент

  1. Установка редактора искусственного интеллекта: Загрузите и установите Cursor AI или другие инструменты, поддерживающие концепцию Vibe Coding. Посетите их сайт, чтобы завершить процесс загрузки и установки.
  2. Регистрация и вход: Создайте учетную запись и войдите в нее, обычно с бесплатным пробным периодом.
  3. Персонализация: Следуйте инструкциям, чтобы завершить основные настройки.
  4. Выбор модели искусственного интеллекта: Выбирайте модели ИИ, управляемые бэкендом, исходя из потребностей проекта и личных предпочтений. Например, некоторые пользователи отмечают, что модели семейства Claude превосходят их в генерации кода.

    什么是 Vibe Coding?从零开始学习 AI 辅助编程

  5. Включение экспериментальных функций: Рассмотрите возможность включения экспериментальных функций, таких как "Автозапуск", для более плавной работы с Vibe Coding.

    什么是 Vibe Coding?从零开始学习 AI 辅助编程

Шаг 2: Создайте проект

  1. Откройте Cursor AI и создайте рабочее пространство проекта, создав новый файл или папку в меню.
  2. Определите тип приложения, которое вы хотите создать, например простую веб-страницу, небольшую игру или расширение для Chrome.

Шаг 3: Донести требования до ИИ

  1. Активируйте интерактивный интерфейс AI (обычно это клавиша быстрого доступа в Cursor). Command + K (или аналогичный ярлык).
  2. Используйте естественный язык (либо ввод с клавиатуры, либо голосовой ввод в сочетании с таким инструментом, как Superwhisper), чтобы четко описать функциональность, которую вы хотите достичь. Пример:
    • "Создайте простую HTML-страницу, содержащую область, в которой отображается текущее время, и кнопку обновления".
    • "Создайте базовую структуру расширения для Chrome, которое будет генерировать QR-код для просматриваемой в данный момент веб-страницы".
  3. Можно попробовать применить "Спецификация, установление правил, надзорные рекомендации" фреймворк для общения с искусственным интеллектом:
    • Технические характеристики: Четкие цели, например, "Создать кнопку входа в систему, которая при нажатии перехватывает адрес электронной почты, введенный пользователем".
    • Как установить правила: Установите ограничения, например, "Используйте Python и сохраняйте простой стиль кода".
    • Надзор и руководство: Обеспечение постоянной обратной связи и корректировка направлений в процессе создания ИИ, чтобы результаты соответствовали ожиданиям.

Шаг 4: Создайте, запустите и протестируйте

  1. ИИ генерирует код на основе инструкций и отображает его прямо в редакторе.
  2. Запустите код, используя функции, предоставляемые редактором, и наблюдайте за фактическими результатами (например, Cursor AI обычно предоставляет удобные кнопки для запуска веб-страницы или скрипта).
  3. Если программа работает неправильно, вы можете скопировать и вставить сообщение об ошибке непосредственно в ИИ, который обычно пытается проанализировать его и предоставить решение без дополнительных объяснений.

    什么是 Vibe Coding?从零开始学习 AI 辅助编程

Шаг 5: Итерация и совершенствование

  1. По результатам тестирования продолжайте использовать естественный язык, чтобы предлагать изменения или доработки для ИИ.
    • Например, "Изменить цвет фона страницы на светло-голубой".
    • Или: "Добавьте поле ввода, позволяющее пользователю установить время для напоминаний".
  2. ИИ обновит код на основе новых инструкций.
  3. Повторяйте этот цикл "общение-генерация-тест-обратная связь" до тех пор, пока приложение не будет функционировать в соответствии с вашими пожеланиями.

Шаг 6: Развертывание и использование

  1. ИИ можно спросить, как сохранить, упаковать или развернуть разработанное приложение.
  2. Следуйте пошаговому руководству, предоставленному AI, чтобы завершить процесс выпуска приложения.
  3. При необходимости вы также можете попросить ИИ объяснить, как использовать готовое приложение.

 

Потенциал и проблемы виброкодирования

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

Однако такой, казалось бы, простой подход к развитию сопряжен с очевидными проблемами и потенциальными рисками.

  • Качество кода и удобство обслуживания: Код, основанный исключительно на сгенерированном искусственным интеллектом коде, может отличаться по качеству, эффективности и удобству сопровождения. Кодовая база, в которой отсутствует глубокий анализ и понимание со стороны разработчиков, в долгосрочной перспективе может превратиться в неуправляемый "технический долг".
  • Сложность отладкиКогда возникают глубокие или неочевидные ошибки, разработчики, привыкшие к модели Vibe Coding, могут обнаружить, что им не хватает базовых знаний и навыков отладки, чтобы найти и устранить проблему. Процесс отладки может превратиться в многократное "перетягивание каната" с ИИ, что неэффективно.
  • Эволюция навыков разработчиков: Чрезмерное увлечение Vibe Coding может привести к поверхностному пониманию фундаментальных принципов программирования, алгоритмов и проектирования систем. Хотя "забыть кодить" - это часть философии, стоит задуматься, не ослабляет ли это основные компетенции инженеров.
  • Чрезмерная зависимость и риск блокировкиСильная зависимость от конкретных инструментов или платформ ИИ для разработки может создать риск блокировки поставщика. В то же время чрезмерная уверенность в возможностях ИИ может привести к тому, что разработчики не заметят потенциальных уязвимостей в системе безопасности или логических недостатков.
  • Образование и культурный шок: Возникновение Vibe Coding также бросает вызов традиционному образованию в области компьютерных наук и культуре разработки программного обеспечения. Важным вопросом станет воспитание нового поколения разработчиков, которые смогут эффективно использовать ИИ, но при этом будут обладать прочными фундаментальными знаниями.

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

© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...