web analytics

Vibe Coding: хобби сегодня, будущее разработки завтра?

E-Learning

Моим последним хобби стало vibe coding, и, должен признать, оно довольно затягивает — оно открывает для меня совершенно новый уровень технического творчества!

Я всегда старался быть в курсе того, что происходит в сфере технологий, но когда вы работаете полный рабочий день с 9 до 5, не используя все эти новые инструменты, трудно угнаться за всем этим. За эти годы я бросил себе вызов, чтобы изучить вещи, которые я не так часто использую на работе: присоединился к Advent of Code, чтобы улучшить свои навыки Python, прошел слишком много курсов LinkedIn и Udemy, написал собственные статьи Medium, в основном о SQL и данных, и пытался создавать приложения, просто чтобы оставаться в форме. Но большинство этих проектов так и не дошли до финишной черты. В какой-то момент техническая сторона стала бы слишком сложной, и никакой поиск в Google меня не спас бы. Теперь с помощью vibe coding я могу перейти от идеи к работающему прототипу всего за несколько часов. Это дико.

Итак, что такое Vibe Coding?

За последние несколько недель этот термин появился почти в каждом технологическом подкасте и статье. Но если вы еще не слышали о нем, позвольте мне быстро объяснить, что это такое. Сам термин принадлежит известному техническому специалисту (бывшему соучредителю OpenAI и бывшему директору по ИИ в Tesla Андрею Карпати), но его суть на самом деле очень проста: вы даете инструкции на естественном языке, а агент на основе LLM переводит их в код, создавая для вас приложение. Таким образом, вам не нужно писать код самостоятельно, просто скажите ИИ что-то вроде «Создай для меня приложение для расписания уборки», «Добавь вид календаря в пастельных тонах», «Сделай кнопки более круглыми», «Добавь переключатель темного режима», и он сделает свое волшебство за вас.

Прелесть vibe coding в том, что вы можете создать свое собственное персонализированное приложение с минимальными усилиями.

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

  • Bolt.new : инструмент без кода/с малым кодом, который ощущается как совместная работа с коллегой по команде ИИ. Он создан специально для кодирования Vibe и позволяет вам создавать полноценные приложения, общаясь с LLM. Он разработан для скорости, поэтому если у вас есть идея, вы можете воплотить ее в жизнь за считанные минуты с поддержкой ИИ на протяжении всего процесса.
  • Cursor.sh : среда кодирования AI, ориентированная на разработчиков, по сути, версия VS Code на базе AI. Она больше подходит для традиционных разработчиков, которые хотят сохранить полный контроль, но при этом двигаться быстрее с помощью предложений и дополнений AI.
  • Lovable.dev : инструмент, в большей степени ориентированный на дизайн, идеально подходящий для создания визуально привлекательных пользовательских интерфейсов под руководством LLM.
  • Supabase : Это не инструмент LLM, но он часто используется вместе с ними. Supabase предоставляет вам бэкэнд (базу данных, аутентификацию, хранилище) с простой настройкой. Я использовал его практически в каждом приложении, которое я создал, даже в самых простых ( «Сказки на ночь »), чтобы динамически сохранять и извлекать данные вместо жесткого кодирования.

Речь не идет о замене разработчиков

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

Что подводит меня к тому, что произошло на днях: я был в своем обычном магазине, выбирал закуски, и был удивлен, увидев новые кассовые аппараты. Я собирался просканировать свой первый товар, когда аппарат уже обнаружил все в моей корзине, только когда я стоял рядом с ним, и попросил меня заплатить. На первый взгляд, казалось, что он все сделал правильно, и то же самое произошло с моей подругой рядом со мной, ее товары тоже были автоматически просканированы. Мы оба были впечатлены, но также и сбиты с толку. Затем я присмотрелся и понял, что он не все просканировал правильно. То же самое и с ней. У нас обоих было около 4 или 5 товаров, и 1 или 2 из них были неправильными, так что примерно 30% просчетов. Этот момент был хорошим напоминанием: даже когда техника кажется суперумной, ей все равно нужны человеческие глаза. В конце концов, нам пришлось позвать продавца, чтобы отменить автоматическое сканирование и перейти на ручной режим, потому что он просто не работал должным образом.

Я хочу сказать, что вы пока не можете полностью положиться на него — то же самое касается LLM в кодировании. Вам нужно уметь читать его и быть уверенным, что результат соответствует вашим ожиданиям. Но означает ли это, что вам следует избегать его и придерживаться кодирования старой школы? Определенно нет. Вам следует взять лучшее из обоих миров.

Где проходит граница между разработчиками и Vibe-кодерами?

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

Означает ли это, что традиционные разработчики устарели? Абсолютно нет. Кодирование Vibe отлично подходит для перехода от 0 к 1 , но когда приходит время масштабирования — от 1 до n — когда приложение должно расти, вам все равно нужны сильные разработчики, которые могут отлаживать, оптимизировать и защищать код. Если LLM дает вам код, который работает после двух подсказок, отлично! Но можете ли вы сказать, хороший ли это код? Можете ли вы сказать, безопасен ли он? Или он сломается в различных крайних случаях? Знание того, как выявлять потенциальные проблемы, предотвращать ошибки и избегать проблем с производительностью, — вот что отличает кодировщика Vibe от опытного разработчика. Кроме того, умение понимать цели продукта и планировать техническую архитектуру на высоком уровне имеет важное значение для создания чего-то долговечного.

Тем не менее, вот несколько ключевых ограничений, с которыми vibecoding не всегда могут справиться:

  • Качество кода : То, что код «работает», не означает, что он хорош. Он может работать в одном сценарии, но ломаться в других. Вам нужно достаточно хорошо понимать, чтобы просмотреть то, что было сгенерировано.
  • Масштабируемость : LLM отлично справляются с созданием прототипов, но не с созданием крупномасштабных, легко обслуживаемых систем.
  • Зависимость от подсказок : Вы должны знать, как общаться с ИИ. Качество вывода полностью зависит от подсказок.
  • Отладка : если что-то пойдет не так, ИИ может не знать, почему, и вам, возможно, придется устранять неполадки вручную.

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

Искусство подсказки и будущее развития

Настоящая проблема и веселье заключаются в освоении того, как общаться с LLM. В кодировании вибраций подсказки являются ключевым фактором. Знание того, как эффективно донести свое видение до ИИ, является важным навыком.

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

Лично я изучал vibe coding с помощью таких инструментов, как Bolt, Lovable и Cursor. Я бы с удовольствием рассказал больше о мини-проектах, над которыми я работал, и о том, как они получились. Должен отметить, что в каждом проекте, который я делал до сих пор, я не полностью полагался на LLM. В каждом случае я вручную вмешивался в те части, которые, как я думал, можно было бы обработать по-другому. Например, одним из моих проектов был генератор сказок на ночь. Первоначально LLM запрограммировал его так, чтобы жестко кодировать истории непосредственно в файле JSON, что не идеально для гибкости или будущих корректировок. Поэтому я подключил свой проект к Supabase, создал базу данных и настроил таблицы для хранения сказок на ночь, что дало мне возможность добавлять или обновлять их вручную. Окончательная версия моего приложения «Сказки на ночь», закодированного вибраций, доступна здесь: https://dreamy-sheep.lovable.app

Просто хобби… на данный момент

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

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

Источник:
https://pub.towardsai.net/vibe-coding-a-hobby-today-the-future-of-development-tomorrow-a554f93c27a5

Оцените статью
( Пока оценок нет )

Добавить комментарий