"Значит, вайбкодинг. За последний год с хвостиком мой голос по поводу вайбкодинга принимал совершенно разные значения на шкале от ""Боже, это просто омерзительно"" до ""Боже, это просто восхитительно"". А в какой-то момент я на эту тему просто замолчал. Просто потому что естественным образом использование LLM-based ассистентов и прочего в б__о__льшей части моей деятельности стало практически __неотъемлемым__. Сейчас пишу об этом, потому что вчера меня спросили – ""__Слушай, а какое у тебя соотношение написанного кода к сгенерированному?__"" И я впал в ступор, натурально. Потому что: - Кода генерируется много, процентов 80% как минимум - Кода генерируется мало (в смысле бойлерплейт мусора, об этом дальше) - 90% сгенерированного кода вычитывается настолько внимательно, насколько это возможно - Все что нужно исправить – исправляется либо вручную (если мало), либо в точечных последующих промптах При этом я знаю людей которые генерируют 100% прод кода __с телефона__ и живут припеваючи. * Интересно то, насколько сильно отличается сгенерированный код у разных людей в смысле качества, стиля, и вообще функционально; Не знаю обращали ли вы на это внимание. Точнее как, у не очень опытных в программной инженерии человеков как раз таки получается примерно одинаковый результат, его достаточно просто распознать как ""LLM-blob"": - Решения – странные, неуместные; - Избыточные комментарии там где они не нужны, или полное отсутствие комментариев в откровенно переусложненном коде; - Использование паттернов, которые нигде в проекте больше не живут без какого либо архитектурного оправдания; - и так далее. А кидать такие вот шмоты мертвого кода друг другу на code-review это не менее чем производственное преступление. * Мне нравится шутливо называть LLM поломанным __хорадрическим кубом__. Если вы играли в Diablo 2 то знаете о чем я – такая волшебная коробочка через которую одни предметы можно превращать в другие. Умножать предметы перестало быть возможным после исправления багов в игре 🤪 Так вот LLM это такой поломанный куб, в том смысле, что он `драматически умножает поданные на вход когнитивные усилия и качество этих усилий. ` Кроме общей инженероной подкованности, хороший вайбкод еще рождаются благодаря инфраструктурным улучшениям. Для локальной разработки, например, хорошо набросать всякие MCP, которые будут давать больше контекста ассистенту. И как бы там курсор не пыжился в кросс-сессионную память, более продвинутые решения вроде openmemory работают просто лучше. Навык вовремя сделать шаг назад и сбросить контекст придет только c практикой. В качестве доп. чтения вот еще хорошая статейка на английском. Короче говоря – 2 часа изучать код, собирать контекст чтобы написать детально проработанный промт, а потом за 40 минут сделать задачу, на которую без ллм вообще ушло бы 2 дня – `НОРМ`. Ставьте огоньки если тема интересна, буду писать еще примеры на пальцах примеры о том как сам вайб-проектирую и вайб-работаю :) --- __“It bothers me that I can’t press a button and check on the rest of the world, or at least the small parts of it that I’m interested in. I’m not the only one. You haven’t been able to walk around and see it, dear, but the irritability threshold around here is lower than it used to be. We’re not in our natural habitat anymore. We’ve become denizens of the net. Homo datum.”__ ― Pat Cadigan, Synners"