- PVSM.RU - https://www.pvsm.ru -

Vibe Coding и английский как язык программирования

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

И это была шутка. И это было смешно.

Так вот, господа, боюсь вам сообщить: это время либо уже пришло, либо вот-вот придёт.

Я провожу достаточно много времени с ChatGPT, но мне всегда казалось, что он, по сути, заменяет Stack Overflow - даёт небольшие осмысленные примеры, что-то подсказывает, иногда направляет на правильный путь. Я никогда не рассчитывал, что он сможет взять тщательно написанное техническое задание создать достаточно сложное готовое приложение целиком.

Тем временем люди вдруг начали всерьёз говорить об использовании естественного языка, и в первую очередь английского, как полноценного языка программирования. Вот ссылка на статью [1], чтобы было понятно, кто об этом говорит и что именно обсуждается.

Один из пропонентов этого — Андрей Карпатый, соучредитель OpenAI, который сейчас руководит образовательной компанией Eureka Labs. Он утверждает, что использование английского языка как языка программирования открыло возможность для нового подхода к разработке программного обеспечения, который он называет "vibe coding".

Вот перевод его сообщения в Twitter-e [2], в котором он объясняет, что это такое

Есть новый вид программирования, который я называю "vibe coding" - когда ты полностью отдаёшься вайбу, принимаешь экспоненциальный рост технологий и забываешь, что код вообще существует. Это стало возможным, потому что LLM (например, Cursor Composer [3] с Sonnet) достигли нового уровня.

Я вообще просто разговариваю с Composer через SuperWhisper, так что клавиатуру почти не трогаю. Я прошу его сделать самые глупые вещи типа "уменьши отступ на боковой панели вдвое", потому что мне лень самому это искать. Я всегда говорю "Принять все изменения", и больше даже не смотрю на диффы.

Когда я получаю сообщение об ошибке, я просто копирую его в Cursor Composer без комментариев - обычно это помогает.

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

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

Проникнувшись глубиной подхода, народ, разумеется, начал требовать конкретных примеров, но Андрей отвечал уклончиво, и тогда они начали писать примеры сами.

Вот, скажем, игра Марио [4], которая целиком была написана промптами на английском (Я сразу перейду к первому промпту и покажу несколько последующих, чтобы был понятен процесс взаимодействия.)

"write code in python using the fast API framework to play the mario game. 
The game should have an UI. I should be able to play the game using my keyboard"
"make code changes to include sprites, enemies, coins or power-ups"
"introduce gravity so that mario falls freely when moved around with arrow keys" 

Как вы понимаете, то, что я написал выше, - это и есть программный код на английском языке. Этот код, по сути, транспилируется в Python, и в результате получается готовая игра.

Разумеется, мы немножко жульничаем, и это далеко не общий случай, и оно получилось настолько лаконично, потому что LLM имеет представление о том, что такое "Mario game", и ему не нужно всё объяснять с нуля.

Но, думаю, что вы понимаете общую тенденцию. Есть мнение, что к 2028 году английский язык станет самым широко используемым языком программирования. И вполне возможно, что так и случится. Как вы считаете?

Автор: sledov

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/anglijskij-yazy-k/411043

Ссылки в тексте:

[1] ссылка на статью: https://thenewstack.io/can-english-dethrone-python-as-top-programming-language/

[2] сообщения в Twitter-e: https://x.com/karpathy/status/1886192184808149383

[3] Cursor Composer: https://www.cursor.com/

[4] игра Марио: https://youtu.be/8LOZKgaghwQ?si=Iiwx9tbJYQpJ-XiR&t=250

[5] Источник: https://habr.com/ru/articles/883380/?utm_campaign=883380&utm_source=habrahabr&utm_medium=rss