Эра программирования без знания языков: ИИ меняет правила игры

Эра программирования без знания языков: ИИ меняет правила игры

В нескольких словах

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


В октябре 2023 года программист Хави Лопес создал игру под названием Angry Pumpkins. Примечательно, что он сделал это, не написав ни строчки кода. В игре было 600 строк кода, сгенерированных ChatGPT по запросам на испанском языке, например, «хочу игру типа Angry Birds».

«В итоге он сгенерировал и Javascript код. Это работало, это потрясающе, и это было только начало», — говорит Лопес. Он использовал ИИ не только для экспериментов с кодом и играми. Со своим соучредителем Эмилио Николасом он создал MagnificAI, инструмент для улучшения изображений, и половина его исходного кода написана искусственным интеллектом. MagnificAI в итоге была продана Freepik за нераскрытую сумму.

«Сегодня нет смысла писать строчку кода», — продолжает Лопес. «Многие люди возмущаются. Мне говорили, что я не могу создать сложную программу без базовых знаний программирования, потому что я застряну или возникнет ошибка [bug], что мне нужно знать архитектуру», — говорит он. В течение нескольких недель у этого программирования без знания кода даже появилось название: «vibe coding» или «программирование по ощущениям», «поддаваясь чувствам». Знаменитый программист Андрей Карпатый, бывший руководитель отдела ИИ в Tesla, соучредитель OpenAI и ютубер, окрестил его так в феврале. «Полностью отдайтесь чувствам и забудьте, что код существует», — написал Карпати в X. И добавил: «Я только говорю, почти не касаюсь клавиатуры. Я прошу глупые вещи, потому что мне лень их искать. Я всегда нажимаю «принять все», и когда я получаю сообщения об ошибках, я копирую и вставляю их без каких-либо комментариев, и обычно это решает проблему. Я делаю приложение, но на самом деле это не программирование, я просто вижу вещи, говорю вещи, выполняю вещи и копирую и вставляю вещи, и это обычно работает».

За последние два года ИИ вызвал кризис идентичности для многих творческих профессий: иллюстраторы, писатели, актеры, дизайнеры все еще пытаются понять этот катаклизм. Теперь, с взрывом этого программирования по ощущениям, настал черед программистов. Откровение Карпати, который является невероятно уважаемой фигурой, вызвало огромные дебаты в сообществе, где голоса, такие как голос Лопеса, смешиваются с голосами опытных программистов, которые считают, что машина никогда не достигнет их уровня: «Ненависть или страх к разработчикам долго не приходили, но, похоже, пришли», — говорит Лопес, у которого были публичные споры с иллюстраторами в области ИИ: «Я не говорю, что вы не должны знать программирование. Очевидно, если вы знаете, вы будете быстрее. Но писать строки кода не имеет смысла, потому что с помощью таких инструментов, как Cursor, вы можете просто указывать на естественном языке, что вам нужно, и он это сделает. Прежде чем сделать это, он показывает вам это, как если бы это сделал программист из вашей команды, и вы принимаете изменения. Новый способ программирования — это разговор с машиной, которая создает код вместе с вами».

Появление программирования, осуществляемого с помощью запросов на наших языках, является тем же рубежом, который пал в других профессиях. Наряду с профессиональными инструментами, такими как Cursor, появились другие, такие как Bolt, Lovable или Replit, которые позволяют программировать на английском или испанском языках очень просто. Любой пользователь, имеющий желание и определенную чувствительность, может создать приложение или веб-сайт для любых повседневных нужд. Это как самоделки, доведенные до кода: теперь можно не только собирать домашние полки, но и создавать программы для организации шкафов, визуализации еды или структурирования семейного досуга.

Разница с профессионалами пока сохранится, но с помощью программного обеспечения можно делать много разных вещей: «Я инженер-программист, и у меня есть команда программистов, но даже в этом случае ИИ очень помогает мне ускорить личные проекты», — говорит Викториано Искьердо, инженер и соучредитель Graphext. «Раньше мне было лень начинать, потому что это подразумевало много часов чтения документации. Сегодня программирование — это подключение труб компонентов программного обеспечения, которые кто-то написал раньше, а не столько написание собственного кода, как если бы это была головоломка. Теперь с помощью ИИ я могу разрабатывать полезные вещи за несколько дней, такие как Calmdigest.com, который я сделал за выходные и который уже используют более 500 человек», и он служит для удобной отправки статей на Kindle.

