<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Блог Михаила Озорнина: заметки с тегом дофамин</title>
<link>https://mikeozornin.ru/blog/tags/dofamin/</link>
<description>Главная · Блог · Работы ·</description>
<author>Михаил Озорнин</author>
<language>ru</language>
<generator>E2 (v3798; Aegea)</generator>

<itunes:owner>
<itunes:name>Михаил Озорнин</itunes:name>
<itunes:email></itunes:email>
</itunes:owner>
<itunes:subtitle>Главная · Блог · Работы ·</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Вайб-кодинг, дофамин и слот-машины</title>
<guid isPermaLink="false">209</guid>
<link>https://mikeozornin.ru/blog/all/vibe-coding-as-a-slot-machine/</link>
<pubDate>Sat, 06 Dec 2025 01:41:56 +0300</pubDate>
<author>Михаил Озорнин</author>
<comments>https://mikeozornin.ru/blog/all/vibe-coding-as-a-slot-machine/</comments>
<description>
&lt;p class="lead"&gt;Осознал недавно, чем вайб-кодинг в его классическом виде похож на лудоманию и при чем тут дофамин&lt;/p&gt;
&lt;h2&gt;Что за вайб-кодинг такой&lt;/h2&gt;
&lt;p&gt;Давайте сначала начнем с определений. Не каждая разработка с ллмкой — вайб-кодинг, но каждый вайб-кодинг — разработка с помощью ллмки.&lt;/p&gt;
&lt;p&gt;Вайб-кодингом я буду называть программирование с помощью ллмки, в котором есть вот такие характеристики:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Мало изначального планирования. Буквально короткое описание, вкинутое в ллмку и потом разберемся походу.&lt;/li&gt;
&lt;li&gt;Попытка сразу попасть в нужную конечную точку. Желательно за одну итерацию.&lt;/li&gt;
&lt;li&gt;Значительная часть кода написана ллмкой. Человек в целом не читает весь код, не проверяет его, только смотрит на результат. Архитектура придумана тоже ллмкой и в целом какая вышла, такая вышла.&lt;/li&gt;
&lt;li&gt;Быстрые итерации, горячая перезагрузка. Сообщение об ошибках в целом не читаются, копипаст в чат, обновление.&lt;/li&gt;
&lt;li&gt;Небольшой горизонт планирования. Ощущение щас фичу допилим, разберемся. Похоже на стрельбу трассирующими — и стреляем и одновременно целимся.&lt;/li&gt;
&lt;li&gt;Вайб-дебагинг — вместо попыток понять, разобраться, понять причину — промт «почини» × 5 раз. Да, и это иногда срабатывает.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Я не говорю, что все это неправильно или плохо. Это просто то, что я бы назвал вайб-кодингом.&lt;/p&gt;
&lt;p&gt;Чтобы показать, что не каждая разработка с ллмкой — вайб-кодинг, давайте я попробую описать противоположный полюс. Я бы назвал это LLM assisted development.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Много изначального планирования. К началу первого промта есть достаточно подробный PRD, есть какие-то макеты, схемы взаимодействия, есть выбор технологий, примерная архитектура и схемы данных. Хоть как-то продуманы краевые и хитрые сценарии. Возможно, на отдельные технологические части сделаны прототипы.&lt;/li&gt;
&lt;li&gt;Реализация и приемка по частям: планомерная реализация модуля за модулем, планирование именно этого модуля, разработка, приемка, тесты, фиксация. После этого переход к следующему.&lt;/li&gt;
&lt;li&gt;Написание части кода самостоятельно или значительное ревью написанного.&lt;/li&gt;
&lt;li&gt;Общее ощущение, что ведет человек, ллмка — лишь инструмент. Очень мощный, местами самостоятельный, но инструмент.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Вайб-кодингом в силу понятных причин чаще заняты люди, кто сами не умеет программировать, а те, кто умеет, чаще склонны ко второму.&lt;/p&gt;
&lt;p class="loud"&gt;— Где уже тема поста, Лебовски! Я уже полторы страницы прочитал&lt;/p&gt;
&lt;h2&gt;Где здесь слот-машина&lt;/h2&gt;
&lt;p&gt;Вот мы подошли к главному. Я осознал, что вайб-кодинг обладает всеми теми же вещами, которые подсаживают слот-машины на дофамин. Я не биолог, проверяйте эту часть.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Негарантированная награда&lt;/b&gt;&lt;br /&gt;
Дофамин же вырабатывается не от самой награды, а от предвкушения награды. Если награда будет всегда, организму такое не нравится. Ему нравится, когда &lt;i&gt;иногда да&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;Вайб-кодинг в чистом виде такой. Иногда промт сработает, иногда нет. Иногда ллмка уйдет в полную галюцинацию, но потом тем же самым промтом та же самая модель с очищенным и немного расширенным контекстом все за собой же починит.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Сверхкороткий цикл&lt;/b&gt;&lt;br /&gt;
Цикл действие-реакция (промт-результат) очень короткий, поэтому за несколько минут можно пройти несколько таких циклов. Это очень высокая плотность событий, редко что может создать такой мощный стимул. Именно поэтому слот-машина больше затягивает, чем покер. Покерная партия длится существенно дольше.&lt;/p&gt;
&lt;p&gt;Вайб-дебагинг 5 промтов в минуту и копипаст ошибок из консоли — предел такого короткого цикла.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Эффект почти-попадания (near-miss effect)&lt;/b&gt;&lt;br /&gt;
Бывает, что проект совсем не заводится, сыпется на комплияции, а интерфейс взрывается. Но бывает и то, что называется near-miss effect — ну вот-вот, уже почти. Вроде работает, но как-то хитро глючит. В целом ок, но криво сверстано.&lt;/p&gt;
&lt;p&gt;Прямо как в слот машине — не все три слота разные, а «ну вот же, две вишенки совпали, а третья не докрутилась всего на один шажок». Конечно, после почти-попадания желание продолжить значительно выше.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Всплеск нейромедиаторов при победе&lt;/b&gt;&lt;br /&gt;
Когда все в итоге завелось, приложение ЗА-РА-БО-ТА-ЛО вырабатывается огромное количество нейромедиаторов (как и при джекпоте). От адреналина аж пульс может подскочить.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Некоторые эмоциональные качели&lt;/b&gt;&lt;br /&gt;
Иногда ты сделаешь большую штуку за десять минут, а потом два часа будешь пытаться исправить досадный баг. В итоге качаешься между «Я молодец, ллм — лучшее, что есть в программировании» и «Я тупой, ллм ничего не может, зря я все это затеял».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Сюрпризы и бонус&lt;/b&gt;&lt;br /&gt;
Иногда ллмка доставляет и просто бонусы — хоба и отломала те части, которые раньше работали. Это тоже сильные эмоции и некоторые эмоциональные качели: ах ты сволочь ←→ о, я починил.&lt;/p&gt;
&lt;p&gt;Могу сказать по себе, что программирование в стиле вайб-кодинга невероятно затягивает. Особенно когда вот-вот уже почти. На это вот-вот уже почти можно сжечь огромное количество времени. Ой, может другая модель сможет. Ой, а давай переформулирую.&lt;/p&gt;
&lt;p&gt;Если кодить близко к полюсу максимального вайб-кодинга, то прямо физически начинает ощущаться вот это состояние ажитации — вероятно, именно его чувствуют люди перед слот-машиной.&lt;/p&gt;
&lt;p&gt;В целом, не этом все.&lt;/p&gt;
&lt;h2&gt;Как же быть&lt;/h2&gt;
&lt;p&gt;&lt;aside class="aside-margin-right"&gt;&lt;span class="related-excerpt"&gt;Я не специалист в такой химии. Я мог бы с умным видом копипастнуть разбор Грока про норадреналин и анандамид. Но не буду. Спросите у ллмок&lt;/span&gt;&lt;/aside&gt;&lt;/p&gt;
&lt;p&gt;Мне кажется, что выход — программировать так близко к классическому програмированию, как можете. В программировании — состояние потока, фокус, длинные сессии, более медленный и стабильный темп. Уверен, что там совсем другая биохимия и другие нейромедиаторы.&lt;/p&gt;
&lt;p&gt;&lt;aside class="aside-margin-right"&gt;&lt;span class="related-excerpt"&gt;«Станьте ежиками» — это из анекдота&lt;/span&gt;&lt;/aside&gt;&lt;/p&gt;
&lt;p&gt;Ну а как быть, если кто-то не умеет программировать. Что за «станьте ~ежиками~ программистами» такое. Я понимаю, что легко сказать «читайте написанный ллмкой код», но все умеют. Но так или иначе, у меня есть гипотеза, что если двигаться максимально близко к варианту LLM assisted development, то будет лучше.&lt;/p&gt;
&lt;p&gt;Что я бы попробовал:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Начинайте с большого плана — на пару страниц даже для небольшого проекта.&lt;br /&gt;
Соберите в голове визуальный дизайн, подумайте про краевые случаи, заранее продумайте деплой. Соберите примеры кода, компонентов, референсы, ссылки на документацию. Опишите те вещи, которые обычно не описываете — адаптив или хоткеи. Вам все равно придется принимать все эти решения. &lt;i&gt;Вы можете принять их спокойно в начале или потом — в ажитации и перед слот-машиной.&lt;/i&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Разрабатывайте по частям. Держите в голове общий план, общую картинку, но делайте по этапам, не позволяя ллмке унести вас в сторону лишь потому, что она предложила «Нужло ли адаптивровать для очков виртуальной реальности?». Не так важны сами этапы, сколько нужно ощущение, что вы контролируете ллмку, а не она вас.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Возможно через шаблоны ответов лучше убрать вот эти «Отличный вопрос!» и другие восхваления искусственного интеллекта.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Способ с большим предварительным планом был единственным доступным еще пару лет назад. Ллмки не умели так хорошо следовать длинному плану, не умели так успешно вызывать тулы для обогащения своего контекста и не умели выполнять действия. Мы были &lt;i&gt;вынуждены&lt;/i&gt; проектировать сами и могли лишь просить ллмки написать отдельные модули или даже вовсе отдельные функции. А сейчас болт, реплит, лавабл и фигмамейк продвигают идею «Готовое приложение за одно предложение».&lt;/p&gt;
&lt;p class="loud"&gt;Вместо вывода. Ллмки позволяют нам делать вещи, которые мы бы не смогли без них. Но не разтеребите ими себе мозг, как это делает тикток. Уверен, ничего хорошего в этом не будет.&lt;/p&gt;
</description>
</item>


</channel>
</rss>