Но будут и смелые непрофессиональные пользователи, которые привнесут эти изменения в свою работу. «Моя главная характеристика для участия в этих вопросах — быть смелым», — говорит Каролина Деджорджио, супервайзер цифрового внимания в аргентинской телефонной компании, которая использует ИИ, чтобы улучшить свою работу, что иногда сталкивается с программистами. «Можно добиться успеха с менее сакрализованным подходом к программированию. Даже в тех областях, в которых я работаю, все еще есть что-то из того, что вы сделали без ритуалов, это несерьезно», и иногда старшие программисты лишали ее привилегий, чтобы она не изменяла рабочие инструменты из-за опасений, что она создаст проблемы. «Всегда не хватает чего-то еще, чтобы учиться, и это имеет свою цену и даже иногда ощущение, что у тебя нет пола или возраста, подходящего для того, чтобы быть полезным или ценным в этих областях», — объясняет Деджорджио.

Процесс принятия ИИ для программистов аналогичен процессу в других секторах: сначала было удивление тем, что ИИ способен писать код, затем наступило напряженное спокойствие, потому что его код все еще был базовым. Но с течением месяцев появились все лучшие и лучшие результаты. И теперь мы должны признать, что то, что он делает, идеально подходит для многих проектов. «Я думаю, что это ошибка, что у компании нет Cursor или Copilot [от Microsoft]. Ощущение такое, что ты идешь в 100 раз быстрее, это невероятно», — говорит Лопес. «Каким бы хорошим программистом вы ни были, это сделает это быстрее, и вы все равно это делаете. Вы можете указать ему структурировать или рефакторить его по-другому, вы можете написать части кода самостоятельно. Мне смешно, когда какой-то программист сопротивляется и говорит: «качество кода, который он пишет, недостаточно хорошее». Хорошо, но для этого есть вы, на случай, если вам что-то не нравится, и вы это подправите и все. Некоторые разработчики путают цель со средством».

Сегодня программное обеспечение может выделять код, стоящий за спутником, или программы, поддерживающие критически важные инфраструктуры. Но есть миллионы строк кода в более банальных, хотя и полезных целях. Особенно, когда дело доходит до представления возможностей и шлифовки идей: «Это то, что приходит в ключевой момент в разработке программного обеспечения», — говорит Даниэль Сейхо, инженер и основатель образовательной платформы Hawkings. «У нас было десятилетие, когда индустрия была организована до абсурда. В конце концов, у вас много людей, занимающихся дизайном, идеями или powerpoint, и мало людей, выполняющих окончательную работу. Я мог определить продукт и передать его команде для разработки. Но когда он у них есть, это не совсем то, что я просил, и то, что я просил, не совсем то, что нужно было делать. Однако, если я собираюсь прототипировать его, и ИИ дает мне идеи по пути, это не только позволяет мне лучше понять его, но и дополнить его вещами, о которых я не думал», — объясняет он.

Вторжение ИИ часто рассматривается только как замена нашей работы, но вполне возможно, что оно в конечном итоге ускорит процессы и добавит больше творчества во все области. Как и в случае с другими профессиями, больше всего выиграют те, кто лучше адаптируется, но ИИ значительно снижает порог доступа: «Инструменты ИИ, связанные с кодом, обычно ориентированы на программистов», — говорит Гонсало Поццо, инженер и аргентинский стример. «Может ли кто-то без знаний сделать функциональное приложение? Да, конечно. Но отсюда и до запуска его в качестве продукта, итерации, поддержки, это гораздо сложнее. Конечно, будет кто-то, но их меньше», — добавляет он.

Наверняка будет какая-то граница, но доступ будет меньше, особенно для определенного типа пользователей: «Я не думаю, что кто-то без глубоких знаний о том, как работают системы, может запрограммировать что-то полезное сегодня. Но барьер для входа для их приобретения значительно снижается. Это как если бы все тексты юридического факультета были написаны так, чтобы вы их понимали, а не затемняли», — говорит Сейхо.

Read in other languages

Про автора

Специалист по технологиям, науке и кибербезопасности. Анализирует тренды, разбирает новые технологии и их влияние.